blob: 8b7179ea314522b41d17267954454e37d65164f9 [file] [log] [blame]
Lawrence Tang079d5812022-07-12 14:15:32 +01001{
Lawrence Tang079d5812022-07-12 14:15:32 +01002 "$schema": "https://json-schema.org/draft/2020-12/schema",
3 "type": "object",
Ed Tanousda798dc2025-03-14 15:27:55 -07004 "description": "Memory Error Section",
Aushim Nagarkatti517282f2025-03-03 17:08:31 -08005 "required": [],
Lawrence Tang079d5812022-07-12 14:15:32 +01006 "additionalProperties": false,
7 "properties": {
Lawrence Tang079d5812022-07-12 14:15:32 +01008 "errorStatus": {
9 "type": "object",
Andrew Adrianced9835a12024-12-05 14:41:42 -080010 "description": "Memory error status information.",
Lawrence Tang8a2d7372022-07-12 16:44:49 +010011 "$ref": "./common/cper-json-error-status.json"
Lawrence Tang079d5812022-07-12 14:15:32 +010012 },
13 "bank": {
14 "type": "object",
Andrew Adrianced9835a12024-12-05 14:41:42 -080015 "description": "The bank number of the memory associated with the error.",
Lawrence Tang079d5812022-07-12 14:15:32 +010016 "oneOf": [
17 {
Aushim Nagarkatti382ad4c2024-09-19 13:39:04 -070018 "$id": "cper-json-bank0",
Lawrence Tang079d5812022-07-12 14:15:32 +010019 "type": "object",
20 "required": ["value"],
21 "properties": {
22 "value": {
23 "type": "integer"
24 }
25 }
26 },
27 {
Aushim Nagarkatti382ad4c2024-09-19 13:39:04 -070028 "$id": "cper-json-bank1",
Lawrence Tang079d5812022-07-12 14:15:32 +010029 "type": "object",
30 "required": ["address", "group"],
31 "properties": {
32 "address": {
33 "type": "integer"
34 },
35 "group": {
36 "type": "integer"
37 }
38 }
39 }
40 ]
41 },
42 "memoryErrorType": {
43 "type": "object",
Andrew Adrianced9835a12024-12-05 14:41:42 -080044 "description": "Identifies the type of error that occurred",
Lawrence Tang8a2d7372022-07-12 16:44:49 +010045 "$ref": "./common/cper-json-nvp.json"
Lawrence Tang079d5812022-07-12 14:15:32 +010046 },
47 "extended": {
48 "type": "object",
Ed Tanousda798dc2025-03-14 15:27:55 -070049 "required": ["rowBit16", "rowBit17"],
Lawrence Tang079d5812022-07-12 14:15:32 +010050 "properties": {
51 "rowBit16": {
52 "type": "boolean"
53 },
54 "rowBit17": {
55 "type": "boolean"
56 },
57 "chipIdentification": {
58 "type": "integer"
59 }
60 }
61 },
62 "physicalAddress": {
Andrew Adrianced9835a12024-12-05 14:41:42 -080063 "type": "integer",
64 "description": "The physical address at which the memory error occurred."
Lawrence Tang079d5812022-07-12 14:15:32 +010065 },
Aushim Nagarkatticc367012024-12-05 18:17:27 -080066 "physicalAddressHex": {
67 "type": "string"
68 },
Lawrence Tang079d5812022-07-12 14:15:32 +010069 "physicalAddressMask": {
Andrew Adrianced9835a12024-12-05 14:41:42 -080070 "type": "integer",
71 "description": "Defines the valid address bits in the Physical Address field. The mask specifies the granularity of the physical address."
Lawrence Tang079d5812022-07-12 14:15:32 +010072 },
73 "node": {
Andrew Adrianced9835a12024-12-05 14:41:42 -080074 "type": "integer",
75 "description": "In a multi-node system, this value identifies the node containing the memory in error."
Lawrence Tang079d5812022-07-12 14:15:32 +010076 },
77 "card": {
Andrew Adrianced9835a12024-12-05 14:41:42 -080078 "type": "integer",
79 "description": "The card number of the memory error location."
Lawrence Tang079d5812022-07-12 14:15:32 +010080 },
81 "moduleRank": {
Andrew Adrianced9835a12024-12-05 14:41:42 -080082 "type": "integer",
83 "description": "The module or rank number of the memory error location."
Lawrence Tang079d5812022-07-12 14:15:32 +010084 },
85 "device": {
Andrew Adrianced9835a12024-12-05 14:41:42 -080086 "type": "integer",
87 "description": "The device number of the memory associated with the error."
Lawrence Tang079d5812022-07-12 14:15:32 +010088 },
89 "row": {
Andrew Adrianced9835a12024-12-05 14:41:42 -080090 "type": "integer",
91 "description": "The row number of the memory error location."
Lawrence Tang079d5812022-07-12 14:15:32 +010092 },
93 "column": {
Andrew Adrianced9835a12024-12-05 14:41:42 -080094 "type": "integer",
95 "description": "The column number of the memory error location."
Lawrence Tang079d5812022-07-12 14:15:32 +010096 },
97 "bitPosition": {
Andrew Adrianced9835a12024-12-05 14:41:42 -080098 "type": "integer",
99 "description": "The bit position at which the memory error occurred."
Lawrence Tang079d5812022-07-12 14:15:32 +0100100 },
101 "requestorID": {
Andrew Adrianced9835a12024-12-05 14:41:42 -0800102 "type": "integer",
103 "description": "Hardware address of the device that initiated the transaction that took the error."
Lawrence Tang079d5812022-07-12 14:15:32 +0100104 },
105 "responderID": {
Andrew Adrianced9835a12024-12-05 14:41:42 -0800106 "type": "integer",
107 "description": "Hardware address of the device that responded to the transaction."
Lawrence Tang079d5812022-07-12 14:15:32 +0100108 },
109 "targetID": {
Andrew Adrianced9835a12024-12-05 14:41:42 -0800110 "type": "integer",
111 "description": "Hardware address of the intended target of the transaction."
Lawrence Tang079d5812022-07-12 14:15:32 +0100112 },
113 "rankNumber": {
Andrew Adrianced9835a12024-12-05 14:41:42 -0800114 "type": "integer",
115 "description": "The Rank number of the memory error location."
Lawrence Tang079d5812022-07-12 14:15:32 +0100116 },
117 "cardSmbiosHandle": {
Andrew Adrianced9835a12024-12-05 14:41:42 -0800118 "type": "integer",
119 "description": "This field contains the SMBIOS handle for the Type 16 Memory Array Structure that represents the memory card."
Lawrence Tang079d5812022-07-12 14:15:32 +0100120 },
121 "moduleSmbiosHandle": {
Andrew Adrianced9835a12024-12-05 14:41:42 -0800122 "type": "integer",
123 "description": "This field contains the SMBIOS handle for the Type 17 Memory Device Structure that represents the Memory Module."
Lawrence Tang079d5812022-07-12 14:15:32 +0100124 }
125 }
John Chung044afd02024-05-03 19:58:02 +0800126}