1079d581eSLawrence Tang{ 2079d581eSLawrence Tang "$id": "cper-json-pcie-section", 3079d581eSLawrence Tang "$schema": "https://json-schema.org/draft/2020-12/schema", 4079d581eSLawrence Tang "type": "object", 5079d581eSLawrence Tang "required": ["validationBits", "portType", "version", "commandStatus", "deviceID", "deviceSerialNumber", "bridgeControlStatus", "capabilityStructure", "aerInfo"], 6079d581eSLawrence Tang "additionalProperties": false, 7079d581eSLawrence Tang "properties": { 8079d581eSLawrence Tang "validationBits": { 9079d581eSLawrence Tang "type": "object", 10079d581eSLawrence Tang "required": ["portTypeValid", "versionValid", "commandStatusValid", "deviceIDValid", "deviceSerialNumberValid", "bridgeControlStatusValid", "capabilityStructureStatusValid", "aerInfoValid"], 11079d581eSLawrence Tang "properties": { 12079d581eSLawrence Tang "portTypeValid": { 13079d581eSLawrence Tang "type": "boolean" 14079d581eSLawrence Tang }, 15079d581eSLawrence Tang "versionValid": { 16079d581eSLawrence Tang "type": "boolean" 17079d581eSLawrence Tang }, 18079d581eSLawrence Tang "commandStatusValid": { 19079d581eSLawrence Tang "type": "boolean" 20079d581eSLawrence Tang }, 21079d581eSLawrence Tang "deviceIDValid": { 22079d581eSLawrence Tang "type": "boolean" 23079d581eSLawrence Tang }, 24079d581eSLawrence Tang "deviceSerialNumberValid": { 25079d581eSLawrence Tang "type": "boolean" 26079d581eSLawrence Tang }, 27079d581eSLawrence Tang "bridgeControlStatusValid": { 28079d581eSLawrence Tang "type": "boolean" 29079d581eSLawrence Tang }, 30079d581eSLawrence Tang "capabilityStructureStatusValid": { 31079d581eSLawrence Tang "type": "boolean" 32079d581eSLawrence Tang }, 33079d581eSLawrence Tang "aerInfoValid": { 34079d581eSLawrence Tang "type": "boolean" 35079d581eSLawrence Tang } 36079d581eSLawrence Tang } 37079d581eSLawrence Tang }, 38079d581eSLawrence Tang "portType": { 39079d581eSLawrence Tang "type": "object", 40*8a2d737cSLawrence Tang "$ref": "./common/cper-json-nvp.json" 41079d581eSLawrence Tang }, 42079d581eSLawrence Tang "version": { 43079d581eSLawrence Tang "type": "object", 44079d581eSLawrence Tang "required": ["major", "minor"], 45079d581eSLawrence Tang "properties": { 46079d581eSLawrence Tang "major": { 47079d581eSLawrence Tang "type": "integer" 48079d581eSLawrence Tang }, 49079d581eSLawrence Tang "minor": { 50079d581eSLawrence Tang "type": "integer" 51079d581eSLawrence Tang } 52079d581eSLawrence Tang } 53079d581eSLawrence Tang }, 54079d581eSLawrence Tang "commandStatus": { 55079d581eSLawrence Tang "type": "object", 56079d581eSLawrence Tang "required": ["commandRegister", "statusRegister"], 57079d581eSLawrence Tang "properties": { 58079d581eSLawrence Tang "commandRegister": { 59079d581eSLawrence Tang "type" : "integer" 60079d581eSLawrence Tang }, 61079d581eSLawrence Tang "statusRegister": { 62079d581eSLawrence Tang "type": "integer" 63079d581eSLawrence Tang } 64079d581eSLawrence Tang } 65079d581eSLawrence Tang }, 66079d581eSLawrence Tang "deviceID": { 67079d581eSLawrence Tang "type": "object", 68079d581eSLawrence Tang "required": ["vendorID", "deviceID", "classCode", "functionNumber", "deviceNumber", "segmentNumber", "primaryOrDeviceBusNumber", "secondaryBusNumber", "slotNumber"], 69079d581eSLawrence Tang "properties": { 70079d581eSLawrence Tang "vendorID": { 71079d581eSLawrence Tang "type": "integer" 72079d581eSLawrence Tang }, 73079d581eSLawrence Tang "deviceID": { 74079d581eSLawrence Tang "type": "integer" 75079d581eSLawrence Tang }, 76079d581eSLawrence Tang "classCode": { 77079d581eSLawrence Tang "type": "integer" 78079d581eSLawrence Tang }, 79079d581eSLawrence Tang "functionNumber": { 80079d581eSLawrence Tang "type": "integer" 81079d581eSLawrence Tang }, 82079d581eSLawrence Tang "deviceNumber": { 83079d581eSLawrence Tang "type": "integer" 84079d581eSLawrence Tang }, 85079d581eSLawrence Tang "segmentNumber": { 86079d581eSLawrence Tang "type": "integer" 87079d581eSLawrence Tang }, 88079d581eSLawrence Tang "primaryOrDeviceBusNumber": { 89079d581eSLawrence Tang "type": "integer" 90079d581eSLawrence Tang }, 91079d581eSLawrence Tang "secondaryBusNumber": { 92079d581eSLawrence Tang "type": "integer" 93079d581eSLawrence Tang }, 94079d581eSLawrence Tang "slotNumber": { 95079d581eSLawrence Tang "type": "integer" 96079d581eSLawrence Tang } 97079d581eSLawrence Tang } 98079d581eSLawrence Tang }, 99079d581eSLawrence Tang "deviceSerialNumber": { 100079d581eSLawrence Tang "type": "integer" 101079d581eSLawrence Tang }, 102079d581eSLawrence Tang "bridgeControlStatus": { 103079d581eSLawrence Tang "type": "object", 104079d581eSLawrence Tang "required": ["secondaryStatusRegister", "controlRegister"], 105079d581eSLawrence Tang "properties": { 106079d581eSLawrence Tang "secondaryStatusRegister": { 107079d581eSLawrence Tang "type": "integer" 108079d581eSLawrence Tang }, 109079d581eSLawrence Tang "controlRegister": { 110079d581eSLawrence Tang "type": "integer" 111079d581eSLawrence Tang } 112079d581eSLawrence Tang } 113079d581eSLawrence Tang }, 114079d581eSLawrence Tang "capabilityStructure": { 115079d581eSLawrence Tang "type": "object", 116079d581eSLawrence Tang "required": ["data"], 117079d581eSLawrence Tang "properties": { 118079d581eSLawrence Tang "data": { 119079d581eSLawrence Tang "type": "string" 120079d581eSLawrence Tang } 121079d581eSLawrence Tang } 122079d581eSLawrence Tang }, 123079d581eSLawrence Tang "aerInfo": { 124079d581eSLawrence Tang "type": "object", 125079d581eSLawrence Tang "required": ["capabilityID", "capabilityVersion", "uncorrectableErrorStatusRegister", "uncorrectableErrorMaskRegister", "uncorrectableErrorSeverityRegister", "correctableErrorStatusRegister", "correctableErrorMaskRegister", "aeccReg", "headerLogRegister", "rootErrorCommand", "rootErrorStatus", "errorSourceIDRegister", "correctableErrorSourceIDRegister"], 126079d581eSLawrence Tang "properties": { 127079d581eSLawrence Tang "capabilityID": { 128079d581eSLawrence Tang "type": "integer" 129079d581eSLawrence Tang }, 130079d581eSLawrence Tang "capabilityVersion": { 131079d581eSLawrence Tang "type": "integer" 132079d581eSLawrence Tang }, 133079d581eSLawrence Tang "uncorrectableErrorStatusRegister": { 134079d581eSLawrence Tang "type": "integer" 135079d581eSLawrence Tang }, 136079d581eSLawrence Tang "uncorrectableErrorMaskRegister": { 137079d581eSLawrence Tang "type": "integer" 138079d581eSLawrence Tang }, 139079d581eSLawrence Tang "uncorrectableErrorSeverityRegister": { 140079d581eSLawrence Tang "type": "integer" 141079d581eSLawrence Tang }, 142079d581eSLawrence Tang "correctableErrorStatusRegister": { 143079d581eSLawrence Tang "type": "integer" 144079d581eSLawrence Tang }, 145079d581eSLawrence Tang "correctableErrorMaskRegister": { 146079d581eSLawrence Tang "type": "integer" 147079d581eSLawrence Tang }, 148079d581eSLawrence Tang "aeccReg": { 149079d581eSLawrence Tang "type": "integer" 150079d581eSLawrence Tang }, 151079d581eSLawrence Tang "headerLogRegister": { 152079d581eSLawrence Tang "type": "string" 153079d581eSLawrence Tang }, 154079d581eSLawrence Tang "rootErrorCommand": { 155079d581eSLawrence Tang "type": "integer" 156079d581eSLawrence Tang }, 157079d581eSLawrence Tang "rootErrorStatus": { 158079d581eSLawrence Tang "type": "integer" 159079d581eSLawrence Tang }, 160079d581eSLawrence Tang "errorSourceIDRegister": { 161079d581eSLawrence Tang "type": "integer" 162079d581eSLawrence Tang }, 163079d581eSLawrence Tang "correctableErrorSourceIDRegister": { 164079d581eSLawrence Tang "type": "integer" 165079d581eSLawrence Tang } 166079d581eSLawrence Tang } 167079d581eSLawrence Tang } 168079d581eSLawrence Tang } 169079d581eSLawrence Tang}