2025医药投资展望:基于财务表现和研发创新的强生、葛兰素史克和默沙东比较分析

TL;DR

交互版

I. 摘要

强生凭借其多元化的业务组合和稳健的财务表现,持续超越市场预期,并对未来增长保持乐观指引。其研发管线广阔且深入,通过战略性收购和优化,不断巩固其在肿瘤和免疫等核心治疗领域的领导地位。强生的估值反映了其作为行业领导者的稳定性和可靠性。

葛兰素史克在剥离消费健康业务后,正成功实现向特药和疫苗高增长领域的战略转型。其核心运营利润和每股收益(EPS)增长强劲,研发管线充满活力,预计在未来几年内将推出多款重磅产品。尽管过去存在一些研发挫折,但近期成果表明其执行能力正在提升,且当前估值可能存在被市场低估的潜力。

默沙东目前高度依赖其肿瘤明星产品Keytruda的销售额,这为其带来了显著的盈利能力。然而,Keytruda即将面临专利到期的挑战,这使得公司对新一代肿瘤疗法(如抗体偶联药物,ADC)和新产品(如RSV疫苗ENFLONSIA)的成功推出变得至关重要。近期Keytruda增长放缓以及关键ADC项目(patritumab deruxtecan)的挫折,凸显了其未来增长的风险和不确定性。默沙东的估值折让反映了市场对这些风险的担忧。

综合来看,对于寻求平衡增长与价值的投资者而言,葛兰素史克凭借其强劲的财务势头、雄心勃勃且具有催化剂的研发管线以及相对吸引力的估值,展现出最具吸引力的投资机会。强生适合偏好稳定性和股息回报的保守型投资者,而默沙东则更适合高风险承受能力、看好其未来管线成功交付的投资者。

II. 引言

全球制药行业是一个资本密集型、研发驱动的领域,其特点是研发投入巨大、产品开发周期漫长、监管审批严格以及专利到期带来的持续竞争压力。在这个动态且复杂的环境中,制药公司的成功不仅取决于其当前的市场份额和盈利能力,更取决于其能否持续推出创新药物,以满足未被满足的医疗需求并抵御仿制药的冲击。因此,在评估制药公司的投资潜力时,深入分析其财务实力和研发管线至关重要。财务稳健性为研发投入和市场扩张提供资金保障,而强大的研发管线则是公司未来增长的生命线,确保新产品源源不断地补充,以应对专利悬崖并维持市场竞争力。

本报告旨在对强生、葛兰素史克和默沙东这三家全球制药巨头进行全面的比较分析。报告将详细评估它们最新的财务报告(包括2025年第一季度和2024财年数据),审视其研发创新状况,包括近期药物批准、关键研发项目、以及任何值得关注的挫折或风险,并结合市场估值指标,为投资者提供客观、全面的信息,以辅助其做出明智的战略投资决策。

III. 公司概况与近期财务表现

A. 强生 (JNJ)

强生作为一家多元化的全球医疗保健公司,业务涵盖制药、医疗技术和消费者健康(已剥离大部分)。其财务表现通常被视为行业稳定的风向标。

2025年第一季度财务亮点

强生在2025年第一季度表现强劲,报告的每股收益(EPS)为2.77美元,超出市场普遍预期的2.59美元达0.18美元 。同期,公司季度营收达到218.9亿美元,也超过了市场普遍预期的216.5亿美元 。强生持续超越分析师的EPS和营收预期 ,这表明公司在财务规划和执行方面表现出色,或者分析师对其业绩的预测持续偏保守。这种持续超出预期的模式有助于增强投资者对管理层交付可预测成果能力的信心。

2024财年财务亮点

在2024财年,强生报告的总销售额增长4.3%至888亿美元,其中运营销售额增长5.9% 。这体现了其多元化产品组合的稳健增长。公司净利润增长5.6%至140.7亿美元,摊薄后EPS增长11.3%至5.79美元 。然而,2024财年调整后EPS仅增长0.6%至9.98美元 。这种摊薄EPS和调整后EPS之间的差异主要归因于与收购相关的无形资产研发(IPR&D)费用,例如V-Wave和Yellow Jersey的收购 。这表明强生正在通过战略性收购积极投资于其未来管线,虽然这暂时影响了报告的收益,但对于公司的长期增长和创新至关重要。这种战略选择旨在增强未来的收入流,使得调整后的数据更能反映其潜在的运营健康状况。此外,2024财年强生的预计自由现金流约为198亿美元 ,经营现金流为243亿美元 ,显示出强大的现金生成能力。

2025财年财务指引

强生对2025财年持乐观态度,预计运营销售额将增长2.5%至3.5%(中点为3.0%) 。调整后运营EPS预计在10.75美元至10.95美元之间,中点增长8.7% 。这种积极的指引,特别是调整后运营EPS的强劲增长,表明管理层对其未来发展轨迹充满信心。这种信心很可能得益于其创新药物部门的强劲表现 以及加速发展的管线所带来的预期贡献 。该指引也暗示公司预计能够消化其战略投资的成本,并继续为股东创造价值。

关键估值指标

强生的往绩市盈率(P/E)为16.94 ,远期市盈率在14.39 至14.43 之间。其往绩企业价值/EBITDA(EV/EBITDA)在12.56 至11.15 之间。这些估值倍数对于一家大型制药公司而言处于合理区间,表明其股价稳定而非被高估。强生已连续62年增加股息 ,股息收益率为3.44% ,这凸显了公司对股东回报的承诺及其财务韧性,使其成为寻求稳定收入的投资者的吸引选择。这表明市场将强生视为一个成熟、可靠的投资标的。

B. 葛兰素史克 (GSK)

葛兰素史克在剥离其消费健康业务后,正专注于特药和疫苗领域,旨在实现更高增长和利润。

2025年第一季度财务亮点

葛兰素史克在2025年第一季度报告EPS为1.13美元,超出市场普遍预期的1.08美元达0.05美元 。季度营收同比增长2.1%至100.6亿美元,远超分析师预期的75.2亿美元 。以英镑计,第一季度总销售额为75亿英镑,按固定汇率(CER)计算增长4% 。特药销售额大幅增长17%至29亿英镑,其中呼吸、免疫和炎症业务增长28%,肿瘤业务增长53%,HIV业务增长7% 。疫苗销售额下降6%至21亿英镑,主要受Arexvy销售额下降57%的影响 。普通药物销售额保持稳定在25亿英镑 。核心运营利润和核心EPS均增长5%,反映了特药业务的强劲表现和对研发管线进展的纪律性投资 。特药业务,特别是肿瘤和呼吸/免疫领域的显著增长,是葛兰素史克在业务拆分后专注于高价值、创新制药产品的直接体现。该部门的强劲表现有效地抵消了疫苗等其他领域(Arexvy销售额的大幅下降可能需要进一步调查,但可能是市场特定或竞争压力所致)的下滑,并推动了核心利润的增长。这表明其战略转型执行成功。

2024财年财务亮点

