1079d581eSLawrence Tang{ 2079d581eSLawrence Tang "$id": "cper-json-pcie-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 "portType", 8*044afd01SJohn Chung "version", 9*044afd01SJohn Chung "commandStatus", 10*044afd01SJohn Chung "deviceID", 11*044afd01SJohn Chung "deviceSerialNumber", 12*044afd01SJohn Chung "bridgeControlStatus", 13*044afd01SJohn Chung "capabilityStructure", 14*044afd01SJohn Chung "aerInfo" 15*044afd01SJohn Chung ], 16079d581eSLawrence Tang "additionalProperties": false, 17079d581eSLawrence Tang "properties": { 18079d581eSLawrence Tang "validationBits": { 19079d581eSLawrence Tang "type": "object", 20*044afd01SJohn Chung "required": [ 21*044afd01SJohn Chung "portTypeValid", 22*044afd01SJohn Chung "versionValid", 23*044afd01SJohn Chung "commandStatusValid", 24*044afd01SJohn Chung "deviceIDValid", 25*044afd01SJohn Chung "deviceSerialNumberValid", 26*044afd01SJohn Chung "bridgeControlStatusValid", 27*044afd01SJohn Chung "capabilityStructureStatusValid", 28*044afd01SJohn Chung "aerInfoValid" 29*044afd01SJohn Chung ], 30079d581eSLawrence Tang "properties": { 31079d581eSLawrence Tang "portTypeValid": { 32079d581eSLawrence Tang "type": "boolean" 33079d581eSLawrence Tang }, 34079d581eSLawrence Tang "versionValid": { 35079d581eSLawrence Tang "type": "boolean" 36079d581eSLawrence Tang }, 37079d581eSLawrence Tang "commandStatusValid": { 38079d581eSLawrence Tang "type": "boolean" 39079d581eSLawrence Tang }, 40079d581eSLawrence Tang "deviceIDValid": { 41079d581eSLawrence Tang "type": "boolean" 42079d581eSLawrence Tang }, 43079d581eSLawrence Tang "deviceSerialNumberValid": { 44079d581eSLawrence Tang "type": "boolean" 45079d581eSLawrence Tang }, 46079d581eSLawrence Tang "bridgeControlStatusValid": { 47079d581eSLawrence Tang "type": "boolean" 48079d581eSLawrence Tang }, 49079d581eSLawrence Tang "capabilityStructureStatusValid": { 50079d581eSLawrence Tang "type": "boolean" 51079d581eSLawrence Tang }, 52079d581eSLawrence Tang "aerInfoValid": { 53079d581eSLawrence Tang "type": "boolean" 54079d581eSLawrence Tang } 55079d581eSLawrence Tang } 56079d581eSLawrence Tang }, 57079d581eSLawrence Tang "portType": { 58079d581eSLawrence Tang "type": "object", 598a2d737cSLawrence Tang "$ref": "./common/cper-json-nvp.json" 60079d581eSLawrence Tang }, 61079d581eSLawrence Tang "version": { 62079d581eSLawrence Tang "type": "object", 63079d581eSLawrence Tang "required": ["major", "minor"], 64079d581eSLawrence Tang "properties": { 65079d581eSLawrence Tang "major": { 66079d581eSLawrence Tang "type": "integer" 67079d581eSLawrence Tang }, 68079d581eSLawrence Tang "minor": { 69079d581eSLawrence Tang "type": "integer" 70079d581eSLawrence Tang } 71079d581eSLawrence Tang } 72079d581eSLawrence Tang }, 73079d581eSLawrence Tang "commandStatus": { 74079d581eSLawrence Tang "type": "object", 75079d581eSLawrence Tang "required": ["commandRegister", "statusRegister"], 76079d581eSLawrence Tang "properties": { 77079d581eSLawrence Tang "commandRegister": { 78079d581eSLawrence Tang "type": "integer" 79079d581eSLawrence Tang }, 80079d581eSLawrence Tang "statusRegister": { 81079d581eSLawrence Tang "type": "integer" 82079d581eSLawrence Tang } 83079d581eSLawrence Tang } 84079d581eSLawrence Tang }, 85079d581eSLawrence Tang "deviceID": { 86079d581eSLawrence Tang "type": "object", 87*044afd01SJohn Chung "required": [ 88*044afd01SJohn Chung "vendorID", 89*044afd01SJohn Chung "deviceID", 90*044afd01SJohn Chung "classCode", 91*044afd01SJohn Chung "functionNumber", 92*044afd01SJohn Chung "deviceNumber", 93*044afd01SJohn Chung "segmentNumber", 94*044afd01SJohn Chung "primaryOrDeviceBusNumber", 95*044afd01SJohn Chung "secondaryBusNumber", 96*044afd01SJohn Chung "slotNumber" 97*044afd01SJohn Chung ], 98079d581eSLawrence Tang "properties": { 99079d581eSLawrence Tang "vendorID": { 100079d581eSLawrence Tang "type": "integer" 101079d581eSLawrence Tang }, 102079d581eSLawrence Tang "deviceID": { 103079d581eSLawrence Tang "type": "integer" 104079d581eSLawrence Tang }, 105079d581eSLawrence Tang "classCode": { 106079d581eSLawrence Tang "type": "integer" 107079d581eSLawrence Tang }, 108079d581eSLawrence Tang "functionNumber": { 109079d581eSLawrence Tang "type": "integer" 110079d581eSLawrence Tang }, 111079d581eSLawrence Tang "deviceNumber": { 112079d581eSLawrence Tang "type": "integer" 113079d581eSLawrence Tang }, 114079d581eSLawrence Tang "segmentNumber": { 115079d581eSLawrence Tang "type": "integer" 116079d581eSLawrence Tang }, 117079d581eSLawrence Tang "primaryOrDeviceBusNumber": { 118079d581eSLawrence Tang "type": "integer" 119079d581eSLawrence Tang }, 120079d581eSLawrence Tang "secondaryBusNumber": { 121079d581eSLawrence Tang "type": "integer" 122079d581eSLawrence Tang }, 123079d581eSLawrence Tang "slotNumber": { 124079d581eSLawrence Tang "type": "integer" 125079d581eSLawrence Tang } 126079d581eSLawrence Tang } 127079d581eSLawrence Tang }, 128079d581eSLawrence Tang "deviceSerialNumber": { 129079d581eSLawrence Tang "type": "integer" 130079d581eSLawrence Tang }, 131079d581eSLawrence Tang "bridgeControlStatus": { 132079d581eSLawrence Tang "type": "object", 133079d581eSLawrence Tang "required": ["secondaryStatusRegister", "controlRegister"], 134079d581eSLawrence Tang "properties": { 135079d581eSLawrence Tang "secondaryStatusRegister": { 136079d581eSLawrence Tang "type": "integer" 137079d581eSLawrence Tang }, 138079d581eSLawrence Tang "controlRegister": { 139079d581eSLawrence Tang "type": "integer" 140079d581eSLawrence Tang } 141079d581eSLawrence Tang } 142079d581eSLawrence Tang }, 143079d581eSLawrence Tang "capabilityStructure": { 144079d581eSLawrence Tang "type": "object", 145079d581eSLawrence Tang "required": ["data"], 146079d581eSLawrence Tang "properties": { 147079d581eSLawrence Tang "data": { 148079d581eSLawrence Tang "type": "string" 149079d581eSLawrence Tang } 150079d581eSLawrence Tang } 151079d581eSLawrence Tang }, 152079d581eSLawrence Tang "aerInfo": { 153079d581eSLawrence Tang "type": "object", 1543ab351feSLawrence Tang "required": ["data"], 155079d581eSLawrence Tang "properties": { 1563ab351feSLawrence Tang "data": { 157079d581eSLawrence Tang "type": "string" 158079d581eSLawrence Tang } 159079d581eSLawrence Tang } 160079d581eSLawrence Tang } 161079d581eSLawrence Tang } 162079d581eSLawrence Tang} 163