背景
装备缺少AC上下电装备测试项,仅在整机环节通过CPLD的升级实现1次AC上下电,装备阶段对AC上下电场景问题拦截率明显低于其他产业,产业要求在装备阶段增加AC上下电装备测试项,BMC新增ipmi命令实现对先执行DC下电(直接AC对单板硬件存在冲击),下电完成后等待10S,再执行AC上下电。
差距: 目前 openUBMC AC cycle IPMI命令仅支持直接AC上下电,不支持先DC后AC上下电。
评审点:Set Test Count IPMI命令新增test type 4先DC强制下电之后10秒执行AC Cycle操作
IPMI命令: ipmitool raw 0x30 0x90 0x31 0x00 ${test_type}
请求参数:
| 字节顺序 | 取值说明 |
|---|---|
| NetFn | 30h |
| CMD | 90h |
| 1 | SubCmd,子命令= 31h |
| 2 | FRU Device ID |
| 3 | test type,测试类型选项,取值有: 0=DC power cycle测试 1=cold reset 3=AC Cycle,强制AC命令,不关注业务系统上电状态(可能会损耗业务系统的硬盘数据) 4=先DC强制下电,再执行AC Cycle 其他保留 |
| 4 | test count 测试次数(test type为3,4时,test count参数会被忽略) |
响应参数:
| 字节顺序 | 取值说明 |
|---|---|
| 1 | Completion Code 80h=不支持 C0h=node busy,正在测试中 |
使用实例
- 请求:
ipmitool raw 0x30 0x90 0x31 0x00 0x04 - 响应:00h
评审结论
1、同意IPMI命令Set Test Count(netfn=0x30,cmd=0x90,subcmd=0x31)新增test type 0x04,表示先DC强制下电,再执行AC Cycle。
2、刷新原有test type为0的描述,明确为DC power cycle。
遗留问题
1、确认请求中的test count参数在AC Cycle场景是否应该支持?
结论:已确认test count参数在test type为3时(AC Cycle)未使用,代码实现未对test count参数进行处理,因此在test type为3或4时,test count参数会被忽略