Report Memory Fault Isolation Address
更新时间: 2026/08/06
在Gitcode上查看源码Report Memory Fault Isolation Address
Change History
| openUBMC Version | Revision Date | Description |
|---|---|---|
| 25.06 | 2025/06/26 | Initial draft: add command details |
Basic Information
Function Description
Receives the memory isolation result and address information reported by the BIOS.
Privilege
Command Information
Request Information
| Byte | Data Field |
|---|---|
| NetFn | 30h |
| CMD | 92h |
| 1:3 | Manufacturer ID, LS Byte first. The length is fixed to three bytes. For example, if the vendor ID is 2011 and the corresponding hexadecimal value is 0x0007DB, the first byte is DBh, the second byte is 07h, and the third byte is 00h. |
| 4 | Sub command, Subcommand = 65h |
| 5 | GlobalSystemId(SystemId) Logical number of the system where the fault occurs. The system is globally numbered based on the product form, starting from 1. |
| 6 | LocalSystemId Physical number of the system where the fault occurs. The primary system number is 0. Subsystems in the same primary system are numbered in sequence, starting from 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 | Address and status of the memory isolation result. For details, see Table 1. |
Table 1 Memory isolation address
| IsolationPolicy | Byte | Data Field |
|---|---|---|
| 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, response code: bit[7]: 0-success, 1-failure bit[0:6]: response code, which corresponds to a user-defined message and supports fault locating when isolation fails. The definition is as follows: Values of the IsolationPolicy field - ACLS: 1: The ACLS function is disabled. 2- The isolation parameter delivery is abnormal. 3- ACLS resources in the current channel are used up. 4- The isolation fails. The value of IsolationPolicy is adddc (bank/device). 1: The MR/SR function is not enabled. 2- The isolation parameter delivery is abnormal. 3- Resources are exhausted, and no redundant resources are available. 4- The isolation fails. The value of IsolationPolicy is -hPPR/sPPR. 1: The hPPR/sPPR function is disabled. 2- The isolation parameter delivery is abnormal. 3-Resource exhaustion (BankGroup) 4- The isolation fails. |
| 9 | fault_type_1: indicates the memory fault isolation type. 0- No fault information to be isolated. 1-Row fault 2-Col fault 3-Bank fault 4- chip fault 5-Rank fault 6- single-address fault Other values: reserved | |
| 10:17 | System Address | |
| 18 | CpuID | |
| 19 | LogicalChannelID: global logical channel ID, ranging from 0 to 7 | |
| 20 | Dimm ID | |
| 21 | SubChannel ID | |
| 22 | Rank ID | |
| 23 | Sub Rank ID | |
| 24 | Device ID in a subchannel. Memory chip bit width: X4: 0-9; X8: 0-4 | |
| 25 | BankGroup ID | |
| 26 | Bank ID | |
| 27:30 | Row | |
| 31:34 | Col | |
| 35:39 | Reserved field. The default value is 0. | |
| 7:HBM CE - ACLS, 8:HBM UCE - ACLS, 9:HBM CE - SPPR, 10:HBM UCE - SPPR | 8 | ResultState, response code: bit[7]: 0-success, 1-failure bit[0:6]: response code, which corresponds to a user-defined message and supports fault locating when isolation fails. The definition is as follows: The error codes are defined as follows when the HBM works in memory mode: Bits 0-1: page isolation status; bits 2-3: online repair status; bits 4-5: page online status; bit 6: reserved 1- Page isolation fails (threshold exceeded). No repair is initiated, and the page does not need to be brought online again. 2- Page isolation failed (unknown reason). No repair is initiated. The page does not need to be brought online again. 20- The page is isolated successfully, but the repair fails (resources are used up). The isolated page is not brought online. 24- The page is isolated successfully, but the repair failed (parameter error). The isolated page is not restored. 28- The page is isolated successfully, but the repair fails (unknown reason). The isolated page is not restored to the online state. 32- The page is isolated successfully, the repair is successful, but the page fails to be brought online again. The error codes are defined as follows when the HBM works in cache mode: [bit0-1] cache way isolation status; [bit2-3] online repair status; [bit4-5] cache way re-online status; [bit6] reserved 1: The cache way fails to be isolated (exceeding the threshold). No recovery is initiated. The cache way does not need to go online again. 2: The cache way fails to be isolated due to unknown reasons. No recovery is initiated. The cache way does not need to go online again. 20: The cache way is successfully isolated but fails to be repaired (resources are exhausted). The isolated cache way is not restored. 24: The cache way is successfully isolated, but the repair fails (parameters are abnormal). The isolated cache way is not restored. 28: The cache way is successfully isolated, but the repair fails (unknown reason). The isolated cache way is not restored. 32: The cache way is successfully isolated and repaired, but the cache way fails to go online again. |
| 9 | fault_type: memory fault isolation type 0- No fault information to be isolated. 1-Row fault 2-Col fault 3-Bank fault 4- chip fault 5-Rank fault 6- single-address fault Other values: reserved | |
| 10:17 | System Address | |
| 18 | CpuID | |
| 19 | DIE ID | |
| 20 | Stack ID | |
| 21 | Reserved-1: reserved field | |
| 22 | SID | |
| 23 | Reserved-2: reserved field | |
| 24 | Channel ID | |
| 25 | BankGroup ID | |
| 26 | Bank ID | |
| 27:30 | Row | |
| 31:34 | Col | |
| 35:39 | Reserved field. The default value is 0. |
Response Information
| Byte | Data Field |
|---|---|
| 1 | Completion Code |
| 2:4 | Manufacturer ID, LS Byte first. The length is fixed to three bytes. For example, if the vendor ID is 2011 and the corresponding hexadecimal value is 0x0007DB, the first byte is DBh, the second byte is 07h, and the third byte is 00h. |
Command Example
The BIOS successfully performs soft isolation on DIMM000.
Request:
bash
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 0Response:
text
0f 31 00 92 00 db 07 00