coreboot 26.06 版本发布说明解读:四个新 SoC、AMD ROM Armor 2 与 A/B 恢复、工具链升级全记录

  • 固件
  • 嵌入式
  • 操作系统
  • 驱动开发

【免费下载链接】coreboot

Read-only mirror of https://review.coreboot.org/coreboot.git. Synced every hour. We don't handle Pull Requests.

项目地址: https://gitcode.com/gh_mirrors/co/coreboot
点击查看 免费下载

coreboot 26.06 是该项目 2026 年上半年的第二个定期发布,覆盖 26.03 之后约三个月内的全部变更。本篇基于仓库中的 coreboot-26.06 发布说明 逐节解读:Intel Nova Lake / AMD Strix Halo / Qualcomm Calypso / Intel Panther Lake 四个 SoC 的初次使能进展、AMD 平台的 ROM Armor 2 与 A/B 固件恢复基础设施、Qualcomm 系 Google 主板的充电与电池管理改进、Haswell/Broadwell 统一与 CPU 调压工作、工具链与外部资源更新,以及完整的平台增减清单与提交统计。读完后你可以判断哪些新功能是"可用"的、哪些仍是"早期使能",并能在仓库中直接定位到对应的 SoC、主板和工具目录。

发布概览与下一版时间表

根据 发布说明,26.06 版本自 26.03 以来:

  • 101 位作者(含 22 位新作者)提交了超过 1100 次 commit,涵盖新功能、平台使能、代码清理与缺陷修复;
  • 下一版本 26.09 计划于 2026 年 9 月底发布。

这一节奏符合仓库 发布说明索引 所维护的季度发布节奏。发布说明中的每一项"重大变更"均附带了 commit 短哈希,可直接在版本库中回溯;本文在解读时会同时给出当前仓库中已能确认的对应目录与文件,方便交叉验证。

新增 SoC 一:soc/intel/novalake——Intel Nova Lake(NVL)基础使能

26.06 为 Intel Nova Lake(NVL)平台打下了基础。按发布说明的叙述,使能是分阶段完成的:

阶段commit内容
bootblock5fd6ad6644引导块阶段支持
romstagea8c9ecfaa9romstage 阶段支持
ramstagecfa90f7a03ramstage 阶段支持
FSP-M0beffbd0beFSP-M(内存初始化前)编程
FSP-Sa6798f2eb5FSP-S 编程
GPIO0abe0a6f0bGPIO 定义
ACPI9b6d29c2ecSoC ACPI 目录

配套工作包括:

  • 通过 chipset.cb 机制挂接 PCIe 根端口操作(1945d07700);
  • 配置 Intel Flash Descriptor 的 chipset(0f171a217f);
  • 启用 IOC 1MB LGMR 支持(2a2ab9e0cc);
  • 增大堆空间,为高质量 firmware splash(启动画面)渲染腾出空间(fabe57c3f7);
  • 工具链跟进:导入 v3150.22 版 NVL FSP 头文件(e6bc275fdb)、ifdtool 在 IFD2 下获得 NVL 支持(2f9ab09057)、spd_tools 学会识别 Nova Lake SoC(61dc9a4916)。

当前限制(务必注意):发布说明明确指出这仍是早期使能工作——DDR5 尚不支持,部分 FSP 变通代码(workaround)仍保留,等待上游 FSP 修复。

在仓库中可以直接确认该 SoC 的落地结构:src/soc/intel/novalake 目录已包含 bootblock/、romstage/ 两个阶段子目录,chipset.cb(对应上述 PCIe 根端口机制)、gpio.c、acpi.c 与 acpi/ 目录(内含 pcie.asl、gpio.asl、xhci.asl、tcss.asl、serialio.asl 等片段),与发布说明所列各阶段一一对应。

此外,Google Atria 基础板及其变体在本周期内已从 Panther Lake SoC 迁移到 Nova Lake(cff044285b),仓库中 src/mainboard/google/atria 目录已存在。

新增 SoC 二:soc/amd/strix_halo——AMD Strix Halo

AMD Strix Halo SoC 在本周期首次进入代码树。按发布说明:

  • 初始 commit(ee148cc689)基于 glinda 改名引入该 SoC;
  • 后续补丁包括:最大 CPU 数量调优(c108ccb930)、fw.cfg 适配(29f93567c5)、APOB 区域从 256K 扩大到 576K(eedd292f32)、CPUID 匹配更新(7982c6e172);
  • 加入假 FSP 头文件(dummy FSP headers,bddc56d7fe),在真实二进制与头文件到位前保证构建通过;
  • VBIOS 路径挂接(d381d33a39);
  • 补上维护者信息(847b42fa69)。

