1079d581eSLawrence Tang{
2079d581eSLawrence Tang    "$id": "cper-json-memory-section",
3079d581eSLawrence Tang    "$schema": "https://json-schema.org/draft/2020-12/schema",
4079d581eSLawrence Tang    "type": "object",
5*044afd01SJohn Chung    "required": [
6*044afd01SJohn Chung        "validationBits",
7*044afd01SJohn Chung        "errorStatus",
8*044afd01SJohn Chung        "bank",
9*044afd01SJohn Chung        "memoryErrorType",
10*044afd01SJohn Chung        "extended",
11*044afd01SJohn Chung        "physicalAddress",
12*044afd01SJohn Chung        "physicalAddressMask",
13*044afd01SJohn Chung        "node",
14*044afd01SJohn Chung        "card",
15*044afd01SJohn Chung        "moduleRank",
16*044afd01SJohn Chung        "device",
17*044afd01SJohn Chung        "row",
18*044afd01SJohn Chung        "column",
19*044afd01SJohn Chung        "bitPosition",
20*044afd01SJohn Chung        "requestorID",
21*044afd01SJohn Chung        "responderID",
22*044afd01SJohn Chung        "targetID",
23*044afd01SJohn Chung        "rankNumber",
24*044afd01SJohn Chung        "cardSmbiosHandle",
25*044afd01SJohn Chung        "moduleSmbiosHandle"
26*044afd01SJohn Chung    ],
27079d581eSLawrence Tang    "additionalProperties": false,
28079d581eSLawrence Tang    "properties": {
29079d581eSLawrence Tang        "validationBits": {
30079d581eSLawrence Tang            "type": "object",
31*044afd01SJohn Chung            "required": [
32*044afd01SJohn Chung                "errorStatusValid",
33*044afd01SJohn Chung                "physicalAddressValid",
34*044afd01SJohn Chung                "physicalAddressMaskValid",
35*044afd01SJohn Chung                "nodeValid",
36*044afd01SJohn Chung                "cardValid",
37*044afd01SJohn Chung                "moduleValid",
38*044afd01SJohn Chung                "bankValid",
39*044afd01SJohn Chung                "deviceValid",
40*044afd01SJohn Chung                "rowValid",
41*044afd01SJohn Chung                "columnValid",
42*044afd01SJohn Chung                "bitPositionValid",
43*044afd01SJohn Chung                "platformRequestorIDValid",
44*044afd01SJohn Chung                "platformResponderIDValid",
45*044afd01SJohn Chung                "memoryPlatformTargetValid",
46*044afd01SJohn Chung                "memoryErrorTypeValid",
47*044afd01SJohn Chung                "rankNumberValid",
48*044afd01SJohn Chung                "cardHandleValid",
49*044afd01SJohn Chung                "moduleHandleValid",
50*044afd01SJohn Chung                "extendedRowBitsValid",
51*044afd01SJohn Chung                "bankGroupValid",
52*044afd01SJohn Chung                "bankAddressValid",
53*044afd01SJohn Chung                "chipIdentificationValid"
54*044afd01SJohn Chung            ],
55079d581eSLawrence Tang            "properties": {
56079d581eSLawrence Tang                "errorStatusValid": {
57079d581eSLawrence Tang                    "type": "boolean"
58079d581eSLawrence Tang                },
59079d581eSLawrence Tang                "physicalAddressValid": {
60079d581eSLawrence Tang                    "type": "boolean"
61079d581eSLawrence Tang                },
62079d581eSLawrence Tang                "physicalAddressMaskValid": {
63079d581eSLawrence Tang                    "type": "boolean"
64079d581eSLawrence Tang                },
65079d581eSLawrence Tang                "nodeValid": {
66079d581eSLawrence Tang                    "type": "boolean"
67079d581eSLawrence Tang                },
68079d581eSLawrence Tang                "cardValid": {
69079d581eSLawrence Tang                    "type": "boolean"
70079d581eSLawrence Tang                },
71079d581eSLawrence Tang                "moduleValid": {
72079d581eSLawrence Tang                    "type": "boolean"
73079d581eSLawrence Tang                },
74079d581eSLawrence Tang                "bankValid": {
75079d581eSLawrence Tang                    "type": "boolean"
76079d581eSLawrence Tang                },
77079d581eSLawrence Tang                "deviceValid": {
78079d581eSLawrence Tang                    "type": "boolean"
79079d581eSLawrence Tang                },
80079d581eSLawrence Tang                "rowValid": {
81079d581eSLawrence Tang                    "type": "boolean"
82079d581eSLawrence Tang                },
834237584eSLawrence Tang                "columnValid": {
844237584eSLawrence Tang                    "type": "boolean"
854237584eSLawrence Tang                },
864237584eSLawrence Tang                "bitPositionValid": {
874237584eSLawrence Tang                    "type": "boolean"
884237584eSLawrence Tang                },
894237584eSLawrence Tang                "platformRequestorIDValid": {
904237584eSLawrence Tang                    "type": "boolean"
914237584eSLawrence Tang                },
924237584eSLawrence Tang                "platformResponderIDValid": {
934237584eSLawrence Tang                    "type": "boolean"
944237584eSLawrence Tang                },
95079d581eSLawrence Tang                "memoryPlatformTargetValid": {
96079d581eSLawrence Tang                    "type": "boolean"
97079d581eSLawrence Tang                },
98079d581eSLawrence Tang                "memoryErrorTypeValid": {
99079d581eSLawrence Tang                    "type": "boolean"
100079d581eSLawrence Tang                },
101079d581eSLawrence Tang                "rankNumberValid": {
102079d581eSLawrence Tang                    "type": "boolean"
103079d581eSLawrence Tang                },
104079d581eSLawrence Tang                "cardHandleValid": {
105079d581eSLawrence Tang                    "type": "boolean"
106079d581eSLawrence Tang                },
107079d581eSLawrence Tang                "moduleHandleValid": {
108079d581eSLawrence Tang                    "type": "boolean"
109079d581eSLawrence Tang                },
110079d581eSLawrence Tang                "extendedRowBitsValid": {
111079d581eSLawrence Tang                    "type": "boolean"
112079d581eSLawrence Tang                },
113079d581eSLawrence Tang                "bankGroupValid": {
114079d581eSLawrence Tang                    "type": "boolean"
115079d581eSLawrence Tang                },
116079d581eSLawrence Tang                "bankAddressValid": {
117079d581eSLawrence Tang                    "type": "boolean"
118079d581eSLawrence Tang                },
119079d581eSLawrence Tang                "chipIdentificationValid": {
120079d581eSLawrence Tang                    "type": "boolean"
121079d581eSLawrence Tang                }
122079d581eSLawrence Tang            }
123079d581eSLawrence Tang        },
124079d581eSLawrence Tang        "errorStatus": {
125079d581eSLawrence Tang            "type": "object",
1268a2d737cSLawrence Tang            "$ref": "./common/cper-json-error-status.json"
127079d581eSLawrence Tang        },
128079d581eSLawrence Tang        "bank": {
129079d581eSLawrence Tang            "type": "object",
130079d581eSLawrence Tang            "oneOf": [
131079d581eSLawrence Tang                {
132079d581eSLawrence Tang                    "type": "object",
133079d581eSLawrence Tang                    "required": ["value"],
134079d581eSLawrence Tang                    "properties": {
135079d581eSLawrence Tang                        "value": {
136079d581eSLawrence Tang                            "type": "integer"
137079d581eSLawrence Tang                        }
138079d581eSLawrence Tang                    }
139079d581eSLawrence Tang                },
140079d581eSLawrence Tang                {
141079d581eSLawrence Tang                    "type": "object",
142079d581eSLawrence Tang                    "required": ["address", "group"],
143079d581eSLawrence Tang                    "properties": {
144079d581eSLawrence Tang                        "address": {
145079d581eSLawrence Tang                            "type": "integer"
146079d581eSLawrence Tang                        },
147079d581eSLawrence Tang                        "group": {
148079d581eSLawrence Tang                            "type": "integer"
149079d581eSLawrence Tang                        }
150079d581eSLawrence Tang                    }
151079d581eSLawrence Tang                }
152079d581eSLawrence Tang            ]
153079d581eSLawrence Tang        },
154079d581eSLawrence Tang        "memoryErrorType": {
155079d581eSLawrence Tang            "type": "object",
1568a2d737cSLawrence Tang            "$ref": "./common/cper-json-nvp.json"
157079d581eSLawrence Tang        },
158079d581eSLawrence Tang        "extended": {
159079d581eSLawrence Tang            "type": "object",
160079d581eSLawrence Tang            "required": ["rowBit16", "rowBit17", "chipIdentification"],
161079d581eSLawrence Tang            "properties": {
162079d581eSLawrence Tang                "rowBit16": {
163079d581eSLawrence Tang                    "type": "boolean"
164079d581eSLawrence Tang                },
165079d581eSLawrence Tang                "rowBit17": {
166079d581eSLawrence Tang                    "type": "boolean"
167079d581eSLawrence Tang                },
168079d581eSLawrence Tang                "chipIdentification": {
169079d581eSLawrence Tang                    "type": "integer"
170079d581eSLawrence Tang                }
171079d581eSLawrence Tang            }
172079d581eSLawrence Tang        },
173079d581eSLawrence Tang        "physicalAddress": {
174079d581eSLawrence Tang            "type": "integer"
175079d581eSLawrence Tang        },
176079d581eSLawrence Tang        "physicalAddressMask": {
177079d581eSLawrence Tang            "type": "integer"
178079d581eSLawrence Tang        },
179079d581eSLawrence Tang        "node": {
180079d581eSLawrence Tang            "type": "integer"
181079d581eSLawrence Tang        },
182079d581eSLawrence Tang        "card": {
183079d581eSLawrence Tang            "type": "integer"
184079d581eSLawrence Tang        },
185079d581eSLawrence Tang        "moduleRank": {
186079d581eSLawrence Tang            "type": "integer"
187079d581eSLawrence Tang        },
188079d581eSLawrence Tang        "device": {
189079d581eSLawrence Tang            "type": "integer"
190079d581eSLawrence Tang        },
191079d581eSLawrence Tang        "row": {
192079d581eSLawrence Tang            "type": "integer"
193079d581eSLawrence Tang        },
194079d581eSLawrence Tang        "column": {
195079d581eSLawrence Tang            "type": "integer"
196079d581eSLawrence Tang        },
197079d581eSLawrence Tang        "bitPosition": {
198079d581eSLawrence Tang            "type": "integer"
199079d581eSLawrence Tang        },
200079d581eSLawrence Tang        "requestorID": {
201079d581eSLawrence Tang            "type": "integer"
202079d581eSLawrence Tang        },
203079d581eSLawrence Tang        "responderID": {
204079d581eSLawrence Tang            "type": "integer"
205079d581eSLawrence Tang        },
206079d581eSLawrence Tang        "targetID": {
207079d581eSLawrence Tang            "type": "integer"
208079d581eSLawrence Tang        },
209079d581eSLawrence Tang        "rankNumber": {
210079d581eSLawrence Tang            "type": "integer"
211079d581eSLawrence Tang        },
212079d581eSLawrence Tang        "cardSmbiosHandle": {
213079d581eSLawrence Tang            "type": "integer"
214079d581eSLawrence Tang        },
215079d581eSLawrence Tang        "moduleSmbiosHandle": {
216079d581eSLawrence Tang            "type": "integer"
217079d581eSLawrence Tang        }
218079d581eSLawrence Tang    }
219079d581eSLawrence Tang}
220