2024财年,葛兰素史克集团总销售额达到314亿英镑,按固定汇率计算增长7% 。特药销售额增长19%(CER)至118亿英镑,而疫苗销售额下降4%(CER)至91亿英镑 。总运营利润为40亿英镑,按固定汇率计算下降33%,主要原因是Zantac和解费产生了18亿英镑的费用 。核心运营利润增长11%(CER)至91亿英镑 。经营现金流为79亿英镑,自由现金流为29亿英镑 。报告的总运营利润大幅下降主要是由于Zantac和解费这一笔一次性费用 。通过关注“核心运营利润”这一剔除了一次性项目的指标,可以看到公司呈现出更为健康的增长态势。这表明葛兰素史克的潜在运营表现强劲,而Zantac问题虽然数额巨大,但正在被解决,并非持续的运营弱点。投资者应关注核心财务指标以评估其未来表现。

2025财年财务指引

葛兰素史克预计2025财年总销售额将增长3%至5% 。核心运营利润和核心EPS预计将增长6%至8% 。公司持续的指引,加上启动20亿英镑的股票回购计划和宣布派发股息 ,表明管理层对持续增长的信心以及对股东回报的承诺。这暗示公司相信其战略举措和管线进展将继续推动财务业绩。

关键估值指标

葛兰素史克的往绩市盈率为19.93 至20.0583 ,远期市盈率为9.34 。其EV/EBITDA为8.5倍 。预计下一年EPS将增长12.32% 。葛兰素史克的估值倍数,特别是远期市盈率,低于强生,但其预计EPS增长率(12.32%)高于强生(4.63%)。这可能意味着市场仍在因过去的挑战(如Zantac和研发挫折)而对葛兰素史克进行折价,从而创造了一个潜在的价值投资机会,前提是公司能够成功执行其管线和战略转型。较高的增长预测表明其投资回报可能更具活力,尽管潜在风险也更高。

C. 默沙东 (MRK)

默沙东是一家全球领先的生物制药公司,以其在肿瘤、疫苗和动物保健领域的创新产品而闻名。

2025年第一季度财务亮点

默沙东2025年第一季度全球总销售额为155亿美元,较2024年第一季度下降2%,但若剔除外汇影响,销售额增长1% 。GAAP EPS为2.01美元(增长7%),Non-GAAP EPS为2.22美元(增长7%) 。EPS的增长部分得益于2024年第一季度Harpoon收购相关费用较低 。Keytruda销售额增长4%至72亿美元(剔除外汇影响增长6%),主要得益于早期适应症在全球范围内的普及 。WINREVAIR销售额为2.8亿美元,反映了自2024年第二季度在美国上市以来的持续增长 。GARDASIL/GARDASIL 9销售额大幅下降41%至13亿美元(剔除外汇影响下降40%),主要受中国市场需求下降的影响 。动物保健销售额增长5%至16亿美元(剔除外汇影响增长10%) 。尽管Keytruda仍在增长,但其2025年第一季度的增长率(4%)低于2024财年(18%),表明该产品正在走向成熟。Gardasil销售额的大幅下降,即使是区域性影响,也凸显了收入集中风险。WINREVAIR的成功上市和动物保健业务的稳健增长对多元化至关重要,但第一季度总销售额的整体下降(即使剔除外汇影响后略有增长)表明,公司迫切需要新的收入驱动力来弥补成熟重磅产品和市场特定逆风的影响。

2024财年财务亮点

2024财年,默沙东全球销售额达到642亿美元,较2023财年增长7%(剔除外汇影响增长10%) 。Keytruda销售额增长18%至295亿美元(剔除外汇影响增长22%) 。GARDASIL/GARDASIL 9销售额下降3%至86亿美元 。GAAP EPS为6.74美元,Non-GAAP EPS为7.65美元 。这些数据包含了与业务发展交易相关的净费用 。Keytruda近300亿美元的年销售额 彰显了其巨大的成功以及对默沙东当前财务健康状况的关键性。然而,这种高度依赖性也突显了该药物在专利到期后将面临的重大挑战。Gardasil全年销售额的略微下降,以及2025年第一季度的大幅下滑,进一步强调了公司需要新的增长引擎,以超越其肿瘤业务的强大贡献。

2025财年财务展望

默沙东预计2025财年全球销售额将在641亿美元至656亿美元之间 。Non-GAAP EPS预计在8.82美元至8.97美元之间,这一展望已根据与许可协议相关的一次性费用和额外关税成本进行了调整 。2025年的销售指引显示,与2024年相比,增长相对持平,这可能预示着一个整合期或预期的逆风。Non-GAAP EPS因许可协议(恒瑞医药)的一次性费用和关税 而进行调整,表明外部因素和战略管线投资正在直接影响短期盈利能力。这预示着公司将专注于未来的管线实力,即使牺牲眼前的收益也在所不惜。

关键估值指标

默沙东的往绩市盈率为11.66 至11.67 ,LTM EV/EBITDA为7.5倍 。预计下一年EPS在8.88美元至9.03美元之间,这意味着约15%至17%的增长 。默沙东的市盈率和EV/EBITDA倍数明显低于强生和葛兰素史克。尽管其EPS增长预测强劲,但这种折价估值强烈暗示市场正在消化Keytruda即将失去独占权的重大风险。投资者可能要求更高的收益率来弥补未来的不确定性,这使得默沙东成为一只“需要证明自己”的股票,其成功的多元化和新管线产品的推出对其估值重估至关重要。

IV. 研发 (R&D) 格局

A. 强生 (JNJ) 研发

研发支出

强生在研发方面的投入巨大且具有战略性。2025年第一季度的研发费用为32.25亿美元,同比下降8.95% 。然而,2024财年的研发费用为172.32亿美元,较2023年增长14.23% 。值得注意的是,这一数字包含了17.9亿美元的无形资产研发(IPR&D)费用,这主要与2024年第三季度Yellow Jersey(NM26双特异性抗体)收购的12.5亿美元费用以及2024年第四季度V-Wave收购的5.4亿美元费用有关 。自2024年1月以来,强生已在研发和无机增长机会上投资了约500亿美元 。2024财年研发投入的增加,特别是用于收购IPR&D的巨额资金,表明强生正积极通过外部创新来增强其管线实力。2025年第一季度研发费用的下降可能反映了前一年大型收购费用时序的影响,而非研发投入的整体减少。自2024年1月以来500亿美元的投资 强调了公司对创新的长期、实质性承诺,这表明其采取积极主动的方式来维持市场领先地位。

管线概览

强生的研发管线广泛而深入。2024年,公司在主要市场获得了27项批准,有18项注册研究取得了积极结果,启动了17项III期研究,并提交了49项申请 。其关键治疗领域包括肿瘤、免疫、神经科学和心肺疾病 。2025年,强生预计将在美国/欧盟获得多项潜在批准,包括免疫领域的SIMPONI(儿童溃疡性结肠炎)、STELARA(儿童克罗恩病)和TREMFYA(溃疡性结肠炎、克罗恩病、儿童银屑病、儿童青少年银屑病关节炎) 。在神经科学领域,包括nipocalimab(全身性重症肌无力)、SPRAVATO(难治性抑郁症单药治疗)和CAPLYTA(重度抑郁症辅助治疗) 。在肿瘤领域,包括DARZALEX(闷烧型多发性骨髓瘤、一线不适合移植的多发性骨髓瘤)、RYBREVANT(皮下注射)和IMBRUVICA(一线套细胞淋巴瘤) 。此外,计划在美国/欧盟提交的申请包括nipocalimab(温性自身免疫性溶血性贫血)、TREMFYA(溃疡性结肠炎皮下诱导、银屑病关节炎结构损伤、儿童银屑病)、STELARA(儿童溃疡性结肠炎、儿童克罗恩病)、icotrokinra(银屑病)和TAR-200(非肌层浸润性膀胱癌) 。如此数量的潜在批准、计划提交和正在进行的临床试验 涵盖了广泛的治疗领域,这表明强生致力于多元化管线。这一战略旨在减少对单一重磅产品的依赖,并确保新产品源源不断地推出,这对于在竞争激烈的行业中实现长期收入稳定和增长至关重要。通过为现有成功药物(如TREMFYA、STELARA、DARZALEX)寻求新的适应症,也体现了公司最大化关键资产生命周期的策略。