首个使用 Strix Halo 的主板是 AMD Maple 参考主板(47f124abba),并配套 EC、GPIO 与 blob 布线(7f8e7842fc、d5d8446831、995eb78c64)。与 Nova Lake 一样,这是进行中的使能工作,尚不面向真实硬件使用。

仓库中可以确认:src/soc/amd/strix_halo 目录已存在,与 glinda 并存,包含 chip.c、acpi/、fch.c、root_complex.c、fw.cfg、mca.c 等;首个主板 src/mainboard/amd/maple 也已落地,目录内含 ec.c、gpio.c、early_gpio.c、board.fmd、devicetree.cb 等文件。

新增 SoC 三:soc/qualcomm/calypso——Qualcomm Calypso

Qualcomm Calypso SoC 从 X1P42100 代码基线引导而来(移除 SoC 专属片段),为增量开发提供骨架(38e8eadfa7)。在此骨架上,平台陆续获得:

  • ARM Trusted Firmware 支持(230f210d2d);
  • 基础 PCIe(30b8524ff5);
  • QUPv3 时钟初始化(e4cae1a62b)与 Serial Engine 条目(8dbf88a300);
  • romstage 与 ramstage 中的 SPMI 驱动(49e3595e1f);
  • bootblock 中的 QSPI/QUPv3 引导(421c21c6cf)。

固件加载与内存布局方面:

  • CPUCP 与 PDP 固件加载(192fdf75e0);
  • CPUCP 二进制拆分为 RO 与 RW 区域(1c79360b44);
  • BL31 与 BL32 的 CBFS 预加载(03aaebef7e);
  • 新 SoC 的内存布局对齐(22a67b77d6、6995ef7c91)。

Calypso 被三个新主板消费:Google Calypso、Mensa、C1nv;目录本身也由早期的 "mensa" 目录重命名而来(201392d363、e187893fa9)。

仓库确认:src/soc/qualcomm/calypso 目录存在,内含 bootblock.c、cpucp_load_reset.c、soccp_load_reset.c(对应 CPUCP/SOCCP 加载)、memlayout.ld(内存布局)、display/、usb/、qcom_qup_se.c(QUP Serial Engine)等文件,与说明中的各条目相互印证。

安全基础设施:AMD ROM Armor 2 与 A/B 恢复

这是本周期 AMD 平台最重要的安全能力扩展,分两条主线:

ROM Armor 2

  • ROM Armor 2 支持在 PSP 公共块中实现(16a69e9619),底层依托:
    • PSP 邮箱接口(8121a3dd72);
    • 基于 HSTI 的状态上报(cd8072191d);
    • SPI 路径中的强制检查(3bc8a9fec1、2ff5b9c0ff、d72d7d1ba0);
  • PSP 通过 ROM Armor 邮箱接口与 SPI 控制器通信(c4bd58b02d);
  • AMD fTPM 驱动学会在 ROM Armor 下运行,并支持备用 SPI flash(63fff936cd、3a87b84f7c)。

从源码结构看,这部分实现位于 psp_rom_armor.c:ramstage 通过 call_smm(APM_CNT_ROM_ARMOR, ...) 发起 READ/WRITE/ERASE 命令,并以 region_device 方式把受保护的 flash 区域暴露给上层;源码注释明确标注 readat 操作"仅用于 ROM Armor 2",说明 ROM Armor 1 与 2 走的是不同的访问路径。相关声明文件包括 psp_rom_armor_smm.c 与 psp_rom_armor_apmc.h。

A/B 恢复

  • SoC 级 A/B 恢复支持(4ca21336b4),引入包含 EFS、RECOVERY_A、RECOVERY_B 分区的新 FMAP 布局;
  • PSP 获得 A/B 恢复命令(492b7c7c09)、从第二颗 flash 设备启动的能力(b6385bcf0d),以及跨启动保留恢复标志的逻辑(2059d08bbf);
  • Cezanne 是首个接入该流程的 SoC,配有 A/B 恢复与 PSP_AB_NVRAM 支持(f78ba958e5、302ea069ef);
  • 工具侧:amdfwtool 学会把 A/B level 2 目录从 PSP level 1 中拆分(ac8bd296ee)并修复备份 PSP L1 生成(dee0bfdbc0);amdfwread 获得 A/B 恢复解析(0aaeff81e3)。

