blob: 503c065974adf34c65bf20c736f436296560a941 [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",
John Chung044afd02024-05-03 19:58:02 +08004 "required": [
5 "validationBits",
6 "errorStatus",
7 "errorType",
8 "busID",
9 "busAddress",
10 "busData",
11 "busCommandType",
12 "busRequestorID",
13 "busCompleterID",
14 "targetID"
15 ],
Lawrence Tang079d5812022-07-12 14:15:32 +010016 "additionalProperties": false,
17 "properties": {
18 "validationBits": {
19 "type": "object",
Andrew Adrianced9835a12024-12-05 14:41:42 -080020 "description": "Inidicates which fields are valid in the section.",
John Chung044afd02024-05-03 19:58:02 +080021 "required": [
22 "errorStatusValid",
23 "errorTypeValid",
24 "busIDValid",
25 "busAddressValid",
26 "busDataValid",
27 "commandValid",
28 "requestorIDValid",
29 "completerIDValid",
30 "targetIDValid"
31 ],
Lawrence Tang079d5812022-07-12 14:15:32 +010032 "properties": {
33 "errorStatusValid": {
34 "type": "boolean"
35 },
36 "errorTypeValid": {
37 "type": "boolean"
38 },
39 "busIDValid": {
40 "type": "boolean"
41 },
42 "busAddressValid": {
43 "type": "boolean"
44 },
45 "busDataValid": {
46 "type": "boolean"
47 },
48 "commandValid": {
49 "type": "boolean"
50 },
51 "requestorIDValid": {
52 "type": "boolean"
53 },
54 "completerIDValid": {
55 "type": "boolean"
56 },
57 "targetIDValid": {
58 "type": "boolean"
59 }
60 }
61 },
62 "errorStatus": {
63 "type": "object",
Andrew Adrianced9835a12024-12-05 14:41:42 -080064 "description": "PCI Bus Error Status.",
Lawrence Tang8a2d7372022-07-12 16:44:49 +010065 "$ref": "./common/cper-json-error-status.json"
Lawrence Tang079d5812022-07-12 14:15:32 +010066 },
67 "errorType": {
68 "type": "object",
Andrew Adrianced9835a12024-12-05 14:41:42 -080069 "description": "PCI Bus error Type",
Lawrence Tang8a2d7372022-07-12 16:44:49 +010070 "$ref": "./common/cper-json-nvp.json"
Lawrence Tang079d5812022-07-12 14:15:32 +010071 },
72 "busID": {
73 "type": "object",
74 "required": ["busNumber", "segmentNumber"],
75 "properties": {
76 "busNumber": {
Andrew Adrianced9835a12024-12-05 14:41:42 -080077 "type": "integer",
78 "description": "Bus Number"
Lawrence Tang079d5812022-07-12 14:15:32 +010079 },
80 "segmentNumber": {
Andrew Adrianced9835a12024-12-05 14:41:42 -080081 "type": "integer",
82 "description": "Segment Number"
Lawrence Tang079d5812022-07-12 14:15:32 +010083 }
84 }
85 },
86 "busAddress": {
Andrew Adrianced9835a12024-12-05 14:41:42 -080087 "type": "integer",
88 "description": "Memory or I/O address on the bus at the time of the error."
Lawrence Tang079d5812022-07-12 14:15:32 +010089 },
Lawrence Tang42375842022-07-19 16:25:47 +010090 "busData": {
Andrew Adrianced9835a12024-12-05 14:41:42 -080091 "type": "integer",
92 "description": "Data on the PCI bus at the time of the error."
Lawrence Tang42375842022-07-19 16:25:47 +010093 },
Lawrence Tang079d5812022-07-12 14:15:32 +010094 "busCommandType": {
Andrew Adrianced9835a12024-12-05 14:41:42 -080095 "type": "string",
96 "description": "Bus command or operation at the time of the error."
Lawrence Tang079d5812022-07-12 14:15:32 +010097 },
98 "busRequestorID": {
Andrew Adrianced9835a12024-12-05 14:41:42 -080099 "type": "integer",
100 "description": "PCI Bus Requestor Id."
Lawrence Tang079d5812022-07-12 14:15:32 +0100101 },
102 "busCompleterID": {
Andrew Adrianced9835a12024-12-05 14:41:42 -0800103 "type": "integer",
104 "description": "PCI Bus Responder Id."
Lawrence Tang079d5812022-07-12 14:15:32 +0100105 },
106 "targetID": {
Andrew Adrianced9835a12024-12-05 14:41:42 -0800107 "type": "integer",
108 "description": "PCI Bus intended target identifier."
Lawrence Tang079d5812022-07-12 14:15:32 +0100109 }
110 }
John Chung044afd02024-05-03 19:58:02 +0800111}