近期批准与临床试验亮点

在肿瘤领域,强生近期获得了多项重要批准,包括AKEEGA(BRCA突变转移性去势抵抗性前列腺癌,2023年)、RYBREVANT(EGFR非小细胞肺癌的各种适应症,2023-2025年)、CARVYKTI(复发/难治性多发性骨髓瘤,2022-2024年)、TALVEY(复发/难治性多发性骨髓瘤,2023年)和TECVAYLI(复发/难治性多发性骨髓瘤,2022-2024年) 。2025年,在ASCO和EHA大会上展示了多发性骨髓瘤(CARVYKTI、DARZALEX、TALVEY、TECVAYLI)、B细胞恶性肿瘤(IMBRUVICA)、前列腺癌(AKEEGA、JNJ-78278343)、肺癌(RYBREVANT/LAZCLUZE)、结直肠癌(amivantamab)、髓系恶性肿瘤(bleximenib)和温性自身免疫性溶血性贫血等领域的重大临床试验数据 。在免疫领域,公司提交了STELARA(ustekinumab)用于儿科克罗恩病治疗的补充生物制品许可申请(sBLA),该申请得到了III期UNITI-Jr研究数据的支持 。这些近期批准和令人信服的临床试验数据,特别是在肿瘤和免疫领域,突显了强生在这些高增长治疗领域的强大执行力。对CAR-T(CARVYKTI)和双特异性抗体(TALVEY、TECVAYLI)等下一代疗法的关注,使强生在癌症治疗创新领域处于领先地位。STELARA和DARZALEX等已上市药物适应症的扩展也表明了公司最大化资产价值的策略。

研发风险与挫折

强生也曾经历一些研发挫折。公司已停止了多项早期和中期神经学和精神病学项目,包括用于阿尔茨海默症躁动症的seltorexant、用于帕金森病的JNJ-0376和用于双相情感障碍的JNJ-55308942 。此外,公司已退出传染病市场,于2023年7月停止了七个项目(主要为乙肝),并于2023年1月终止了HIV疫苗试验(Mosaico),于2023年3月退出了RSV疫苗研发竞争(EVERGREEN试验) 。一般的研发风险包括临床成功的不确定性、监管批准、商业成功、生产困难和产品安全问题 。停止项目和战略性退出整个治疗领域(如传染病) 并非一定是弱点,而是纪律严明的投资组合管理的体现。强生可能正在将资源从竞争激烈或成功概率较低的领域重新分配到那些具有更高潜在回报的领域,例如其强大的肿瘤和免疫特许经营权。这表明公司在研发方面采取务实态度,尽早止损,专注于更有可能成功的疗法。

B. 葛兰素史克 (GSK) 研发

研发支出

葛兰素史克在研发方面的投入持续增长,以支持其战略重点。2025年第一季度的研发费用为18.41亿美元,同比增长1.26% 。2024财年的研发投入为64亿英镑 ,约合81.8亿美元 。葛兰素史克的研发投入虽然在绝对值上低于强生,但其持续增长的趋势表明公司对创新的坚定承诺。2025年第一季度研发支出的增加 与公司“纪律性增加研发投资以推动管线进展”的既定目标 相符。这表明研发支出正被战略性地引导,以支持其特药和疫苗管线的增长,这些是公司未来的核心竞争力。

管线概览

葛兰素史克的研发管线专注于利用免疫系统科学和先进技术开发创新药物和疫苗 。其管线包含71个资产,其中19个处于III期/注册阶段 。核心治疗领域包括呼吸、免疫与炎症、肿瘤、HIV和传染病 。葛兰素史克预计2025年将有5项主要FDA产品批准,其中Penmenvy(脑膜炎疫苗)和Blujepa(用于泌尿道感染的抗生素)已在2025年第一季度获得批准,Nucala(COPD)、Blenrep(多发性骨髓瘤)和depemokimab(严重哮喘和鼻息肉)预计将获得进一步批准 。此外,预计在2025年至2031年期间将推出14个关键机会,每个产品的潜在峰值销售额(PYS)预计将超过20亿英镑 。明确指出2025年将有5项主要FDA批准,以及到2031年将有14项高潜力产品上市 ,为葛兰素史克提供了强劲的近期和长期催化剂。这表明其管线正在走向成熟,并有望带来可观的新收入流,这对于公司战略调整后的持续增长至关重要。对特定治疗领域的关注也表明了其研发的靶向性。

近期批准与临床试验亮点

在呼吸领域,Nucala(mepolizumab)已获得美国FDA批准,用于治疗伴有嗜酸性粒细胞表型且控制不佳的成人慢性阻塞性肺疾病(COPD),该批准基于积极的III期MATINEE和METREX试验数据 。在肿瘤领域,Blenrep(belantamab mafodotin)组合已在日本获批,用于治疗复发或难治性多发性骨髓瘤,该批准基于DREAMM-7和DREAMM-8 III期试验的卓越疗效(无进展生存期PFS和总生存期OS) 。Blenrep组合目前也在包括美国(PDUFA日期为2025年7月23日)和欧盟在内的主要全球市场进行审查 。在传染病领域,Penmenvy(脑膜炎疫苗)和Blujepa(抗生素)在2025年第一季度获得了批准 。Nucala获得FDA批准用于更广泛的COPD人群,以及Blenrep在日本获得重要批准(预计全球将有更多批准),都表明葛兰素史克有能力将其研发投资转化为商业产品。Blenrep的试验结果,特别是DREAMM-7中的总生存期获益 ,极具吸引力,可能成为主要的增长动力,使葛兰素史克在竞争激烈的肿瘤领域占据更强地位。

研发风险与挫折

葛兰素史克也曾面临一些研发挫折。公司在2022年11月撤回了其多发性骨髓瘤疗法Blenrep的美国上市许可 ,尽管目前正在寻求重新批准其组合疗法 。这凸显了监管批准和上市后监测的挑战。PARP抑制剂Zejula(niraparib)的标签范围被缩小 。葛兰素史克已退出细胞疗法领域 。用于类风湿关节炎的药物otilimab的后期试验被放弃 。用于肾性贫血的药物daprodustat在咨询委员会投票中获得了褒贬不一的结果,预计这将限制其商业潜力,仅限于透析患者 。一般的研发风险包括未能适当收集/报告人体安全信息、产品质量问题以及不遵守法律和监管标准 。过去的研发挫折,包括撤回批准和试验失败 ,表明葛兰素史克的研发执行存在较高的固有风险。尽管近期批准显示出进展,但这些历史问题可能会影响投资者的看法和监管审查。Blenrep的情况尤其说明问题,因为该药物的批准曾被撤回,公司现在正试图通过新数据重新获得批准。这表明其研发轨迹具有波动性,重大的成功与显著的失败并存,从而影响投资者的信心。