仓库中可以交叉验证 FMAP 布局:strix_halo 的 Makefile.mk 中在 CONFIG_PSP_AB_RECOVERY 为 y 时,会读取 FMAP_SECTION_RECOVERY_A_START 与 FMAP_SECTION_RECOVERY_B_START 并加上 AMD_FW_AB_POSITION(0x80)偏移,构造 A/B 恢复固件地址;cezanne、glinda、mendocino、phoenix 的 Makefile 中同样存在 RECOVERY 分区相关逻辑,印证了 Cezanne 之外的 SoC 也在接入该流程。工具源码见 util/amdfwtool(含 amdfwread.c、data_parse.c、signed_psp.c 等)。

Google 主板:Qualcomm 系充电与电池管理

基于 Qualcomm 的 Google Bluey 与 Calypso 主板获得了成体系的充电、电池与低功耗启动改进:

  • Calypso:充电框架(07ce3b92a0)、低功耗充电启动序列(ae5b0d713c);
  • Bluey:慢充到快充的切换逻辑(eda62af9dd);电池低于 2% 时回退到慢充(8e57010d88);充电全程监控热传感器(86b3901ba5)。

降级电源状态下的鲁棒性是本节的反复主题:Bluey 新增专门的"无电池"启动模式(9dc937c982)、携带"电池耗尽"启动标志配置(2115ec3b4a)、romstage 中处理 ship-mode 与截止恢复(d300ef280c、17b825ae1c);启动模式与电池状态被提前缓存并复用,以精简主板初始化(99b53e5a84、7c75b0655f);NVMe 电源时序在 romstage 中优化,让电源轨更早拉起(69f0093d54、38addfb24f)。部分行为在本周期内经过反复迭代,包括对启动计数与重启相关改动的回退(a2f401da5b、0b2d5a6e7a)。

仓库中 src/mainboard/google/calypso 与 src/mainboard/google/bluey 等目录可作为进一步阅读起点。

Haswell 统一 Broadwell 与 CPU 调压(nb/intel/haswell)

这一节由两个目标驱动:统一 Haswell 与 Broadwell 代码基线,以及让 Broadwell "trad"(非 ULT)部件在 coreboot 中工作。发布说明明确:截至本版本该目标仍是进行中的工作,且只能在 native raminit(NRI) 下工作,因为 Haswell 与 Broadwell 的 MRC 均不支持这些部件。

具体改动:

  • Broadwell 原生显卡初始化回合移植到 Haswell:驱动获得 Broadwell 设备 ID(6e95ade0cb)、GT 电源管理初始化(aa9ff8895f)、CDCLK 编程(f7412bf209),并伴随一系列让两条显卡路径趋同的清理(b75d086f86、892d68a8c8、f2e24e5230);
  • CPU 侧引入新的 OC 邮箱降压驱动(fa68b66686),并分别为 Haswell(aaa396d571)、Skylake(e9239d2308)、Cannonlake(1654e0a1de)挂接;
  • Haswell 增加由选项驱动的 PL1/PL2 功耗限制覆盖与 package-limit 锁定(1dc346e61e),并且 CPU 初始化改为在 ramstage 中收尾(f841e98bca)。

该工作与一批新增的 ASUS Haswell 时代主板配套:Maximus VI / VII 系列、Z87-K、H81M-K(完整清单见后文"新增主板")。

Panther Lake:SoC 与基础板同步推进(soc/intel/pantherlake)

Intel Panther Lake(PTL)SoC 使能本周期进展显著,配套 Google Fatcat 与 Ocelot 参考平台的大量工作:

  • SoC 层:UFS 内联加密(dfe5b08978)、CNVi 与 WWAN 共存(d9956b0bcf)、VCCSA 关机缓解(eeca9d6f77)、迁移到公共 CBFS 预加载实现(084a7ea69c);
  • 主板层:Fatcat/Ocelot 基础板及其变体(ruby、lapis、moonstone 等)获得合盖关机选项(a5d2a225a1)、平板模式支持、竖屏面板的主动显示限制(a5fb73a737),以及多个板型上的 UFS 内联加密启用。

仓库中 src/soc/intel/pantherlake 目录已存在;Google Atria 从 PTL 迁移到 Nova Lake(见前文)正是两条使能线此消彼长的结果。

其他核心变更(Additional coreboot changes)

