Get Fruid Info
更新时间: 2025/06/26
在Gitcode上查看源码3bh-获取FRU信息(Get-Fruid-Info)
修订记录
| openUBMC版本号 | 修订日期 | 修订内容 |
|---|---|---|
| 25.06 | 2025/06/26 | 初稿,新增命令详情 |
基本信息
功能说明
获取FRU信息。
权限
命令信息
请求信息
| 字节顺序 | 域取值说明 |
|---|---|
| NetFn | 30h |
| CMD | 93h |
| 1:3 | Manufacturer ID,LS Byte first。长度固定3个字节,例如,某厂家ID是2011,对应十六进制为0x0007DB,则字节序为第1个字节为DBh、第2个字节为07h、第3个字节为00h。 |
| 4 | Sub command,子命令=0x3Bh |
| 5 | reserved,填0 |
| 6 | Device Type Parameter 见 设备类型(Component Type) ,0xff则指查询所有Device Type的部件的Fruid,如果设置为0xff,则7/8/9字节均无效 |
| 7 | Group Id(部件逻辑组ID,当前openUBMC仅支持值为1)按逻辑组统一编号,从1开始。 在不同组的部件丝印存在重复的情况,需要分组,用于区分丝印,如8100 v3/RH5885H V3的内存板上的内存条,每个内存板上的内存条就是一组,组ID就是内存板slot id+1。X6800单板的前置、内置和后置Riser卡上的PCIE卡丝印也存在相同,需要区分,前置组ID为1,内置组ID为2,后置组ID为3。0xff则指所有Group。其它部件目前仅支持一组,即组ID为1。 |
| 8 | Device Number 指同一Group Id下的设备逻辑序号,从1开始,跟slotid一致或按一定顺序编号(一个产品确定后就不变)。设置为0xff则查询Device Type固定为第6字节指定值的所有FRU ID。 |
| 9 | reserved,填0 |
| 10 | Read Offset 读取的数据偏移,从0开始。 |
| 11 | Length 读取长度 |
响应信息
| 字节顺序 | 域取值说明 |
|---|---|
| 1 | Completion Code 80h-Device not present |
| 2:4 | Manufacturer ID,LS Byte first。长度固定3个字节,例如,某厂家ID是2011,对应十六进制为0x0007DB,则字节序为第1个字节为DBh、第2个字节为07h、第3个字节为00h。 |
| 5 | End of List 表示当前数据是否结束。当参数数据比较长的时候,可能需要分多次读取,通过此字段可以判断数据是否读完。 [7:1]: reserved [0]: End of list 0=last data 1=middle data |
| 6:N | Data 实际返回的数据可能小于等于Read length,多个FRU ID时,不保证按FRU ID由低到高顺序返回 data1:1-第一个FRU ID data2:1-第二个FRU ID …… dataN:1-第N个FRU ID |
命令样例
获取FRU信息
请求:
ipmicmd -k "0f 00 30 93 db 07 00 3b 0 ff 1 ff 0 1 9" smi 0响应:
0f 31 00 93 00 db 07 00 01 01 02 03 07 09 0c 49 04 0a