C. 默沙东 (MRK) 研发

研发支出

默沙东的研发支出呈现出波动性。2025年第一季度的研发费用为36.21亿美元,同比下降9.29% 。2024财年的研发费用为179.38亿美元,较2023年大幅下降41.25% 。值得注意的是,2023年的研发费用曾大幅增长125.35% 。默沙东研发支出的剧烈波动(2023年大幅增长,2024年急剧下降,2025年第一季度持续下降) 表明其研发投资策略具有动态性,且可能不如强生那样可预测。这可能归因于大型收购相关研发费用(如2024年第一季度的Harpoon,2025年第一季度的Eyebiotech) 的时序性,或对其管线进行战略性重新评估,从而影响整体支出。研发支出的这种波动性可能会引发对长期研发稳定性的疑问。

管线概览

默沙东的研发管线重点关注肿瘤、免疫、肺动脉高压、HIV和传染病 。公司在抗体偶联药物(ADC)领域进行了大量投资,包括patritumab deruxtecan(MK-1022)、ifinatamab deruxtecan(MK-2400)、sacituzumab tirumotecan(MK-2870)和raludotatug deruxtecan(MK-5909),这些药物处于不同开发阶段,主要用于肿瘤适应症,通常与Keytruda联合使用或作为其组合疗法的一部分 。在HIV领域,MK-8527(HIV-1 PrEP)、islatravir+MK-8507(HIV-1感染)和doravirine + islatravir(HIV-1感染)正在开发中,尽管其中一些药物因高剂量问题而受到FDA的部分临床暂停 。默沙东对ADC的重金投入 表明其正积极努力构建下一代肿瘤重磅产品,可能作为Keytruda的继任者或补充。对HIV的关注,特别是长效方案,也代表着一个重要的增长领域。然而,islatravir高剂量被FDA部分临床暂停 凸显了开发新型疗法的固有风险,即使是在前景广阔的领域。

近期批准与临床试验亮点

在传染病领域,ENFLONSIA™(clesrovimab-cfor)于2025年6月获得美国FDA批准,用于预防婴儿呼吸道合胞病毒(RSV)下呼吸道疾病,该批准基于积极的IIb/III期CLEVER和III期SMART试验数据 。这代表了一项重要的新产品上市。在肿瘤领域,Keytruda通过在早期适应症(三阴性乳腺癌、肾细胞癌、非小细胞肺癌)中的全球普及以及转移性适应症的持续强劲需求,继续推动销售增长 。在肺动脉高压领域,WINREVAIR自2024年第二季度上市以来持续增长 。ENFLONSIA获得FDA批准 是一个重大利好,表明默沙东有能力在肿瘤领域之外推出创新产品。Keytruda的持续强劲表现和WINREVAIR的成功上市 对当前收入至关重要。然而,其ADC管线近期遭遇的挫折(patritumab deruxtecan)给其未来的肿瘤增长战略蒙上了一层阴影。

研发风险与监管挑战

默沙东近期面临一项重大研发挫折:公司自愿撤回了patritumab deruxtecan(HER3-DXd)在美国用于EGFR突变非小细胞肺癌的生物制品许可申请(BLA)。这一决定是基于确证性III期HERTHENA-Lung02试验的总生存期(OS)结果未达到统计学意义,以及与FDA的讨论 。一般的研发风险包括:研发项目可能出现延迟、超出预算或未能达到目标,导致即使在投入大量资金后仍被终止;监管机构可能不予批准、延迟批准或仅给予有限批准;不良副作用可能在批准后才被发现;商业成功无法保证 。patritumab deruxtecan BLA的撤回 是一个重大挫折,尤其考虑到默沙东对肿瘤管线未来增长的依赖。III期试验中未能达到总生存期终点是一个关键打击,凸显了后期药物开发固有的高风险,特别是对于ADC等高价值资产而言。这一事件可能会增加投资者对默沙东剩余肿瘤管线及其在Keytruda之后实现雄心勃勃增长目标能力的审查。

V. 比较分析与关键观察

A. 财务表现比较

在收入增长方面,强生在2024财年实现了5.9%的稳健运营销售额增长,并在2025年第一季度营收超出预期 。葛兰素史克在2024财年实现了7%的固定汇率总销售额增长,并在2025年第一季度特药业务驱动下营收显著超出预期 。默沙东在2024财年销售额增长10%(剔除外汇影响),但2025年第一季度总销售额略有下降(剔除外汇影响增长1%),这主要是受Gardasil等产品的影响 。

在盈利能力方面,强生2024财年调整后EPS增长0.6%,受无形资产研发费用影响,但2025年指引显示调整后运营EPS将强劲增长8.7% 。葛兰素史克的核心运营利润和EPS在2024财年和2025年第一季度均表现出强劲增长,成功克服了Zantac和解费对总利润的影响 。默沙东的Non-GAAP EPS在2024财年也有所增长,但2025年第一季度Non-GAAP EPS增长相对较低(7%) 。

在现金流方面,强生2024财年报告了约198亿美元的巨额自由现金流 。葛兰素史克2024财年自由现金流为29亿英镑,2025年第一季度为7亿英镑 。而默沙东的现金流数据在现有资料中未明确提供 。

强生持续交付稳定、可预测的财务业绩,这得益于其多元化的业务组合和战略性投资。葛兰素史克在业务拆分后,在其核心特药领域展现出强劲的增长势头,表明其战略转型取得了成功。默沙东虽然目前仍保持盈利,但面临着Keytruda之外的收入多元化以及Gardasil等产品销售额下降带来的直接挑战。这表明强生提供了稳定性,葛兰素史克展现了增长势头,而默沙东则面临着更高风险但可能更高回报的局面,这取决于其管线产品的成功。

B. 研发实力与未来增长潜力

在研发投资方面,强生在2024财年以172.32亿美元的研发支出领先(自2024年1月以来已投资500亿美元) ,其次是默沙东(2024财年为179.38亿美元,但其2023年的基数更高) ,然后是葛兰素史克(2024财年为64亿英镑,约合81.8亿美元) 。

在管线深度和广度方面,强生拥有最广泛和最深入的管线,在多个治疗领域有大量潜在批准和提交 。葛兰素史克拥有一个聚焦的管线,包含71个资产,其中19个处于III期/注册阶段,预计到2031年将有14个高潜力产品上市 。默沙东则高度专注于肿瘤ADC和HIV领域,在这些领域拥有大量候选产品 。

在近期成功方面,强生在肿瘤(CARVYKTI、TALVEY、TECVAYLI、RYBREVANT)和免疫领域拥有强大的近期批准记录 。葛兰素史克已获得Nucala和2025年第一季度早期产品的批准,Blenrep也显示出强劲的III期数据并正在寻求重新批准 。默沙东的ENFLONSIA批准是其在肿瘤领域之外的一项显著成功 。

