固件ID管理

修订记录

openUBMC版本号修订日期修订内容
25.062025/06/26初稿,新增命令详情

ComponentIDEx规则定义

序列bit位功能描述
最高bit24-bit31ComponentID参见 表1
-bit16-bit23产品 ID ,固件通用升级方案使用00,特定产品专用固件使用对应的产品ID参见 产品ID分配表
-bit8-bit15自定义-
最低bit0-bit7自定义-

固件升级匹配原则

1、通过ComponentID、ComponentIDEx匹配具体固件类型。

2、通过BoardID、Uid匹配硬件类型。

3、非天池架构,“update.cfg”不承载板卡的BoardID,需要通过ComponentIDEx来区分不同的硬件类型。

“固件类型”用于 Redfish FirmwareInventory,场景如下:

1、资源 Id:路径为 /redfish/v1/UpdateService/FirmwareInventory/<[Position]+[DeviceName]><固件类型>。例如:/redfish/v1/UpdateService/FirmwareInventory/BCU1CpuBoard1HWSR

2、SoftwareId:命名规范为 <固件类型>-xxx。例如:CPLD-BC82AMDT

表 1 固件升级ID分配表(ComponentID和ComponentIDEx)

说明:升级包 update.cfg 中的 ComponentID、ComponentIDEx 须填写十进制。表中按 十六进制=十进制 对照列出,便于填写。

固件类型ComponentIDComponentIDEx功能描述
CONFIG0x00-升级所需配置文件包support.tar.gz
APP0x01-app区升级
BIOS0x02-BIOS升级
CFG0x03-CFG升级
UBOOT0x04-uboot升级
CPLD0x05-CPLD升级,默认不填写 ComponentIDEx;UpdateFileType
CPLD0x050x05000001=83886081FPGA Jtag加载,例如:天工HPC刀片。Hi1711直出Jtag,svf格式
CPLD0x050x05000002=83886082FPGA并口加载,例如:天工管理板
CPLD0x050x05000003=83886083FPGA SFC加载,例如:磁电盘框
CPLD_HDD_BACKPLANE0x06-硬盘背板CPLD升级(前置)
IPMC/BMC0x07-BMC根文件系统升级(cramfs)
2488H_CPU0x08-2488H
8100_CPU0x08-8100
9032_CPU0x08--
8100_FIO0x09-8100
9032_FIO0x09-9032前IO板
ATLAS_NPU_BOARD0x09-NPU板CPLD升级组件ID
ATLAS_NPU_BOARD0x090x0F=15NPU板CPLD升级组件扩展ID(CPLD_NPU_BOARD_IDEX)
ATLAS_NPU_BOARD0x090x10=16NPU模组CPLD升级组件扩展ID(同步写入所有模组方式,CPLD_NPU_HAM_IDEX1)
ATLAS_NPU_BOARD0x090x11=17NPU模组CPLD升级组件扩展ID(依次写入所有模组方式,CPLD_NPU_HAM_IDEX2)
SOC_FW0x09-altas载板模组升级
8100_BIOS0x0A=10-8100
9032_BIOS0x0A=10--
8100_BIO0x0B=11-8100
LCD0x0C=12-LCD升级
RAID0x0D=13-RAID升级
RAID0x0D=130x0D000001=218103809SP686 系列固件
FAN0x0E=14-FAN升级
8100_HDD_BACKPLANE_B0x0F=15-8100
9032_HDD_BACKPLANE_B0x0F=15--
RH5885_HDD_BACKPLANE_CD0x0F=15-RH5885V3-HV3
host类固件0x10=160x10000001=268435457SP固件
8100_HDD_BACKPLANE_C0x10=16-已废弃(2023/12/6)
9032_HDD_BACKPLANE_C0x10=16--
WBD0x11=17-白牌包
HWSR0x11=17-Component Self-Description Record,组件自描述记录
HWSR0x11=170x11000001=285212673预留
HWSR0x11=170x11000002=285212674部件驱动
9032_BIO0x12=18-9032后IO板
RETIMER_FW0x13=19-9032
DFT_MODE0x14=20-装备模式标识升级,用于深度恢复出厂配置
8100_HDD_BACKPLANE_D0x15=21-8100
CPLD_HDD_BACKPLANE_EXP0x16=22-扩展的硬盘背板
PSU0x17=230x17000001=385875969天工管理板HDU固件
PSU0x17=230x17100001=386924545TCE NP板VRD升级
PSU0x17=230x17100002=386924546TCE Mesh板VRD升级
PSU0x17=230x17100003=386924547天工管理板电源砖升级(本板IIC升级,跨板网络升级)
CPLD0x18=24-硬盘背板CPLD升级(包含内置和后置)
CPLD0x18=240x8=8扩展板CPLD-0
CPLD0x18=240x9=9扩展板CPLD-1
CPLD0x18=240xA=10IEU CPLD
CPLD0x18=240xFFFFFFFD=4294967293CPLD_HDD_COMPONENT_IDEX
IPMC_EXT40x19=25-BMC根文件系统升级(ext4fs)
CPLD_BY_I2C0x1A=26-RAID卡CPLD升级(通过I2C)
I2C_CPLD0x1B=27--
PRR_FW0x1C=28-PRR固件升级
MCU0x1D=290x0=0板卡MCU固件升级,包括通过MCU升级的固件(如VRD等)。2024.1.9基于V2/V3版本代码实现刷新
MCU0x1D=290x1=1NPU MCU
MCU0x1D=29Byte3:0x1=1通过MCU升级NPU固件。Byte2 ~ Byte0:不涉及;Smbus通道。例如:Atlas系列标卡
MCU0x1D=29Byte3:0x2=2通过MCU升级ECU固件。Byte2 ~ Byte0:不涉及;Mobus通道。例如:RM211管理模块
MCU0x1D=29Byte3:0x3=3通过MCU升级CPLD固件。Byte2 ~ Byte0:不涉及;Smbus通道。例如:DPU系列卡
MCU0x1D=29Byte3:0x4=4SDI VRD固件。Byte2 ~ Byte0:不涉及
MCU0x1D=290x1D000005=486539269VDM固件,通过MCU升级。例如:基础板
MCU0x1D=290x1D000006=486539270VRD固件,将串行生效优化为并行生效(通过MCU缓存,缩短中断业务时间)。例如:HPC单机(16个模组)
PUB_FW0x1E=30-共享FRU升级
CPLD_182X_EXT_IDEX0x0F=15-计算型存储:全宽计算延伸板CPLD升级函数,182X延申板CPLD升级扩展ID
EFUSE0x1F=31--
NSBoard0x20=320x20090000=537460736伙伴09的交换类固件
CollectRegister0x21=330x21000001=553648129通过固件管理方式进行CPU寄存器的收集
Disk0x22=340xFFFFFFFF=4294967295硬盘固件,通过 update.cfg 中的 Model 属性匹配具体型号
NIC0x23=350x23000001=5872025611825网卡固件
通配0xFF=2550xFFFFFFFF=4294967295忽略此属性,通过其他方式匹配固件类型