发布说明的"Additional coreboot changes"一节涵盖以下条目,逐条保留其技术要点:

  • Southbridge 统一:Lynx Point 与 Wildcat Point 深度统一,Wildcat Point 改为复用 Lynx Point 的 ME、PCIe、HDA、PMC 与 SMI 代码,不再维护独立副本(1f376aebde、ffce7b6ae7、73b325e337、82b7a33abf、23de5b5288);共享 ME 路径顺带获得 Wildcat Point finalisation 与一处 use-after-free 修复(f64c1fb9c3、574c7e116d)。
  • C23 兼容推进:全树用 typeof 替换 __typeof__(b084eef118),对未终止字符串缓冲区应用 nonstring 属性(e57478e238)。
  • 构建简化:全树移除 WARNINGS_ARE_ERRORS(e8a3bb81db)。
  • SPI flash:新增 JEDEC SFDP 解析(67845716da),在可能时改用更大的块擦除(95edd07bca)。
  • 启动性能:arm64 协作式多任务支持(2227096f55)、缓存 LZMA 解压优化(cd7f369416)、AMD 平台 ROM3 缓存(72da5e8f41)、Intel 平台微码在 DRAM 中缓存(bc61158f64)。
  • FMAP:默认 FMAP 生成逻辑重构,x86 FMAP 区域大小从 0x200 提升到 0x1000 以容纳更大的布局(5b71cd5f15、d55ed29d85)。
  • Intel FSP 2.0 驱动新增 Zstd 解压支持(bc7976277b)。
  • 启动画面:支持第二分辨率(secondary-resolution)的 boot splash logo,主板可依据面板分辨率选择 logo(5b811635e7)。
  • 驱动:Realtek r8168 驱动重构 ERI 编程并移除过期 Kconfig 项(0c5d76977c);为 Super I/O 主板引入共享的 Nuvoton HWM 风扇控制助手(a46373fcfa)。
  • Lenovo H8 系 ThinkPad:FnLock 与 logo LED 控制(b01c7d6642、cf541343a9),ThinkLight、键盘背光与主 Fn 键处理改进(07981ca1c0、6078f59a7c);修复 ACPI 电池功率单位并为支持型号加入基础充电行为(a06042792d、b247bf183d)。
  • Star Labs 主板:基于 CFR 的电源配置文件与按端口的 PCIe 电源管理控制(046a35f84f、6f3c6558f3、21c424ae9a)。
  • IBECC 运行时控制:FSP 使能位改由选项后端(而非仅 devicetree)驱动,覆盖 Alder Lake、Elkhart Lake、Meteor Lake、Tiger Lake(c2d06ca3be);Star Labs 主板通过 CFR 暴露(0c555f171d)。
  • Apollo Lake / Gemini Lake 新增原生 IFWI stitcher:用 OpenSSL 从 Kconfig 选定的 descriptor、CSE 镜像与签名输入拼装最终 flash 镜像,不再调用 Intel FIT 或 MEU(00793280d1)。
  • AMD 平台可经新 Kconfig 在 S0i3 下保持 ACP XTAL 运行,支持麦克风等唤醒源(241287f596、41f67ad2a7、7d474cda77),Jaguar 率先启用(8df29f19d7)。
  • MediaTek 公共代码加入共享资源互斥量保证 DMA 安全(5b49e6d976);RISC-V QEMU 目标开始初始化 PCI 根总线(f1e95c5536)。
  • Qualcomm 公共代码重大更新:PCIe Gen5(687780fca9)、delta DCB 加载(589ff5b60b)、异步 PCIe 初始化。
  • Qualcomm X1P42100 大幅成熟:eDP 显示支持(c6e0f28814)、运行时 SoC 识别(574166edf9)、CBFS 中同时支持 Hamoa 与 X1P42100 固件 blob(2ac9b3d715)、PCIe endpoint 掉电(2a6b546ca2)。
  • amdfwtool 大清理:移除 combo 支持(c3a82354fa),配置文件与 --location 参数变为必填(8c7c9ad484、02579e43be),平台特例移入专门文件(5ffe9ff224),支持 AIFv1 BIOS 目录表(c3e0cb75fa),新增 Mullins 平台(e9487cafa0);amdfwread 增加 UEFI 镜像解析(2c43cd5be0)。
  • 复古平台:新增 Intel GM965 北桥(Core 2 Duo 时代)支持,含 MRC cache 快速启动与 SMBIOS 内存信息设置(6457201fe6、c094305a92)。
  • libpayload:arm64 修复——把预分配 framebuffer 纳入已用内存区间(5c77449b8b),并修正 Makefile 中不被识别的链接器选项(82de37d171)。

外部资源更新

工具链