在研发风险和挫折方面,强生通过战略性削减表现不佳的项目(尤其是在神经学和传染病领域)来优化其投资组合 。葛兰素史克则有显著的挫折历史,包括Blenrep此前在美国撤回、Zejula标签范围缩小以及otilimab和daprodustat的试验失败 。默沙东近期也遭遇了重大挫折,其patritumab deruxtecan的BLA因OS数据未达标而自愿撤回 。

强生的研发策略似乎是多元化、持续创新,并愿意削减未能达到高标准的项目。这降低了整体研发风险。葛兰素史克在其重点治疗领域展现出强大的雄心,预计将有大量批准,但其过去的研发挫折表明存在较高的执行风险。默沙东则将重点放在其ADC平台,以推动未来的肿瘤增长,但patritumab deruxtecan BLA的撤回突显了重大的临床和监管障碍,使其未来的增长更依赖于少数高影响力资产。这意味着强生拥有最去风险化的研发概况,而葛兰素史克和默沙东则具有更高的潜在上行空间,但也伴随着更高的研发特定风险。

C. 估值比较

在市盈率方面,默沙东的往绩市盈率最低(11.66-11.67) ,其次是强生(16.94-17.475) ,葛兰素史克最高(19.93-20.0583) 。

在远期市盈率方面,默沙东的远期市盈率未明确提供,强生为14.39-14.43 ,葛兰素史克为9.34 。

在EV/EBITDA方面,默沙东的LTM EV/EBITDA为7.5倍 。葛兰素史克为8.5倍 。强生为11.15-12.56 。

在下一年EPS增长预测方面,葛兰素史克预计增长最高(12.32%) ,其次是默沙东(根据2025年Non-GAAP EPS指引与2024财年Non-GAAP EPS相比,约为15-17%的增长) ,强生增长较低(4.63%) 。

默沙东最低的市盈率和EV/EBITDA倍数,尽管其EPS增长预测强劲,表明市场正在大幅折价其未来收益,原因在于Keytruda即将面临专利悬崖以及近期管线挫折。葛兰素史克较低的远期市盈率和高于强生的预计EPS增长,表明存在潜在的价值投资机会,因为市场可能低估了其战略转型和管线催化剂。强生较高的倍数反映了其被市场视为的稳定性、多元化业务和持续的股息支付。这暗示默沙东是“价值陷阱”或高风险高回报的投资,葛兰素史克是“合理价格的增长”机会,而强生是“优质稳定增长型”公司。

D. 战略定位与风险因素

强生:定位为多元化的医疗保健巨头,拥有强大的医疗技术和创新药物部门。其战略重点是高未满足需求领域,并通过内部研发和收购持续创新 ,这为其提供了韧性。主要风险包括潜在诉讼(现有资料未详细说明,但属行业普遍风险)以及在庞大基数上维持增长的挑战。

葛兰素史克:正在经历重大转型,剥离消费健康业务,专注于高增长、高利润的特药和疫苗组合。这种战略清晰度是其优势。风险包括鉴于过去的挫折,其雄心勃勃的研发管线的执行情况 ,以及《通胀削减法案》(IRA)对收入的潜在影响 。

默沙东:高度依赖Keytruda,这在未来几年将带来显著的专利悬崖风险。其战略包括积极投资肿瘤ADC和WINREVAIR等新产品,以实现多元化。主要风险是这些新资产的成功开发和商业化,patritumab deruxtecan的挫折就证明了这一点 ,以及能否抵消Keytruda和其他成熟产品未来收入下降的影响。

强生凭借其多元化和持续的执行力,提供了最稳定和去风险化的投资概况。葛兰素史克则展现出更具活力、以增长为导向的概况,具有明确的战略方向,但研发执行风险较高。默沙东是风险回报最高的选择,拥有强大的现金牛(Keytruda),但其管线必须交付新的重磅产品以应对未来的专利到期,而近期挫折进一步凸显了这一挑战。这意味着投资者需要根据其风险承受能力来选择与公司战略定位相符的投资。

VI. 结论与投资建议

综合分析总结

强生以其财务稳定性、持续的运营表现以及广阔多元的研发管线而著称,尽管进行了战略性优化,但仍不断带来新的批准和提交。其估值反映了其作为可靠、派发股息的行业领导者的地位。

葛兰素史克在向特药领域战略转型中展现出强劲势头,核心利润增长令人瞩目,其雄心勃勃的管线有望带来大量新产品上市。然而,其研发历史中存在一些显著挫折,这带来了一定程度的执行风险。其估值表明,如果公司能持续有效执行,可能存在以合理价格实现增长的潜在机会。

默沙东目前受益于Keytruda的巨大成功,但面临着专利到期带来的最重大长期挑战。其在ADC等新肿瘤平台和ENFLONSIA等新产品上的积极投资至关重要,但近期管线挫折凸显了这一战略的高风险性。其估值折让反映了市场对其能否成功实现多元化的怀疑。

投资建议

基于全面的分析,葛兰素史克 (GSK) 在当前制药行业格局中,为寻求增长与价值平衡的投资者提供了最具吸引力的投资机会。

理由如下:

强劲的财务势头: 葛兰素史克2025年第一季度和2024财年的业绩显示,其高利润特药业务实现了强劲增长,推动了核心运营利润和EPS的提升,尽管受到一次性Zantac和解费的影响 。公司2025年的指引进一步证实了这一积极趋势 。

雄心勃勃且具有催化剂的管线: 葛兰素史克预计2025年将有5项主要FDA批准,到2031年将有14个潜在峰值销售额超过20亿英镑的关键机会 ,这为其提供了明确的近期和长期增长催化剂。Nucala等近期批准以及Blenrep凭借强劲的III期数据重新浮现 ,都验证了其研发生产力。

吸引力的估值: 与强生相比,葛兰素史克较低的远期市盈率和EV/EBITDA倍数,加上其较高的预计EPS增长 ,表明市场可能低估了其战略转型和管线潜力。这为增长型投资者提供了更具吸引力的风险回报概况。

致力于股东回报: 正在进行的20亿英镑股票回购计划和持续的股息支付 表明管理层对公司财务健康的信心以及对提升股东价值的承诺。

尽管葛兰素史克由于过去的挫折 存在一定的研发执行风险,但其目前的战略重点和近期成功表明公司正处于积极的转折点。

强生 (JNJ) 仍然是保守型、长期投资者的稳健选择,适合寻求稳定性和持续收入的投资者,这得益于其多元化业务组合、强劲的现金流和可靠的股息历史。然而,其估值反映了这种稳定性,提供了较小的上行潜力。

默沙东 (MRK) 代表着更高风险、更高回报的投资。尽管其拥有Keytruda这一主导产品和有前景的新产品上市,但重大的专利悬崖和近期管线挫折 带来了相当大的不确定性。其较低的估值正是这些风险的体现,因此仅适合那些风险承受能力高、并看好其未来管线成功交付的投资者。

关键风险与未来展望

对于葛兰素史克而言,其预期新产品上市的成功商业化以及特药业务的持续表现将至关重要。管理潜在的监管障碍和竞争压力仍然是首要任务。

整个制药行业普遍面临着定价压力、医疗保健立法(如IRA)和全球经济波动带来的风险。所有三家公司都受到这些普遍风险的影响,这可能对其财务前景产生影响。

移动光猫HN8546X6-10桥接补全SHELL改界面

前言

