【已评审】新增查询和配置BIOS选项的通用IPMI命令

ISSUE链接

支持查询和配置BIOS选项的通用IPMI命令

背景

客户要求使用ipmi命令查询和配置BIOS选项

需要支持ipmi命令查询和配置BIOS选项

决策点

是否新增ipmi命令来查询和配置BIOS选项

详细描述

Get命令

IPMI命令字:NetFn:0x30 Cmd:0x93
名称:Get Bios Configuration
变化类型:新增IPMI命令
应用场景:获取bios配置项
操作权限:ReadOnly
可执行角色等级:User

字节顺序 域内容
NetFn 30h
Cmd 93h
1:3 Manufacturer ID,LS Byte first。长度固定3个字节,例如,某厂家ID是2011,对应十六进制为0x0007DB,则字节序为第1个字节为DBh、第2个字节为07h、第3个字节为00h。
4 Sub command,子命令=8Bh
5 Systemid,系统id,表示查询对应系统的BIOS选项
6 Type,查询类型:0-待生效的值,1-已生效的值
7:8 Reserved,预留字段,默认填0
9 Length,属性名长度N
10:N+9 Property,属性名,区分大小写

响应说明:

字节顺序 域内容
1 Completion Code
2:4 Manufacturer ID,LS Byte first。长度固定3个字节,例如,某厂家ID是2011,对应十六进制为0x0007DB,则字节序为第1个字节为DBh、第2个字节为07h、第3个字节为00h。
5:6 Reserved,预留字段,默认填0
7 Type,属性值类型:0-字符串 1-数字
8 Length,属性值长度M
9:M+8 Value,属性值,ascii字符串,如果类型为数字,则为小端序。例:Type为0,属性值为0x68,表示"h";Type为1,属性值为0x68,表示104

Set命令

IPMI命令字:NetFn:0x30 Cmd:0x93
名称:Set Bios Configuration
变化类型:新增IPMI命令
应用场景:设置bios配置项
操作权限:UserMgmt
可执行角色等级:Administrator

字节顺序 域内容
NetFn 30h
Cmd 93h
1:3 Manufacturer ID,LS Byte first。长度固定3个字节,例如,某厂家ID是2011,对应十六进制为0x0007DB,则字节序为第1个字节为DBh、第2个字节为07h、第3个字节为00h。
4 Sub command,子命令=8Ch
5 Systemid,系统id,表示配置对应系统的BIOS选项
6:7 Reserved,预留字段,默认填0
8 Property length,属性名长度N
9:N+8 Property,属性名,区分大小写
N+9 Type,属性值类型:0-字符串 1-数字
N+10 Value length,属性值长度M
N+11:N+M+10 Value,属性值,ascii字符串,如果类型为数字,则为小端序。例:Type为0,属性值为0x68,表示"h";Type为1,属性值为0x68,表示104

响应说明:

字节顺序 域内容
1 Completion Code
2:4 Manufacturer ID,LS Byte first。长度固定3个字节,例如,某厂家ID是2011,对应十六进制为0x0007DB,则字节序为第1个字节为DBh、第2个字节为07h、第3个字节为00h。

错误场景:

Get命令

场景 错误码 错误码含义
未找到对应属性 0xC9 ParmOutOfRange
查询类型错误 0xC9 ParmOutOfRange
命令长度错误 0xC7 ReqDataLenInvalid

Set命令

场景 错误码 错误码含义
未找到对应属性 0xC9 ParmOutOfRange
属性值不在可设置范围内 0xC9 ParmOutOfRange
命令长度错误 0xC7 ReqDataLenInvalid

评审结论

同意新增查询和配置BIOS选项的IPMI命令,具体如下

  • NetFn:0x30
  • Cmd:0x93
  • Sub command:0x8b、0x8c

请求、响应格式定义如详细描述

遗留问题

遗留问题:
1、属性名长度是否限制:不做限制,当前bios上报的属性名一般不会超过70个字节
2、预留支持查多个的能力,增加预留字节:已增加预留字节