Report Memory Fault Isolation Address
更新时间: 2025/06/26
在Gitcode上查看源码65h-上报内存隔离结果(Report-Memory-Fault-Isolation-Address)
修订记录
| openUBMC版本号 | 修订日期 | 修订内容 |
|---|---|---|
| 25.06 | 2025/06/26 | 初稿,新增命令详情 |
基本信息
功能说明
接收BIOS上报的内存隔离结果与地址信息。
权限
命令信息
请求信息
| 字节顺序 | 域取值说明 |
|---|---|
| NetFn | 30h |
| CMD | 92h |
| 1:3 | Manufacturer ID,LS Byte first。长度固定3个字节,例如,某厂家ID是2011,对应十六进制为0x0007DB,则字节序为第1个字节为DBh、第2个字节为07h、第3个字节为00h。 |
| 4 | Sub command, 子命令=65h |
| 5 | GlobalSystemId(SystemId) 故障所在系统的逻辑编号,根据各产品形态对系统进行全局编号,从1开始 |
| 6 | LocalSystemId 故障所在系统的物理编号,主系统编号0,同一个主系统内的子系统依次编号,从1开始 |
| 7 | IsolationPolicy: 0:DDR ACLS, 1:DDR sPPR, 2:DDR hPPR, 3:DDR adddc(bank), 4:DDR adddc(device), 5:DDR rank sparing, 6:DDR page_offline, 7:HBM CE - ACLS, 8:HBM UCE - ACLS, 9:HBM CE - SPPR, 10:HBM UCE - SPPR |
| data8:n | 内存隔离结果地址、状态信息,详见 表1 |
附表1 内存隔离地址
| IsolationPolicy | 字节顺序 | 域取值说明 |
|---|---|---|
| 0: DDR ACLS, 1: DDR sPPR, 2:DDR hPPR, 3:DDR adddc(bank), 4:DDR adddc(device), 5:DDR rank sparing, 6:DDR page_offline | 8 | ResultState,响应码: bit[7]:0-成功,1-失败 bit[0:6]:响应码,对应自定义消息,支持隔离失败时定位,详细定义如下: IsolationPolicy字段取值-ACLS: 1-ACLS功能未开启 2-隔离下发参数异常 3-当前channel下ACLS资源已用尽 4-隔离执行失败 IsolationPolicy字段取值-adddc(bank/device): 1-MR/SR功能未开启 2-隔离下发参数异常 3-资源耗尽,无冗余资源可用 4-隔离执行失败 IsolationPolicy字段取值-hPPR/sPPR: 1-hPPR/sPPR功能未开启 2-隔离下发参数异常 3-资源耗尽(BankGroup) 4-隔离执行失败 |
| 9 | fault_type_1:内存故障隔离类型 0-无待隔离故障信息 1-Row故障 2-Col故障 3-Bank故障 4-颗粒故障 5-Rank故障 6-单地址故障 其他值-预留 | |
| 10:17 | System Address | |
| 18 | CpuID | |
| 19 | LogicalChannelID,全局LogicalChannel,0~7 | |
| 20 | Dimm ID | |
| 21 | SubChannel ID | |
| 22 | Rank ID | |
| 23 | Sub Rank ID | |
| 24 | Device ID,表示SubChannel下Device编号,内存颗粒位宽X4:0~9,X8:0~4 | |
| 25 | BankGroup ID | |
| 26 | Bank ID | |
| 27:30 | Row | |
| 31:34 | Col | |
| 35:39 | 预留字段,默认为0. | |
| 7:HBM CE - ACLS, 8:HBM UCE - ACLS, 9:HBM CE - SPPR, 10:HBM UCE - SPPR | 8 | ResultState,响应码: bit[7]:0-成功,1-失败 bit[0:6]:响应码,对应自定义消息,支持隔离失败时定位,详细定义如下: HBM工作在Memory模式,错误码取值定义: [bit0~1]页隔离状态;[bit2~3]在线修复状态;[bit4~5]页重新上线状态;[bit6]预留 1 - 页隔离失败(超阈值),未发起修复,不涉及页重新上线 2 - 页隔离失败(未知原因),未发起修复,不涉及页重新上线 20 - 页隔离成功,修复失败(资源耗尽),已隔离页未恢复上线 24 - 页隔离成功,修复失败(参数异常),已隔离页未恢复上线 28 - 页隔离成功,修复失败(未知原因),已隔离页未恢复上线 32 - 页隔离成功,修复成功,页重新上线失败 HBM工作在Cache模式,错误码取值定义: [bit0~1]cache way隔离状态;[bit2~3]在线修复状态;[bit4~5]cache way重新上线状态;[bit6]预留 1 - cache way隔离失败(超阈值),未发起修复,不涉及cache way重新上线 2 - cache way隔离失败(未知原因),未发起修复,不涉及cache way重新上线 20 - cache way隔离成功,修复失败(资源耗尽),已隔离cache way未恢复上线 24 - cache way隔离成功,修复失败(参数异常),已隔离cache way未恢复上线 28 - cache way隔离成功,修复失败(未知原因),已隔离cache way未恢复上线 32 - cache way隔离成功,修复成功,cache way重新上线失败 |
| 9 | fault_type:内存故障隔离类型 0-无待隔离故障信息 1-Row故障 2-Col故障 3-Bank故障 4-颗粒故障 5-Rank故障 6-单地址故障 其他值-预留 | |
| 10:17 | System Address | |
| 18 | CpuID | |
| 19 | DIE ID | |
| 20 | Stack ID | |
| 21 | Reserved-1,预留字段 | |
| 22 | SID | |
| 23 | Reserved-2,预留字段 | |
| 24 | Channel ID | |
| 25 | BankGroup ID | |
| 26 | Bank ID | |
| 27:30 | Row | |
| 31:34 | Col | |
| 35:39 | 预留字段,默认为0. |
响应信息
| 字节顺序 | 域取值说明 |
|---|---|
| 1 | Completion Code |
| 2:4 | Manufacturer ID,LS Byte first。长度固定3个字节,例如,某厂家ID是2011,对应十六进制为0x0007DB,则字节序为第1个字节为DBh、第2个字节为07h、第3个字节为00h。 |
命令样例
BIOS对DIMM000软隔离成功
请求:
ipmicmd -k "0f 00 30 92 db 07 00 65 01 00 01 06 01 02 03 04 05 06 07 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" smi 0响应:
0f 31 00 92 00 db 07 00