1079d581eSLawrence Tang{
2079d581eSLawrence Tang    "$id": "cper-json-generic-processor-section",
3079d581eSLawrence Tang    "$schema": "https://json-schema.org/draft/2020-12/schema",
4079d581eSLawrence Tang    "type": "object",
5079d581eSLawrence Tang    "required": ["validationBits", "processorType", "processorISA", "errorType", "operation", "flags", "level", "cpuVersionInfo", "cpuBrandString", "processorID", "targetAddress", "requestorID", "responderID", "instructionIP"],
6079d581eSLawrence Tang    "additionalProperties": false,
7079d581eSLawrence Tang    "properties": {
8079d581eSLawrence Tang        "validationBits": {
9079d581eSLawrence Tang            "type": "object",
10079d581eSLawrence Tang            "required": ["processorTypeValid", "processorISAValid", "errorTypeValid", "operationValid", "flagsValid", "levelValid", "cpuVersionValid", "cpuBrandInfoValid", "cpuIDValid", "targetAddressValid", "requestorIDValid", "responderIDValid", "instructionIPValid"],
11079d581eSLawrence Tang            "properties": {
12079d581eSLawrence Tang                "processorTypeValid": {
13079d581eSLawrence Tang                    "type": "boolean"
14079d581eSLawrence Tang                },
15079d581eSLawrence Tang                "processorISAValid": {
16079d581eSLawrence Tang                    "type": "boolean"
17079d581eSLawrence Tang                },
18079d581eSLawrence Tang                "errorTypeValid": {
19079d581eSLawrence Tang                    "type": "boolean"
20079d581eSLawrence Tang                },
21079d581eSLawrence Tang                "operationValid": {
22079d581eSLawrence Tang                    "type": "boolean"
23079d581eSLawrence Tang                },
24079d581eSLawrence Tang                "flagsValid": {
25079d581eSLawrence Tang                    "type": "boolean"
26079d581eSLawrence Tang                },
27079d581eSLawrence Tang                "levelValid": {
28079d581eSLawrence Tang                    "type": "boolean"
29079d581eSLawrence Tang                },
30079d581eSLawrence Tang                "cpuVersionValid": {
31079d581eSLawrence Tang                    "type": "boolean"
32079d581eSLawrence Tang                },
33079d581eSLawrence Tang                "cpuBrandInfoValid": {
34079d581eSLawrence Tang                    "type": "boolean"
35079d581eSLawrence Tang                },
36079d581eSLawrence Tang                "cpuIDValid": {
37079d581eSLawrence Tang                    "type": "boolean"
38079d581eSLawrence Tang                },
39079d581eSLawrence Tang                "targetAddressValid": {
40079d581eSLawrence Tang                    "type": "boolean"
41079d581eSLawrence Tang                },
42079d581eSLawrence Tang                "requestorIDValid": {
43079d581eSLawrence Tang                    "type": "boolean"
44079d581eSLawrence Tang                },
45079d581eSLawrence Tang                "responderIDValid": {
46079d581eSLawrence Tang                    "type": "boolean"
47079d581eSLawrence Tang                },
48079d581eSLawrence Tang                "instructionIPValid": {
49079d581eSLawrence Tang                    "type": "boolean"
50079d581eSLawrence Tang                }
51079d581eSLawrence Tang            }
52079d581eSLawrence Tang        },
53079d581eSLawrence Tang        "processorType": {
54079d581eSLawrence Tang            "type": "object",
55*8a2d737cSLawrence Tang            "$ref": "./common/cper-json-nvp.json"
56079d581eSLawrence Tang        },
57079d581eSLawrence Tang        "processorISA": {
58079d581eSLawrence Tang            "type": "object",
59*8a2d737cSLawrence Tang            "$ref": "./common/cper-json-nvp.json"
60079d581eSLawrence Tang        },
61079d581eSLawrence Tang        "errorType": {
62079d581eSLawrence Tang            "type": "object",
63*8a2d737cSLawrence Tang            "$ref": "./common/cper-json-nvp.json"
64079d581eSLawrence Tang        },
65079d581eSLawrence Tang        "operation": {
66079d581eSLawrence Tang            "type": "object",
67*8a2d737cSLawrence Tang            "$ref": "./common/cper-json-nvp.json"
68079d581eSLawrence Tang        },
69079d581eSLawrence Tang        "flags": {
70079d581eSLawrence Tang            "type": "object",
71079d581eSLawrence Tang            "required": ["restartableIP", "preciseIP", "overflow", "corrected"],
72079d581eSLawrence Tang            "properties": {
73079d581eSLawrence Tang                "restartableIP": {
74079d581eSLawrence Tang                    "type": "boolean"
75079d581eSLawrence Tang                },
76079d581eSLawrence Tang                "preciseIP": {
77079d581eSLawrence Tang                    "type": "boolean"
78079d581eSLawrence Tang                },
79079d581eSLawrence Tang                "overflow": {
80079d581eSLawrence Tang                    "type": "boolean"
81079d581eSLawrence Tang                },
82079d581eSLawrence Tang                "corrected": {
83079d581eSLawrence Tang                    "type": "boolean"
84079d581eSLawrence Tang                }
85079d581eSLawrence Tang            }
86079d581eSLawrence Tang        },
87079d581eSLawrence Tang        "level": {
88079d581eSLawrence Tang            "type": "integer"
89079d581eSLawrence Tang        },
90079d581eSLawrence Tang        "cpuVersionInfo": {
91079d581eSLawrence Tang            "type": "integer"
92079d581eSLawrence Tang        },
93079d581eSLawrence Tang        "cpuBrandString": {
94079d581eSLawrence Tang            "type": "string"
95079d581eSLawrence Tang        },
96079d581eSLawrence Tang        "processorID": {
97079d581eSLawrence Tang            "type": "integer"
98079d581eSLawrence Tang        },
99079d581eSLawrence Tang        "targetAddress": {
100079d581eSLawrence Tang            "type": "integer"
101079d581eSLawrence Tang        },
102079d581eSLawrence Tang        "requestorID": {
103079d581eSLawrence Tang            "type": "integer"
104079d581eSLawrence Tang        },
105079d581eSLawrence Tang        "responderID": {
106079d581eSLawrence Tang            "type": "integer"
107079d581eSLawrence Tang        },
108079d581eSLawrence Tang        "instructionIP": {
109079d581eSLawrence Tang            "type": "integer"
110079d581eSLawrence Tang        }
111079d581eSLawrence Tang    }
112079d581eSLawrence Tang}