Lawrence Tang | 079d581 | 2022-07-12 14:15:32 +0100 | [diff] [blame] | 1 | { |
Lawrence Tang | 079d581 | 2022-07-12 14:15:32 +0100 | [diff] [blame] | 2 | "$schema": "https://json-schema.org/draft/2020-12/schema", |
| 3 | "type": "object", |
Andrew Adriance | d9835a1 | 2024-12-05 14:41:42 -0800 | [diff] [blame^] | 4 | "description": "Compute Express Link (CXL) Protocol Error Section", |
John Chung | 044afd0 | 2024-05-03 19:58:02 +0800 | [diff] [blame] | 5 | "required": [ |
| 6 | "validationBits", |
| 7 | "agentType", |
| 8 | "cxlAgentAddress", |
| 9 | "deviceID", |
| 10 | "dvsecLength", |
| 11 | "errorLogLength", |
| 12 | "cxlDVSEC", |
| 13 | "cxlErrorLog" |
| 14 | ], |
Lawrence Tang | 079d581 | 2022-07-12 14:15:32 +0100 | [diff] [blame] | 15 | "additionalProperties": false, |
| 16 | "properties": { |
| 17 | "validationBits": { |
| 18 | "type": "object", |
Andrew Adriance | d9835a1 | 2024-12-05 14:41:42 -0800 | [diff] [blame^] | 19 | "description": "Indiciates what fields in the section are valid", |
John Chung | 044afd0 | 2024-05-03 19:58:02 +0800 | [diff] [blame] | 20 | "required": [ |
| 21 | "cxlAgentTypeValid", |
| 22 | "cxlAgentAddressValid", |
| 23 | "deviceIDValid", |
| 24 | "deviceSerialValid", |
| 25 | "capabilityStructureValid", |
| 26 | "cxlDVSECValid", |
| 27 | "cxlErrorLogValid" |
| 28 | ], |
Lawrence Tang | 079d581 | 2022-07-12 14:15:32 +0100 | [diff] [blame] | 29 | "properties": { |
| 30 | "cxlAgentTypeValid": { |
| 31 | "type": "boolean" |
| 32 | }, |
| 33 | "cxlAgentAddressValid": { |
| 34 | "type": "boolean" |
| 35 | }, |
| 36 | "deviceIDValid": { |
| 37 | "type": "boolean" |
| 38 | }, |
| 39 | "deviceSerialValid": { |
| 40 | "type": "boolean" |
| 41 | }, |
| 42 | "capabilityStructureValid": { |
| 43 | "type": "boolean" |
| 44 | }, |
| 45 | "cxlDVSECValid": { |
| 46 | "type": "boolean" |
| 47 | }, |
| 48 | "cxlErrorLogValid": { |
| 49 | "type": "boolean" |
| 50 | } |
| 51 | } |
| 52 | }, |
| 53 | "agentType": { |
| 54 | "type": "object", |
Andrew Adriance | d9835a1 | 2024-12-05 14:41:42 -0800 | [diff] [blame^] | 55 | "description": "CXL Agent Type", |
Lawrence Tang | 8a2d737 | 2022-07-12 16:44:49 +0100 | [diff] [blame] | 56 | "$ref": "./common/cper-json-nvp.json" |
Lawrence Tang | 079d581 | 2022-07-12 14:15:32 +0100 | [diff] [blame] | 57 | }, |
Lawrence Tang | 4237584 | 2022-07-19 16:25:47 +0100 | [diff] [blame] | 58 | "cxlAgentAddress": { |
Lawrence Tang | 079d581 | 2022-07-12 14:15:32 +0100 | [diff] [blame] | 59 | "type": "object", |
Andrew Adriance | d9835a1 | 2024-12-05 14:41:42 -0800 | [diff] [blame^] | 60 | "description": "CXL Agent depedent address to uniquely identify the component", |
Lawrence Tang | 079d581 | 2022-07-12 14:15:32 +0100 | [diff] [blame] | 61 | "oneOf": [ |
| 62 | { |
Aushim Nagarkatti | 382ad4c | 2024-09-19 13:39:04 -0700 | [diff] [blame] | 63 | "$id": "cper-json-cxlagentaddress0", |
Lawrence Tang | 079d581 | 2022-07-12 14:15:32 +0100 | [diff] [blame] | 64 | "type": "object", |
John Chung | 044afd0 | 2024-05-03 19:58:02 +0800 | [diff] [blame] | 65 | "required": [ |
| 66 | "functionNumber", |
| 67 | "deviceNumber", |
| 68 | "busNumber", |
| 69 | "segmentNumber" |
| 70 | ], |
Lawrence Tang | 079d581 | 2022-07-12 14:15:32 +0100 | [diff] [blame] | 71 | "properties": { |
John Chung | 044afd0 | 2024-05-03 19:58:02 +0800 | [diff] [blame] | 72 | "functionNumber": { |
Lawrence Tang | 079d581 | 2022-07-12 14:15:32 +0100 | [diff] [blame] | 73 | "type": "integer" |
| 74 | }, |
John Chung | 044afd0 | 2024-05-03 19:58:02 +0800 | [diff] [blame] | 75 | "deviceNumber": { |
Lawrence Tang | 079d581 | 2022-07-12 14:15:32 +0100 | [diff] [blame] | 76 | "type": "integer" |
| 77 | }, |
John Chung | 044afd0 | 2024-05-03 19:58:02 +0800 | [diff] [blame] | 78 | "busNumber": { |
Lawrence Tang | 079d581 | 2022-07-12 14:15:32 +0100 | [diff] [blame] | 79 | "type": "integer" |
| 80 | }, |
John Chung | 044afd0 | 2024-05-03 19:58:02 +0800 | [diff] [blame] | 81 | "segmentNumber": { |
Lawrence Tang | 079d581 | 2022-07-12 14:15:32 +0100 | [diff] [blame] | 82 | "type": "integer" |
| 83 | } |
| 84 | } |
| 85 | }, |
| 86 | { |
Aushim Nagarkatti | 382ad4c | 2024-09-19 13:39:04 -0700 | [diff] [blame] | 87 | "$id": "cper-json-cxlagentaddress1", |
Lawrence Tang | 079d581 | 2022-07-12 14:15:32 +0100 | [diff] [blame] | 88 | "type": "object", |
| 89 | "required": ["value"], |
| 90 | "properties": { |
| 91 | "value": { |
| 92 | "type": "integer" |
| 93 | } |
| 94 | } |
| 95 | } |
| 96 | ] |
| 97 | }, |
Lawrence Tang | 4237584 | 2022-07-19 16:25:47 +0100 | [diff] [blame] | 98 | "deviceID": { |
| 99 | "type": "object", |
Andrew Adriance | d9835a1 | 2024-12-05 14:41:42 -0800 | [diff] [blame^] | 100 | "description": "Provides devices specific identifies.", |
John Chung | 044afd0 | 2024-05-03 19:58:02 +0800 | [diff] [blame] | 101 | "required": [ |
| 102 | "vendorID", |
| 103 | "deviceID", |
| 104 | "subsystemVendorID", |
| 105 | "subsystemDeviceID", |
| 106 | "classCode", |
| 107 | "slotNumber" |
| 108 | ], |
Lawrence Tang | 4237584 | 2022-07-19 16:25:47 +0100 | [diff] [blame] | 109 | "properties": { |
John Chung | 044afd0 | 2024-05-03 19:58:02 +0800 | [diff] [blame] | 110 | "vendorID": { |
Lawrence Tang | 4237584 | 2022-07-19 16:25:47 +0100 | [diff] [blame] | 111 | "type": "integer" |
| 112 | }, |
John Chung | 044afd0 | 2024-05-03 19:58:02 +0800 | [diff] [blame] | 113 | "deviceID": { |
Lawrence Tang | 4237584 | 2022-07-19 16:25:47 +0100 | [diff] [blame] | 114 | "type": "integer" |
| 115 | }, |
John Chung | 044afd0 | 2024-05-03 19:58:02 +0800 | [diff] [blame] | 116 | "subsystemVendorID": { |
Lawrence Tang | 4237584 | 2022-07-19 16:25:47 +0100 | [diff] [blame] | 117 | "type": "integer" |
| 118 | }, |
John Chung | 044afd0 | 2024-05-03 19:58:02 +0800 | [diff] [blame] | 119 | "subsystemDeviceID": { |
Lawrence Tang | 4237584 | 2022-07-19 16:25:47 +0100 | [diff] [blame] | 120 | "type": "integer" |
| 121 | }, |
John Chung | 044afd0 | 2024-05-03 19:58:02 +0800 | [diff] [blame] | 122 | "classCode": { |
Lawrence Tang | 4237584 | 2022-07-19 16:25:47 +0100 | [diff] [blame] | 123 | "type": "integer" |
| 124 | }, |
John Chung | 044afd0 | 2024-05-03 19:58:02 +0800 | [diff] [blame] | 125 | "slotNumber": { |
Lawrence Tang | 4237584 | 2022-07-19 16:25:47 +0100 | [diff] [blame] | 126 | "type": "integer" |
| 127 | } |
| 128 | } |
| 129 | }, |
John Chung | 044afd0 | 2024-05-03 19:58:02 +0800 | [diff] [blame] | 130 | "deviceSerial": { |
Andrew Adriance | d9835a1 | 2024-12-05 14:41:42 -0800 | [diff] [blame^] | 131 | "type": "integer", |
| 132 | "description": "CXL Agent device serial number" |
Lawrence Tang | 079d581 | 2022-07-12 14:15:32 +0100 | [diff] [blame] | 133 | }, |
| 134 | "capabilityStructure": { |
Andrew Adriance | d9835a1 | 2024-12-05 14:41:42 -0800 | [diff] [blame^] | 135 | "type": "string", |
| 136 | "description": "The PCIe Capability Structure of the agent" |
Lawrence Tang | 079d581 | 2022-07-12 14:15:32 +0100 | [diff] [blame] | 137 | }, |
John Chung | 044afd0 | 2024-05-03 19:58:02 +0800 | [diff] [blame] | 138 | "dvsecLength": { |
Andrew Adriance | d9835a1 | 2024-12-05 14:41:42 -0800 | [diff] [blame^] | 139 | "type": "integer", |
| 140 | "description": "The length in bytes of the CXL DVSEC field" |
Lawrence Tang | 079d581 | 2022-07-12 14:15:32 +0100 | [diff] [blame] | 141 | }, |
John Chung | 044afd0 | 2024-05-03 19:58:02 +0800 | [diff] [blame] | 142 | "errorLogLength": { |
Andrew Adriance | d9835a1 | 2024-12-05 14:41:42 -0800 | [diff] [blame^] | 143 | "type": "integer", |
| 144 | "description": "The length in bytes of the CXL Error Log field" |
Lawrence Tang | 079d581 | 2022-07-12 14:15:32 +0100 | [diff] [blame] | 145 | }, |
John Chung | 044afd0 | 2024-05-03 19:58:02 +0800 | [diff] [blame] | 146 | "cxlDVSEC": { |
Andrew Adriance | d9835a1 | 2024-12-05 14:41:42 -0800 | [diff] [blame^] | 147 | "type": "string", |
| 148 | "description": "Contains the DVSEC structure as defined in the CXL specification" |
Lawrence Tang | 079d581 | 2022-07-12 14:15:32 +0100 | [diff] [blame] | 149 | }, |
John Chung | 044afd0 | 2024-05-03 19:58:02 +0800 | [diff] [blame] | 150 | "cxlErrorLog": { |
Andrew Adriance | d9835a1 | 2024-12-05 14:41:42 -0800 | [diff] [blame^] | 151 | "type": "string", |
| 152 | "description": "This field contains a copy of the “CXL RAS Capability Structure”, as defined in the CXL Specification." |
Lawrence Tang | 079d581 | 2022-07-12 14:15:32 +0100 | [diff] [blame] | 153 | } |
| 154 | } |
John Chung | 044afd0 | 2024-05-03 19:58:02 +0800 | [diff] [blame] | 155 | } |