最近刚因携号转网被赠送了移动千兆网络,附送了一个型号为HN8546X6-10的华为万兆XG-PON光猫,看了一下性能很不错。马上折腾起来。

由于我有好习惯每次装完网都问装维小哥要一下超级管理员密码,所以省掉了很多破解超级管理员密码的麻烦。本篇也不涉及任何光猫密码破解的工作。

所有的工具均来自各种论坛搜索,如果有需要可以邮件我索要。

0x01 进入后台

宽带装好第一件事自然是桥接,因为上海移动这边的超级管理员密码是设备注册的时候下发的随机生成的密码,甚至过段时间远程升级还会变,所以进入后台第一件事自然是删掉TR-069接口,关掉周期上报。

但是移动定制的界面好像禁止了TR-069接口的删除,F12大法也不管用,点击按钮就会被退出登录,而接口并没有被删掉。

查资料得知可以通过一些办法来切换回华为原生界面,解除所有功能限制。因为我已经注册成功移动网络,所以下面的操作十分谨慎,生怕需要重新设备注册而超管密码被重置无法进入。

0x02 开启telnet

刷机的第一步自然是开启Telnet或者SSH登录,由于我有超级管理员后台,非常简单就完成了,只需在安全-广域网访问配置选项卡中打勾即可开启。

开启后使用telnet连接,用默认用户root,默认密码Hw8@cMcc登录。su切换权限,再输入shell即可。随便使用一个ls指令看一下。结果报错ERROR::Command is not existed。看来这个shell是被阉割过的版本。首先要补全SHELL功能,使指令能够全部使用。

0x03 补全SHELL指令

在一些论坛找到了ONT组播配置工具V3-V5 2.0,据说有五个版本,我使用的是最新的一个版本。

还有一个r20shell.bin文件。虽然我是V5R021C00S050版本,也就是传说中的R21新版。但是据说这个r20的固件也可以使用。

光猫拔掉光纤,打开ONT组播配置工具,选择升级,选择r20shell.bin文件,连接光猫,点击启动。工具便在不停的组播寻找光猫。

如果找不到可以重启光猫,在重启过程中就会寻找到,右侧会出现光猫序列号和Loading,此时光猫所有灯都在同步闪烁,闪烁多次后工具提示Failed。没有关系,此时已经补全成功了。

0x04 修改hw_boardinfo文件改界面

再次telnet登录光猫,发现指令都可以使用了,cd /mnt/jffs2 进入文件夹,在电脑上打开一个tftpd32来接收发送文件。

使用

tftp -p -l hw_boardinfo -r hw_boardinfo 电脑IP地址

发送hw_boardinfo到电脑,使用HW Dollar2.exe打开hw_boardinfo,里面有非常多可以设置的项目,这次我们只需要修改obj.id = "0x0000001a"和obj.id = "0x0000001b"对应的obj.value = 改为 “COMMON”,即可改回华为ONT原本的管理界面。

只改1a虽然可以修改界面,但是因为移动后台的地址和原生的不同,会造成无法登陆后台。需要修改1b为COMMON来清除注册状态。因为移动是用password来认证的,所以在修改之前最好备份一下password。

修改完成后保存,然后使用

tftp -g -l hw_boardinfo -r hw_boardinfo 电脑IP地址

从电脑下载修改后的文件回光猫。然后reboot重启

0x05 重启后配置

重启后登录后台已经是HN8546X6-10的华为原生后台了,可以使用光猫的全部功能和设置,界面也好看了不少。依旧使用之前的超管密码登录,选择WEB业务发放,输入Password(有自动保存的可以不用输入),快乐的删掉TR-069,桥接INTERNET接口。插好光纤,一会儿就注册成功了。

测速,NAT类型检测一气呵成。终于拥有了1000M的NAT1网络。

0x06 题外话

既然拿到了Telnet权限,必然在光猫系统里游览一番,发现有一个hw_ctree.xml里面包含所有的配置信息,可以使用huaweiXML_CFG.exe进行解密修改,当然通过前面的修改原生界面,其实在后台也可以导出配置进行修改,可以新建后台超管账号之类非常方便。

家庭网络架构

前言

家庭网络结构极大影响了在家使用网络的体验,我个人的家庭网络经过这么多年的演变,也逐渐形成了一个较为方便稳定的家用网络结构,该结构可能并不适用于每个人的情况,仅写下来作参考和记录。

演变

0.0(光猫 -> 终端设备)

可能大家使用的最简单的家用网络是由运营商提供的光猫直接负责拨号和接入,甚至可以忍受使用光猫发出的无线信号,我没有经历过这个时代,因为我从一开始就对运营商光猫的性能嗤之以鼻,经常会有网速不稳定,Wifi信号不稳定等问题,所以每次安装宽带第一件事就是让安装小哥把光猫配置成桥接模式,由路由器负责所有功能,把光猫只做一个光电转换器使用。

至于改桥接模式后的IPTV的vlan等配置,可以专门当作一篇文章来写了。

1.0(光猫 -> 路由器交换机AP三合一 -> 终端设备)

和每个人一样,我的家用网络最初也经历了由单个无线路由器负责包括防火墙、PPPoE、交换机、DNS、DHCP、FQ、Wifi等全部功能的时代。随着接入设备的增多、对速度、稳定性和扩展性的要求提升,这个模式逐渐无法满足我的需求。

2.0(光猫 -> 路由器交换机AP三合一 -> 终端设备)

随着有线设备的增多,路由器接口不够用,最简单直观的办法就是增加一台傻瓜交换机来扩展网口数量,而无线覆盖的增加,最简单的办法就是下挂更多Wifi路由器,为了统一分配网段和减少一层路由转发,下挂的Wifi路由器被配置为AP模式,或者关闭DHCP,直接接入LAN口做AP使用。这个阶段还是没有考虑到功能的分开,网段的划分,设备的隔离,无线信号的无缝漫游等问题。网络整体性能还是依赖主路由的性能。

3.0(光猫 -> 路由器交换机二合一 -> 多AP -> 终端设备)

家里增添了NanoPi,摄像机,各种智能家居iot,NAS,UPS,HTPC,PVE虚拟服务器,电视盒子,XBOX游戏机等设备,外部也由于需要连接多种服务器,对网络的要求也变得复杂多样,只好继续完善网络架构以便满足需求。

首先是把路由器和AP功能分开,使用一台纯有线的EdgeRouter X SFP来做主路由,负责PPPoE拨号、防火墙、DHCP和 VPN 等功能,其他无线路由器只做AP中途还刷了AP专用固件,支持无缝漫游、弱信号自动剔除等功能,让全屋有线无线内网都可以跑满千兆,性能和稳定性都有了进一步提升。

然后是把DNS和FQ功能分给了NanoPi来负责,安装Pi-Hole或AdguardHome来做DNS层面的加速、广告过滤和分流。

4.0(光猫 -> 路由器-> 交换机 -> 多AP -> 终端设备)

如果说3.0版本对于家用已经比较完善了,我现在的架构就有点企业级内味了。

首先是有线网口又又又又不够用了,由路由器和傻瓜交换机提供的十个有线网口被完全占满,本着折腾到底的原则,我直接淘了一台H3C S5120 24电口+4光口的企业级交换机,打算按企业级大二层网络来重做整个网络架构。到手发现风扇声音有点吵(毕竟是机房用的),我直接把风扇拆掉了,监测了一段时间温度,平时55度,满载也不会超过65度,还是比较稳定的。

