Get component properties
更新时间: 2025/06/26
在Gitcode上查看源码2Fh-获取组件属性(Get-component-properties)
修订记录
| openUBMC版本号 | 修订日期 | 修订内容 |
|---|---|---|
| 25.06 | 2025/06/26 | 初稿,新增命令详情 |
基本信息
功能说明
获取组件属性。
权限
ReadOnly
命令信息
请求信息
| 字节顺序 | 域取值说明 |
|---|---|
| NetFn | PICMG 2Ch |
| CMD | 2Fh |
| 1 | PICMG ID填0 |
| 2 | Component ID,选择查询哪个部件的属性。取值定义参见固件ID管理。 0-7=有效的部件ID 8-FFh=保留 |
| 3 | Component properties selector,选择查询部件的哪个属性。 0=Get General Properties(get_general_prop),通用属性 1=Get Current Version(get_current_version),当前版本 2=Get Description Info(get_description_info),描述信息 3=Get Rollback Version(get_rollback_ver),回滚版本 |
响应信息
| 字节顺序 | 域取值说明 |
|---|---|
| 1 | Completion Code 完成码 81h=当前接口不支持软件升级,下面的响应字节仍然有效。 82h=非法的部件ID 83h=非法的部件属性选择 |
| 2 | PICMG ID填0 |
| 3:N | Component properties data,部件属性数据。 Component properties selector,所选择的属性相对应的数据。 |
命令样例
获取BMC组件版本号
请求:
ipmicmd -k "0f 00 2C 2F 00 01 01" smi 0响应:
0f 2d 00 2f 00 00 05 08 ff ff 03 95响应解读(Component properties selector=01h/get_current_version 时返回 6 字节属性数据;版本号格式为 a.bb.cc.dd,规则参见 openUBMC 四段式版本号规则):
| 字节序 | 段 | 字段 | 编码方式 | 响应值 | 说明 |
|---|---|---|---|---|---|
| 1 | 第 1 段(a) | MajorVer | Binary encoded | 05 | 0x05 → 5 |
| 2 | 第 2 段(bb) | MinorVer | BCD encoded | 08 | 0x08 → 08 |
| 3 | — | Board ID 低字节 | — | ff | 单板 ID 低 8 位 |
| 4 | — | Board ID 高字节 | — | ff | 0xFFFF 表示无效或未配置 |
| 5 | 第 3 段(cc) | releaseMajorVer | BCD encoded | 03 | 0x03 → 03 |
| 6 | 第 4 段(dd) | releaseMinorVer | BCD encoded | 95 | 0x95 → 95 |
上表 6 字节对应示例报文中 05 08 ff ff 03 95(其前的 0f 2d 00 2f 00 00 为 ipmicmd 封装及 IPMI 响应头)。解读后 BMC 固件版本号为 5.08.03.95(MajorVer=5,MinorVer=08,releaseMajorVer=03,releaseMinorVer=95)。