组件旧版本新版本commit
GCC14.2.015.2.0e518885dce
NASM2.16.033.015267cae13a(并行构建竞态修复 ced4028bff)
binutils2.452.45.1b6ca7755f3
ACPICA20250807202512123ef459a968

仓库中 util/crossgcc/buildgcc 脚本已将 GCC_VERSION 设为 15.2.0,并配套 gcc-15.2.0 的校验和与 gnat 补丁(见 util/crossgcc/sum 与 util/crossgcc/patches),可确认该升级已实际落地到构建基础设施。

Git 子模块指针

  • amd_blobs:0a6d270fb3 → 588da8d6de(2 个 commit)
  • fsp:81399b3b61 → ca4f8b702d(13 个 commit)
  • intel-microcode:250941fb67 → 98f8d817ca(1 个 commit)

外部 payload

  • edk2:本地构建 FMP 证书 PCD 以支持 capsule update(4064b5de37);串口输出关闭时禁用串行驱动(f71e7624c4);默认 MrChromebox 分支由 2511 更新为 2603(25d3809ea3)。

平台变更:新增与移除的主板

新增主板

AMD 系:

  • AMD Crater(V2000A SoC)
  • AMD Jaguar(Faegan SoC)
  • AMD Maple(Strix Halo SoC)

ASRock:H370M-ITX/ac、Z87 Extreme6

ASUS:H81M-K、Maximus VI EXTREME、Maximus VI FORMULA、Maximus VI HERO、Maximus VI IMPACT、Maximus VII IMPACT、Maximus VII RANGER、P8H61-I R2.0、P8H61-M LX2、PRIME H610M-K D4、Z87-K

Framework:

  • Framework Laptop 13(Intel Core Ultra Series 1)
  • Framework Laptop 13 Pro(Intel Core Ultra Series 3)

Google:Atria、C1nv、Calypso、Dirkson、Mensa、Penghu、R2d2、Sheev

其他:

  • Lenovo ThinkPad X61 / X61s
  • Star Labs Byte Mk I(Ryzen 7 5800U)
  • Star Labs StarBook Mk VI(Ryzen 7 5800U)
  • System76 bonw15-b
  • System76 gaze20

移除主板

  • AMD Crater(Renoir)——由 V2000A SoC 版的 AMD Crater 取代
  • Google Myst

SoC 变更

  • 新增 amd/strix_halo
  • 新增 intel/novalake
  • 新增 intel/pantherlake
  • 新增 qualcomm/calypso

上述四个新增 SoC 目录在当前仓库 src/soc/ 下均已存在,可直接浏览。

26.03 → 26.06 提交统计

指标数值
总提交数1163
日均提交数12.69
总新增行数139996
平均每提交新增行数120.37
新增超过 100 行的补丁数118
小提交平均新增行数37.83
总删除行数20972
平均每提交删除行数18.03
增删净差119024
总作者数101
新作者数22

如何阅读与验证这份发布说明

  1. 定位原文:发布说明位于 Documentation/releases/coreboot-26.06-relnotes.md,releases 目录按版本号归档了从 4.1 到 26.12 的各版说明,阅读前后版本可对比演进脉络。
  2. 按 commit 哈希回溯:文中每个条目都给出 10 位短哈希,可在版本库历史中精确定位对应变更;对"早期使能"类条目(Nova Lake、Strix Halo、Broadwell trad、Calypso),发布说明均明确标注了当前限制,升级或移植决策时应以这些限制为准。
  3. 对照仓库目录:新增 SoC 直接对应 src/soc/intel/novalake、src/soc/intel/pantherlake、src/soc/amd/strix_halo、src/soc/qualcomm/calypso 四个目录;安全功能可查 src/soc/amd/common/block/psp/ 与 src/soc/amd/common/block/spi/;工具可查 util/amdfwtool、util/ifdtool(ifdtool 已支持 NVL)与 util/spd_tools。

适用前提与限制提示:Nova Lake 与 Strix Halo 均为进行中的使能工作,分别不支持 DDR5 与真实硬件使用;Broadwell trad 仅能配合 NRI 工作;AMDFWTOOL 的配置文件与 --location 参数自本版本起为必填项,旧脚本需要相应调整。

  • 固件
  • 嵌入式
  • 操作系统
  • 驱动开发

【免费下载链接】coreboot

Read-only mirror of https://review.coreboot.org/coreboot.git. Synced every hour. We don't handle Pull Requests.

项目地址: https://gitcode.com/gh_mirrors/co/coreboot
点击查看 免费下载

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值