有了S5120这个24+4口大家伙,这下所有东西都可以插在上面了。接下来就是网络配置,我划分了三个vlan来做网络分割,分别给我自己+受信任的服务器(vlan1)、不受信任的iot设备(vlan2)、不受信任的Guest(vlan3)使用,通过端口和mac地址来识别设备应该属于哪个vlan,这样可以在同一个Wifi名下使不同设备属于不同vlan,未知mac默认vlan3,并且把光猫和路由器和IPTV盒子的端口配置为trunk,光猫自带的运营商vlan1101和1103分别给路由器拨号和IPTV端口通过去。这样平时内网流量基本都可以走交换机二层满速转发,路由器的负载就小了很多,可以专心做一些三层的事情。

虽然UBNT的硬路由性能已经足够强,但是秉承着能少一个设备就少一个设备的想法,既然现在不缺网口,不需要用UBNT路由器上的网口做扩展,那么直接使用PVE主机虚拟一台软路由出来岂不美哉,于是我选定Router OS 6作为软路由操作系统,至于ROS6不能支持的一些协议和功能由一台虚拟的Debian来完成。

在ROS6里配置了三个vlan,并且分别为其配置了DHCP服务,为三个不同的/24的IP段,其中vlan1和2基本都是固定分配IP,DNS指向NanoPi,vlan3为动态分配,DNS指向公共DNS,对于vlan之间的互通,通过ROS6里的firewall来控制,其中vlan1可以随意访问vlan2和vlan3,vlan2的部分设备可以访问访问vlan1的iot控制器(Home Assistant),vlan3为独立网段。再配置好ROS6的PPPoE拨号和Masquerade就可以愉快的上网了。

大致数了一下,目前分配的IP有28个,可以通过ROS6对于单个设备进行精细化管控,外网分流,另外像静态路由,IPV6,端口映射,UPnP完全不在话下,甚至OSPF,BGP等协议都可以玩起来了(最近沉迷DN42,详见 https://dn42.tms.im )。

总结

目前家用网络的核心无非是光猫 - 路由器 - 交换机 - AP - 终端设备的组合,适合自己的才是最好的,我目前的网络架构是这些年用下来一点一点演变发展过来的,具有很好的扩展性,虽然未来还有很多可以升级的点(比如万兆、光纤内网、AC+AP等),但目前已经是能完全满足我需求的最佳性价比的架构了。

P.S. 架构图在画了在画了。

MP3文件隐写之Copyright位

最近在帮人做CTF的时候遇到一道有意思的题目,记录一下思维过程。

题目整个只有一个MP3文件的附件。下载

0x01

首先观察16进制数据,没有发现异常,只有一个PNG图片作为封面图,提取PNG图片观察图片的16进制数据,也没有发现任何异常。

0x02

观察到Comment tag中有一个 163 key(Don’t modify)

经查询资料得知是网易云MP3里的元数据。AES-128-ECB加密,用密码 #14ljk_!\]&0U<'( 解码,得到一个Json字符串,观察并没有发现任何有用信息。

0x03

使用Audacity加载,观察波形图和频谱图,没有发现异常。

0x04

猜测使用Mp3Stego加密,但是没有密码,无法解密。使用Mp3Stego测试了几个常用密码以后放弃。

0x05

正在一筹莫展没有思路的时候,发现MP3格式的帧数据中,有一个uint32 private_bit,可以作为私有数据的标记位。帧头具体格式为:

typedef FrameHeader

{

unsigned int sync:11;                        //同步信息

unsigned int version:2;                      //版本

unsigned int layer: 2;                           //层

unsigned int error protection:1;           // CRC校验

unsigned int bitrate_index:4;              //位率

unsigned int sampling_frequency:2;         //采样频率

unsigned int padding:1;                    //帧长调节

unsigned int private:1;                       //保留字

unsigned int mode:2;                         //声道模式

unsigned int mode extension:2;        //扩充模式

unsigned int copyright:1;                           // 版权

unsigned int original:1;                      //原版标志

unsigned int emphasis:2;                  //强调模式

}

曾经也有题目是使用private_bit来隐藏Flag。但是翻看了几帧发现private_bit位都是0,似乎并没有存储数据。但是在翻看的时候发现,uint32 copyright这一位似乎内藏玄机,这一位在相邻几帧的数据有0有1,查询得知这是版权位,通常不会出现不同帧有0有1的情况。

于是决定将copyright位的数据提取出来看看。

0x06

在提取的过程中发现一个问题。该MP3文件每一帧的长度不固定,有的是414H,有的是415H,一开始完全没有找到规律。网上相关题目和private位隐写数据的示例,也都是固定帧长度的。只好另外想办法。

翻看资料得知帧长度的变化和padding填充位有关。

帧长度是压缩时每一帧的长度,包括帧头的4个字节。它将填充的空位也计算在内。Layer 1的一个空位长4字节,Layer 2和Layer 3的空位是1字节。当读取MPEG文件时必须计算该值以便找到相邻的帧。注意:因为有填充和比特率变换,帧长度可能变化

观察本文件得知如果padding位为1,帧长度就是415H,padding位为0,帧长度就是414H。

查询得知第一帧的起始位置为984484,又因为帧头为4个字符,padding_bit位于第三个字符的倒数第二位,而copyright位于第四个字符的倒数第四位。所以从984486开始查找,向后读取一个字节提取padding_bit,再向后读取一个字节提取copyright。

故写出一下python代码进行copyright位的提取。

# coding:utf-8
import re
import binascii

n = 984486  # 起始位置
result = ''
file = open('2.mp3', 'rb')
# 提取
while n < 12658083:  # 结束位置
    file.seek(n, 0)
    head = file.read(1)
    padding = '{:08b}'.format(ord(head))[-2]

    file.seek(n+1, 0)
    file_read_result = file.read(1)
    result += '{:08b}'.format(ord(file_read_result))[-4]

    n += 1045 if padding == "1" else 1044
# 拼接
flag = ''
textArr = re.findall('.{'+str(8)+'}', result)
for i in textArr:
    flag = flag + chr(int(i, 2)).strip('\n')
print(flag)

执行代码得到 flag{b3d7bed5-e8da-4d9c-848c-e5d332d63bcd}

成功找到Flag,收工。

给Pico-Pi-I.MX7D安装Debian系统

手上有个闲置的PicoPI-I.MX7D,使用的是NXP的MCIMX7D7DVM10SC芯片,看了一下是ARM v7架构的,拥有512M内存和1G主频。虽然很鸡肋,但是好歹是个板子,不用又觉得浪费,于是想装一个Debian Linux上去跑跑小脚本用。

查阅了一圈资料发现,想用这货跑起debian需要自己编译内核外加使用u-boot来启动。
说干就干

1. BootLoader的写入

安装一些交叉编译的依赖库和软件

ARM Cross Compiler: GCC

1
2
3
wget -c https://releases.linaro.org/components/toolchain/binaries/6.5-2018.12/arm-linux-gnueabihf/gcc-linaro-6.5.0-2018.12-x86_64_arm-linux-gnueabihf.tar.xz
tar xf gcc-linaro-6.5.0-2018.12-x86_64_arm-linux-gnueabihf.tar.xz
export CC=`pwd`/gcc-linaro-6.5.0-2018.12-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-
1
${CC}gcc --version

接下来编译U-boot

1
2
3
4
5
git clone -b v2019.07-rc4 https://github.com/u-boot/u-boot --depth=1
cd u-boot/
make ARCH=arm CROSS_COMPILE=${CC} distclean
make ARCH=arm CROSS_COMPILE=${CC} pico-pi-imx7d_defconfig
make ARCH=arm CROSS_COMPILE=${CC}

这样我们就拥有了一个适用于imx7d的U-boot。

想把BootLoader下载到板子上,需要用官方的 imx_usb_loader

连接板子的Console串口和type-c数据接口,从Github下载 imx_usb_loader。设置跳线到Download模式

1
2
3
git clone https://github.com/boundarydevices/imx_usb_loader
cd imx_usb_loader/
make
1
2
lsusb | grep Freescale
Bus 00x Device 00y: ID 15a2:0076 Freescale Semiconductor, Inc

使用imx_usb_loader加载SPL和uboot进系统

1
2
sudo ~/imx_usb_loader/imx_usb u-boot/SPL
sudo ~/imx_usb_loader/imx_usb u-boot/u-boot-dtb.img

这样系统就能从U-boot启动了。

1
2
3
4
5
6
7
Loading Environment from MMC... OK
In: serial
Out: serial
Err: serial
Net: FEC0
Hit any key to stop autoboot: 0
=>

在U-boot里设置一些参数以便启动dfu-agent

1
2
3
4
5
=> env default -f -a
=> saveenv

=> mmc partconf 0 0 7 0
=> dfu 0 mmc 0

这样就可以使用dfu-util写入u-boot到板子的eMMC存储了

1
2
sudo dfu-util -D u-boot/SPL -a spl
sudo dfu-util -R -D u-boot/u-boot-dtb.img -a u-boot

接下来就可以把板子从Download模式恢复为eMMC启动模式

重启以后板子会自动启动到U-boot,这时候在串口可以捕捉到u-boot,并且启用挂载外置存储模式,以便往eMMC里写入系统。

1
2
3
4
5
6
7
Loading Environment from MMC... OK
In: serial
Out: serial
Err: serial
Net: FEC0
Hit any key to stop autoboot: 0
=> ums 0 mmc 0

此时电脑上应该已经可以看到USB外接存储

1
2
lsusb | grep Netchip
Bus 00x Device 00y: ID 0525:a4a5 Netchip Technology, Inc. Pocketbook Pro 903

2. 系统的内核编译和写入

Linux Kernel
1
2
3
git clone https://github.com/RobertCNelson/armv7-lpae-multiplatform
cd armv7-lpae-multiplatform/
./build_kernel.sh

这里要耗费大量时间来编译内核,以及缺少各种依赖库需要安装,大概三四个小时的时间。

RootFS

首先选择系统,这里我选择的是Debian 10,当然也可以使用Ubuntu 20

Debian 10

1
2
3
4
wget -c https://rcn-ee.com/rootfs/eewiki/minfs/debian-10.4-minimal-armhf-2020-05-10.tar.xz
sha256sum debian-10.4-minimal-armhf-2020-05-10.tar.xz
cd598e42850cbef87602bf15ee343abfbf0d8c6ba81028c741672b5f24263534 debian-10.4-minimal-armhf-2020-05-10.tar.xz
tar xf debian-10.4-minimal-armhf-2020-05-10.tar.xz

Ubuntu 20.04 LTS

1
2
3
4
wget -c https://rcn-ee.com/rootfs/eewiki/minfs/ubuntu-20.04-minimal-armhf-2020-05-10.tar.xz
sha256sum ubuntu-20.04-minimal-armhf-2020-05-10.tar.xz
de0177ac9259fdbcc626ee239f4258b64070c0921dbc38c45fab6925a5becaa1 ubuntu-20.04-minimal-armhf-2020-05-10.tar.xz
tar xf ubuntu-20.04-minimal-armhf-2020-05-10.tar.xz

使用lsblk找到外置存储,我的是/dev/sdb1,并且进行清零

1
2
export DISK=/dev/sdb
sudo dd if=/dev/zero of=${DISK} bs=1M count=10

再次安装BootLoader

1
2
sudo dd if=./u-boot/SPL of=${DISK} seek=1 bs=1k
sudo dd if=./u-boot/u-boot-dtb.img of=${DISK} seek=69 bs=1k

创建分区

1
2
3
sudo sfdisk ${DISK} <<-__EOF__
1M,,L,*
__EOF__

格式化并挂载分区

1
2
3
sudo mkfs.ext4 -L rootfs ${DISK}1
sudo mkdir -p /media/rootfs/
sudo mount ${DISK}1 /media/rootfs/

首先写入rootfs

1
2
3
4
sudo tar xfvp ./*-*-*-armhf-*/armhf-rootfs-*.tar -C /media/rootfs/
sync
sudo chown root:root /media/rootfs/
sudo chmod 755 /media/rootfs/

然后找到编译完成的内核版本,如kernel_version=5.X.Y-Z

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
export kernel_version=5.X.Y-Z

sudo mkdir -p /media/rootfs/boot/extlinux/
sudo sh -c "echo 'label Linux ${kernel_version}' > /media/rootfs/boot/extlinux/extlinux.conf"
sudo sh -c "echo ' kernel /boot/vmlinuz-${kernel_version}' >> /media/rootfs/boot/extlinux/extlinux.conf"
sudo sh -c "echo ' append root=/dev/mmcblk2p1 ro rootfstype=ext4 rootwait quiet' >> /media/rootfs/boot/extlinux/extlinux.conf"
sudo sh -c "echo ' fdtdir /boot/dtbs/${kernel_version}/' >> /media/rootfs/boot/extlinux/extlinux.conf"

sudo cp -v ./armv7-lpae-multiplatform/deploy/${kernel_version}.zImage /media/rootfs/boot/vmlinuz-${kernel_version}

sudo mkdir -p /media/rootfs/boot/dtbs/${kernel_version}/
sudo tar xfv ./armv7-lpae-multiplatform/deploy/${kernel_version}-dtbs.tar.gz -C /media/rootfs/boot/dtbs/${kernel_version}/

sudo tar xfv ./armv7-lpae-multiplatform/deploy/${kernel_version}-modules.tar.gz -C /media/rootfs/

sudo sh -c "echo '/dev/mmcblk2p1 / auto errors=remount-ro 0 1' >> /media/rootfs/etc/fstab"

最后写入完成重启即可。

1
2
sync
sudo umount /media/rootfs

串口Console端

1
2
3
4
5
6
7
8
9
10
Loading Environment from MMC... OK
In: serial
Out: serial
Err: serial
Net: FEC0
Hit any key to stop autoboot: 0
=> ums 0 mmc 0
UMS: LUN 0, dev0, hwpart 0, section 0x0, count 0x720000
Ctrl+C to exit ...
=> reset

重启后就会自动进入Debian了

参考资料:

https://developer.android.com/things/hardware/imx7d

https://www.nxp.com/part/MCIMX7D7DVM10SC#/

https://www.digikey.com/eewiki/display/linuxonarm/PICO-PI-IMX7