1*f2a8e57eSGunnar Mills{ 2*f2a8e57eSGunnar Mills "$id": "http://redfish.dmtf.org/schemas/v1/PCIeFunction.v1_6_0.json", 3*f2a8e57eSGunnar Mills "$ref": "#/definitions/PCIeFunction", 4*f2a8e57eSGunnar Mills "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json", 5*f2a8e57eSGunnar Mills "copyright": "Copyright 2014-2024 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright", 6*f2a8e57eSGunnar Mills "definitions": { 7*f2a8e57eSGunnar Mills "Actions": { 8*f2a8e57eSGunnar Mills "additionalProperties": false, 9*f2a8e57eSGunnar Mills "description": "The available actions for this resource.", 10*f2a8e57eSGunnar Mills "longDescription": "This type shall contain the available actions for this resource.", 11*f2a8e57eSGunnar Mills "patternProperties": { 12*f2a8e57eSGunnar Mills "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": { 13*f2a8e57eSGunnar Mills "description": "This property shall specify a valid odata or Redfish property.", 14*f2a8e57eSGunnar Mills "type": [ 15*f2a8e57eSGunnar Mills "array", 16*f2a8e57eSGunnar Mills "boolean", 17*f2a8e57eSGunnar Mills "integer", 18*f2a8e57eSGunnar Mills "number", 19*f2a8e57eSGunnar Mills "null", 20*f2a8e57eSGunnar Mills "object", 21*f2a8e57eSGunnar Mills "string" 22*f2a8e57eSGunnar Mills ] 23*f2a8e57eSGunnar Mills } 24*f2a8e57eSGunnar Mills }, 25*f2a8e57eSGunnar Mills "properties": { 26*f2a8e57eSGunnar Mills "Oem": { 27*f2a8e57eSGunnar Mills "$ref": "#/definitions/OemActions", 28*f2a8e57eSGunnar Mills "description": "The available OEM-specific actions for this resource.", 29*f2a8e57eSGunnar Mills "longDescription": "This property shall contain the available OEM-specific actions for this resource.", 30*f2a8e57eSGunnar Mills "versionAdded": "v1_1_0" 31*f2a8e57eSGunnar Mills } 32*f2a8e57eSGunnar Mills }, 33*f2a8e57eSGunnar Mills "type": "object" 34*f2a8e57eSGunnar Mills }, 35*f2a8e57eSGunnar Mills "DeviceClass": { 36*f2a8e57eSGunnar Mills "enum": [ 37*f2a8e57eSGunnar Mills "UnclassifiedDevice", 38*f2a8e57eSGunnar Mills "MassStorageController", 39*f2a8e57eSGunnar Mills "NetworkController", 40*f2a8e57eSGunnar Mills "DisplayController", 41*f2a8e57eSGunnar Mills "MultimediaController", 42*f2a8e57eSGunnar Mills "MemoryController", 43*f2a8e57eSGunnar Mills "Bridge", 44*f2a8e57eSGunnar Mills "CommunicationController", 45*f2a8e57eSGunnar Mills "GenericSystemPeripheral", 46*f2a8e57eSGunnar Mills "InputDeviceController", 47*f2a8e57eSGunnar Mills "DockingStation", 48*f2a8e57eSGunnar Mills "Processor", 49*f2a8e57eSGunnar Mills "SerialBusController", 50*f2a8e57eSGunnar Mills "WirelessController", 51*f2a8e57eSGunnar Mills "IntelligentController", 52*f2a8e57eSGunnar Mills "SatelliteCommunicationsController", 53*f2a8e57eSGunnar Mills "EncryptionController", 54*f2a8e57eSGunnar Mills "SignalProcessingController", 55*f2a8e57eSGunnar Mills "ProcessingAccelerators", 56*f2a8e57eSGunnar Mills "NonEssentialInstrumentation", 57*f2a8e57eSGunnar Mills "Coprocessor", 58*f2a8e57eSGunnar Mills "UnassignedClass", 59*f2a8e57eSGunnar Mills "Other" 60*f2a8e57eSGunnar Mills ], 61*f2a8e57eSGunnar Mills "enumDescriptions": { 62*f2a8e57eSGunnar Mills "Bridge": "A bridge.", 63*f2a8e57eSGunnar Mills "CommunicationController": "A communication controller.", 64*f2a8e57eSGunnar Mills "Coprocessor": "A coprocessor.", 65*f2a8e57eSGunnar Mills "DisplayController": "A display controller.", 66*f2a8e57eSGunnar Mills "DockingStation": "A docking station.", 67*f2a8e57eSGunnar Mills "EncryptionController": "An encryption controller.", 68*f2a8e57eSGunnar Mills "GenericSystemPeripheral": "A generic system peripheral.", 69*f2a8e57eSGunnar Mills "InputDeviceController": "An input device controller.", 70*f2a8e57eSGunnar Mills "IntelligentController": "An intelligent controller.", 71*f2a8e57eSGunnar Mills "MassStorageController": "A mass storage controller.", 72*f2a8e57eSGunnar Mills "MemoryController": "A memory controller.", 73*f2a8e57eSGunnar Mills "MultimediaController": "A multimedia controller.", 74*f2a8e57eSGunnar Mills "NetworkController": "A network controller.", 75*f2a8e57eSGunnar Mills "NonEssentialInstrumentation": "A non-essential instrumentation.", 76*f2a8e57eSGunnar Mills "Other": "Other class. The function Class Code needs to be verified.", 77*f2a8e57eSGunnar Mills "ProcessingAccelerators": "A processing accelerators.", 78*f2a8e57eSGunnar Mills "Processor": "A processor.", 79*f2a8e57eSGunnar Mills "SatelliteCommunicationsController": "A satellite communications controller.", 80*f2a8e57eSGunnar Mills "SerialBusController": "A serial bus controller.", 81*f2a8e57eSGunnar Mills "SignalProcessingController": "A signal processing controller.", 82*f2a8e57eSGunnar Mills "UnassignedClass": "An unassigned class.", 83*f2a8e57eSGunnar Mills "UnclassifiedDevice": "An unclassified device.", 84*f2a8e57eSGunnar Mills "WirelessController": "A wireless controller." 85*f2a8e57eSGunnar Mills }, 86*f2a8e57eSGunnar Mills "type": "string" 87*f2a8e57eSGunnar Mills }, 88*f2a8e57eSGunnar Mills "FunctionProtocol": { 89*f2a8e57eSGunnar Mills "enum": [ 90*f2a8e57eSGunnar Mills "PCIe", 91*f2a8e57eSGunnar Mills "CXL" 92*f2a8e57eSGunnar Mills ], 93*f2a8e57eSGunnar Mills "enumDescriptions": { 94*f2a8e57eSGunnar Mills "CXL": "A PCIe function supporting CXL extensions.", 95*f2a8e57eSGunnar Mills "PCIe": "A standard PCIe function." 96*f2a8e57eSGunnar Mills }, 97*f2a8e57eSGunnar Mills "type": "string" 98*f2a8e57eSGunnar Mills }, 99*f2a8e57eSGunnar Mills "FunctionType": { 100*f2a8e57eSGunnar Mills "enum": [ 101*f2a8e57eSGunnar Mills "Physical", 102*f2a8e57eSGunnar Mills "Virtual" 103*f2a8e57eSGunnar Mills ], 104*f2a8e57eSGunnar Mills "enumDescriptions": { 105*f2a8e57eSGunnar Mills "Physical": "A physical PCIe function.", 106*f2a8e57eSGunnar Mills "Virtual": "A virtual PCIe function." 107*f2a8e57eSGunnar Mills }, 108*f2a8e57eSGunnar Mills "type": "string" 109*f2a8e57eSGunnar Mills }, 110*f2a8e57eSGunnar Mills "Links": { 111*f2a8e57eSGunnar Mills "additionalProperties": false, 112*f2a8e57eSGunnar Mills "description": "The links to other resources that are related to this resource.", 113*f2a8e57eSGunnar Mills "longDescription": "This Redfish Specification-described type shall contain links to resources that are related to but are not contained by, or subordinate to, this resource.", 114*f2a8e57eSGunnar Mills "patternProperties": { 115*f2a8e57eSGunnar Mills "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": { 116*f2a8e57eSGunnar Mills "description": "This property shall specify a valid odata or Redfish property.", 117*f2a8e57eSGunnar Mills "type": [ 118*f2a8e57eSGunnar Mills "array", 119*f2a8e57eSGunnar Mills "boolean", 120*f2a8e57eSGunnar Mills "integer", 121*f2a8e57eSGunnar Mills "number", 122*f2a8e57eSGunnar Mills "null", 123*f2a8e57eSGunnar Mills "object", 124*f2a8e57eSGunnar Mills "string" 125*f2a8e57eSGunnar Mills ] 126*f2a8e57eSGunnar Mills } 127*f2a8e57eSGunnar Mills }, 128*f2a8e57eSGunnar Mills "properties": { 129*f2a8e57eSGunnar Mills "CXLLogicalDevice": { 130*f2a8e57eSGunnar Mills "anyOf": [ 131*f2a8e57eSGunnar Mills { 132*f2a8e57eSGunnar Mills "$ref": "http://redfish.dmtf.org/schemas/v1/CXLLogicalDevice.json#/definitions/CXLLogicalDevice" 133*f2a8e57eSGunnar Mills }, 134*f2a8e57eSGunnar Mills { 135*f2a8e57eSGunnar Mills "type": "null" 136*f2a8e57eSGunnar Mills } 137*f2a8e57eSGunnar Mills ], 138*f2a8e57eSGunnar Mills "description": "The link to the CXL logical device to which this function is assigned.", 139*f2a8e57eSGunnar Mills "longDescription": "This property shall contain a link to a resource of type `CXLLogicalDevice` that represents the CXL logical device to which this PCIe function is assigned.", 140*f2a8e57eSGunnar Mills "readonly": true, 141*f2a8e57eSGunnar Mills "versionAdded": "v1_5_0" 142*f2a8e57eSGunnar Mills }, 143*f2a8e57eSGunnar Mills "Drives": { 144*f2a8e57eSGunnar Mills "description": "An array of links to the drives that this PCIe function produces.", 145*f2a8e57eSGunnar Mills "items": { 146*f2a8e57eSGunnar Mills "$ref": "http://redfish.dmtf.org/schemas/v1/Drive.json#/definitions/Drive" 147*f2a8e57eSGunnar Mills }, 148*f2a8e57eSGunnar Mills "longDescription": "This property shall contain an array of links to resources of type `Drive` that represent the drives associated with this PCIe function.", 149*f2a8e57eSGunnar Mills "readonly": true, 150*f2a8e57eSGunnar Mills "type": "array" 151*f2a8e57eSGunnar Mills }, 152*f2a8e57eSGunnar Mills "Drives@odata.count": { 153*f2a8e57eSGunnar Mills "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count" 154*f2a8e57eSGunnar Mills }, 155*f2a8e57eSGunnar Mills "EthernetInterfaces": { 156*f2a8e57eSGunnar Mills "description": "An array of links to the Ethernet interfaces that this PCIe function produces.", 157*f2a8e57eSGunnar Mills "items": { 158*f2a8e57eSGunnar Mills "$ref": "http://redfish.dmtf.org/schemas/v1/EthernetInterface.json#/definitions/EthernetInterface" 159*f2a8e57eSGunnar Mills }, 160*f2a8e57eSGunnar Mills "longDescription": "This property shall contain an array of links to resources of type `EthernetInterface` that represent the network interfaces associated with this PCIe function.", 161*f2a8e57eSGunnar Mills "readonly": true, 162*f2a8e57eSGunnar Mills "type": "array" 163*f2a8e57eSGunnar Mills }, 164*f2a8e57eSGunnar Mills "EthernetInterfaces@odata.count": { 165*f2a8e57eSGunnar Mills "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count" 166*f2a8e57eSGunnar Mills }, 167*f2a8e57eSGunnar Mills "MemoryDomains": { 168*f2a8e57eSGunnar Mills "description": "An array of links to the memory domains that the PCIe function produces.", 169*f2a8e57eSGunnar Mills "items": { 170*f2a8e57eSGunnar Mills "$ref": "http://redfish.dmtf.org/schemas/v1/MemoryDomain.json#/definitions/MemoryDomain" 171*f2a8e57eSGunnar Mills }, 172*f2a8e57eSGunnar Mills "longDescription": "This property shall contain an array of links to resources of type `MemoryDomain` that represent the memory domains associated with this PCIe function.", 173*f2a8e57eSGunnar Mills "readonly": true, 174*f2a8e57eSGunnar Mills "type": "array", 175*f2a8e57eSGunnar Mills "versionAdded": "v1_5_0" 176*f2a8e57eSGunnar Mills }, 177*f2a8e57eSGunnar Mills "MemoryDomains@odata.count": { 178*f2a8e57eSGunnar Mills "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count" 179*f2a8e57eSGunnar Mills }, 180*f2a8e57eSGunnar Mills "NetworkDeviceFunctions": { 181*f2a8e57eSGunnar Mills "description": "An array of links to the network device functions that the PCIe function produces.", 182*f2a8e57eSGunnar Mills "items": { 183*f2a8e57eSGunnar Mills "$ref": "http://redfish.dmtf.org/schemas/v1/NetworkDeviceFunction.json#/definitions/NetworkDeviceFunction" 184*f2a8e57eSGunnar Mills }, 185*f2a8e57eSGunnar Mills "longDescription": "This property shall contain an array of links to resources of type `NetworkDeviceFunction` that represent the network device functions associated with this PCIe function.", 186*f2a8e57eSGunnar Mills "readonly": true, 187*f2a8e57eSGunnar Mills "type": "array", 188*f2a8e57eSGunnar Mills "versionAdded": "v1_2_0" 189*f2a8e57eSGunnar Mills }, 190*f2a8e57eSGunnar Mills "NetworkDeviceFunctions@odata.count": { 191*f2a8e57eSGunnar Mills "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count" 192*f2a8e57eSGunnar Mills }, 193*f2a8e57eSGunnar Mills "Oem": { 194*f2a8e57eSGunnar Mills "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem", 195*f2a8e57eSGunnar Mills "description": "The OEM extension property.", 196*f2a8e57eSGunnar Mills "longDescription": "This property shall contain the OEM extensions. All values for properties contained in this object shall conform to the Redfish Specification-described requirements." 197*f2a8e57eSGunnar Mills }, 198*f2a8e57eSGunnar Mills "PCIeDevice": { 199*f2a8e57eSGunnar Mills "$ref": "http://redfish.dmtf.org/schemas/v1/PCIeDevice.json#/definitions/PCIeDevice", 200*f2a8e57eSGunnar Mills "description": "The link to the PCIe device on which this function resides.", 201*f2a8e57eSGunnar Mills "longDescription": "This property shall contain a link to a resource of type `PCIeDevice` that represents the PCIe devices on which this function resides.", 202*f2a8e57eSGunnar Mills "readonly": true 203*f2a8e57eSGunnar Mills }, 204*f2a8e57eSGunnar Mills "Processor": { 205*f2a8e57eSGunnar Mills "anyOf": [ 206*f2a8e57eSGunnar Mills { 207*f2a8e57eSGunnar Mills "$ref": "http://redfish.dmtf.org/schemas/v1/Processor.json#/definitions/Processor" 208*f2a8e57eSGunnar Mills }, 209*f2a8e57eSGunnar Mills { 210*f2a8e57eSGunnar Mills "type": "null" 211*f2a8e57eSGunnar Mills } 212*f2a8e57eSGunnar Mills ], 213*f2a8e57eSGunnar Mills "description": "The link to a processor that is hosted on this PCIe function.", 214*f2a8e57eSGunnar Mills "longDescription": "This property shall link to a resource of type `Processor` that represents the processor that is hosted on this PCIe function.", 215*f2a8e57eSGunnar Mills "readonly": true, 216*f2a8e57eSGunnar Mills "versionAdded": "v1_4_0" 217*f2a8e57eSGunnar Mills }, 218*f2a8e57eSGunnar Mills "StorageControllers": { 219*f2a8e57eSGunnar Mills "description": "An array of links to the storage controllers that this PCIe function produces.", 220*f2a8e57eSGunnar Mills "items": { 221*f2a8e57eSGunnar Mills "$ref": "http://redfish.dmtf.org/schemas/v1/Storage.json#/definitions/StorageController" 222*f2a8e57eSGunnar Mills }, 223*f2a8e57eSGunnar Mills "longDescription": "This property shall contain an array of links to referenceable members of type `StorageController` that represent the storage controllers associated with this PCIe function.", 224*f2a8e57eSGunnar Mills "readonly": true, 225*f2a8e57eSGunnar Mills "type": "array" 226*f2a8e57eSGunnar Mills }, 227*f2a8e57eSGunnar Mills "StorageControllers@odata.count": { 228*f2a8e57eSGunnar Mills "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count" 229*f2a8e57eSGunnar Mills } 230*f2a8e57eSGunnar Mills }, 231*f2a8e57eSGunnar Mills "type": "object" 232*f2a8e57eSGunnar Mills }, 233*f2a8e57eSGunnar Mills "OemActions": { 234*f2a8e57eSGunnar Mills "additionalProperties": true, 235*f2a8e57eSGunnar Mills "description": "The available OEM-specific actions for this resource.", 236*f2a8e57eSGunnar Mills "longDescription": "This type shall contain the available OEM-specific actions for this resource.", 237*f2a8e57eSGunnar Mills "patternProperties": { 238*f2a8e57eSGunnar Mills "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": { 239*f2a8e57eSGunnar Mills "description": "This property shall specify a valid odata or Redfish property.", 240*f2a8e57eSGunnar Mills "type": [ 241*f2a8e57eSGunnar Mills "array", 242*f2a8e57eSGunnar Mills "boolean", 243*f2a8e57eSGunnar Mills "integer", 244*f2a8e57eSGunnar Mills "number", 245*f2a8e57eSGunnar Mills "null", 246*f2a8e57eSGunnar Mills "object", 247*f2a8e57eSGunnar Mills "string" 248*f2a8e57eSGunnar Mills ] 249*f2a8e57eSGunnar Mills } 250*f2a8e57eSGunnar Mills }, 251*f2a8e57eSGunnar Mills "properties": {}, 252*f2a8e57eSGunnar Mills "type": "object" 253*f2a8e57eSGunnar Mills }, 254*f2a8e57eSGunnar Mills "PCIeFunction": { 255*f2a8e57eSGunnar Mills "additionalProperties": false, 256*f2a8e57eSGunnar Mills "description": "The `PCIeFunction` schema describes the properties of a PCIe function that is attached to a system.", 257*f2a8e57eSGunnar Mills "longDescription": "This resource shall represent a PCIe function in a Redfish implementation.", 258*f2a8e57eSGunnar Mills "patternProperties": { 259*f2a8e57eSGunnar Mills "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": { 260*f2a8e57eSGunnar Mills "description": "This property shall specify a valid odata or Redfish property.", 261*f2a8e57eSGunnar Mills "type": [ 262*f2a8e57eSGunnar Mills "array", 263*f2a8e57eSGunnar Mills "boolean", 264*f2a8e57eSGunnar Mills "integer", 265*f2a8e57eSGunnar Mills "number", 266*f2a8e57eSGunnar Mills "null", 267*f2a8e57eSGunnar Mills "object", 268*f2a8e57eSGunnar Mills "string" 269*f2a8e57eSGunnar Mills ] 270*f2a8e57eSGunnar Mills } 271*f2a8e57eSGunnar Mills }, 272*f2a8e57eSGunnar Mills "properties": { 273*f2a8e57eSGunnar Mills "@odata.context": { 274*f2a8e57eSGunnar Mills "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/context" 275*f2a8e57eSGunnar Mills }, 276*f2a8e57eSGunnar Mills "@odata.etag": { 277*f2a8e57eSGunnar Mills "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/etag" 278*f2a8e57eSGunnar Mills }, 279*f2a8e57eSGunnar Mills "@odata.id": { 280*f2a8e57eSGunnar Mills "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/id" 281*f2a8e57eSGunnar Mills }, 282*f2a8e57eSGunnar Mills "@odata.type": { 283*f2a8e57eSGunnar Mills "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/type" 284*f2a8e57eSGunnar Mills }, 285*f2a8e57eSGunnar Mills "Actions": { 286*f2a8e57eSGunnar Mills "$ref": "#/definitions/Actions", 287*f2a8e57eSGunnar Mills "description": "The available actions for this resource.", 288*f2a8e57eSGunnar Mills "longDescription": "This property shall contain the available actions for this resource.", 289*f2a8e57eSGunnar Mills "versionAdded": "v1_1_0" 290*f2a8e57eSGunnar Mills }, 291*f2a8e57eSGunnar Mills "BusNumber": { 292*f2a8e57eSGunnar Mills "description": "The bus number of this PCIe function.", 293*f2a8e57eSGunnar Mills "longDescription": "This property shall contain the PCIe bus number of the PCIe device function. This property shall not be present if the PCIe device function is fabric-attached or is shared with multiple systems.", 294*f2a8e57eSGunnar Mills "pattern": "^0[xX][0-9a-fA-F]{2}$", 295*f2a8e57eSGunnar Mills "readonly": true, 296*f2a8e57eSGunnar Mills "type": [ 297*f2a8e57eSGunnar Mills "string", 298*f2a8e57eSGunnar Mills "null" 299*f2a8e57eSGunnar Mills ], 300*f2a8e57eSGunnar Mills "versionAdded": "v1_6_0" 301*f2a8e57eSGunnar Mills }, 302*f2a8e57eSGunnar Mills "ClassCode": { 303*f2a8e57eSGunnar Mills "description": "The Class Code of this PCIe function.", 304*f2a8e57eSGunnar Mills "longDescription": "This property shall contain the PCI Class Code, Subclass, and Programming Interface of the PCIe device function in the order listed.", 305*f2a8e57eSGunnar Mills "pattern": "^0[xX]([0-9A-Fa-f]{2}){3}$", 306*f2a8e57eSGunnar Mills "readonly": true, 307*f2a8e57eSGunnar Mills "type": [ 308*f2a8e57eSGunnar Mills "string", 309*f2a8e57eSGunnar Mills "null" 310*f2a8e57eSGunnar Mills ] 311*f2a8e57eSGunnar Mills }, 312*f2a8e57eSGunnar Mills "Description": { 313*f2a8e57eSGunnar Mills "anyOf": [ 314*f2a8e57eSGunnar Mills { 315*f2a8e57eSGunnar Mills "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Description" 316*f2a8e57eSGunnar Mills }, 317*f2a8e57eSGunnar Mills { 318*f2a8e57eSGunnar Mills "type": "null" 319*f2a8e57eSGunnar Mills } 320*f2a8e57eSGunnar Mills ], 321*f2a8e57eSGunnar Mills "readonly": true 322*f2a8e57eSGunnar Mills }, 323*f2a8e57eSGunnar Mills "DeviceClass": { 324*f2a8e57eSGunnar Mills "$ref": "#/definitions/DeviceClass", 325*f2a8e57eSGunnar Mills "description": "The class for this PCIe function.", 326*f2a8e57eSGunnar Mills "longDescription": "This property shall contain the device class of the PCIe device function, such as storage, network, or memory.", 327*f2a8e57eSGunnar Mills "readonly": true 328*f2a8e57eSGunnar Mills }, 329*f2a8e57eSGunnar Mills "DeviceId": { 330*f2a8e57eSGunnar Mills "description": "The Device ID of this PCIe function.", 331*f2a8e57eSGunnar Mills "longDescription": "This property shall contain the PCI Device ID of the PCIe device function with the most significant byte shown first.", 332*f2a8e57eSGunnar Mills "pattern": "^0[xX]([0-9A-Fa-f]{2}){2}$", 333*f2a8e57eSGunnar Mills "readonly": true, 334*f2a8e57eSGunnar Mills "type": [ 335*f2a8e57eSGunnar Mills "string", 336*f2a8e57eSGunnar Mills "null" 337*f2a8e57eSGunnar Mills ] 338*f2a8e57eSGunnar Mills }, 339*f2a8e57eSGunnar Mills "DeviceNumber": { 340*f2a8e57eSGunnar Mills "description": "The device number of this PCIe function.", 341*f2a8e57eSGunnar Mills "longDescription": "This property shall contain the PCIe device number of the PCIe device function. This property shall not be present if the PCIe device function is fabric-attached or is shared with multiple systems.", 342*f2a8e57eSGunnar Mills "pattern": "^0[xX][0-1][0-9a-fA-F]{1}$", 343*f2a8e57eSGunnar Mills "readonly": true, 344*f2a8e57eSGunnar Mills "type": [ 345*f2a8e57eSGunnar Mills "string", 346*f2a8e57eSGunnar Mills "null" 347*f2a8e57eSGunnar Mills ], 348*f2a8e57eSGunnar Mills "versionAdded": "v1_6_0" 349*f2a8e57eSGunnar Mills }, 350*f2a8e57eSGunnar Mills "Enabled": { 351*f2a8e57eSGunnar Mills "description": "An indication of whether this PCIe device function is enabled.", 352*f2a8e57eSGunnar Mills "longDescription": "The value of this property shall indicate if this PCIe device function is enabled.", 353*f2a8e57eSGunnar Mills "readonly": false, 354*f2a8e57eSGunnar Mills "type": "boolean", 355*f2a8e57eSGunnar Mills "versionAdded": "v1_3_0" 356*f2a8e57eSGunnar Mills }, 357*f2a8e57eSGunnar Mills "FunctionId": { 358*f2a8e57eSGunnar Mills "description": "The PCIe function number.", 359*f2a8e57eSGunnar Mills "longDescription": "This property shall contain the PCIe function number within a given PCIe device.", 360*f2a8e57eSGunnar Mills "readonly": true, 361*f2a8e57eSGunnar Mills "type": [ 362*f2a8e57eSGunnar Mills "integer", 363*f2a8e57eSGunnar Mills "null" 364*f2a8e57eSGunnar Mills ] 365*f2a8e57eSGunnar Mills }, 366*f2a8e57eSGunnar Mills "FunctionNumber": { 367*f2a8e57eSGunnar Mills "description": "The function number of this PCIe function.", 368*f2a8e57eSGunnar Mills "longDescription": "This property shall contain the PCIe function number of the PCIe device function. This property shall not be present if the PCIe device function is fabric-attached or is shared with multiple systems.", 369*f2a8e57eSGunnar Mills "pattern": "^0[xX][0-7]$", 370*f2a8e57eSGunnar Mills "readonly": true, 371*f2a8e57eSGunnar Mills "type": [ 372*f2a8e57eSGunnar Mills "string", 373*f2a8e57eSGunnar Mills "null" 374*f2a8e57eSGunnar Mills ], 375*f2a8e57eSGunnar Mills "versionAdded": "v1_6_0" 376*f2a8e57eSGunnar Mills }, 377*f2a8e57eSGunnar Mills "FunctionProtocol": { 378*f2a8e57eSGunnar Mills "anyOf": [ 379*f2a8e57eSGunnar Mills { 380*f2a8e57eSGunnar Mills "$ref": "#/definitions/FunctionProtocol" 381*f2a8e57eSGunnar Mills }, 382*f2a8e57eSGunnar Mills { 383*f2a8e57eSGunnar Mills "type": "null" 384*f2a8e57eSGunnar Mills } 385*f2a8e57eSGunnar Mills ], 386*f2a8e57eSGunnar Mills "description": "The PCIe function protocol.", 387*f2a8e57eSGunnar Mills "longDescription": "This property shall contain the protocol supported by this PCIe function.", 388*f2a8e57eSGunnar Mills "readonly": true, 389*f2a8e57eSGunnar Mills "versionAdded": "v1_5_0" 390*f2a8e57eSGunnar Mills }, 391*f2a8e57eSGunnar Mills "FunctionType": { 392*f2a8e57eSGunnar Mills "$ref": "#/definitions/FunctionType", 393*f2a8e57eSGunnar Mills "description": "The type of the PCIe function.", 394*f2a8e57eSGunnar Mills "longDescription": "This property shall contain the function type of the PCIe device function such as physical or virtual.", 395*f2a8e57eSGunnar Mills "readonly": true 396*f2a8e57eSGunnar Mills }, 397*f2a8e57eSGunnar Mills "Id": { 398*f2a8e57eSGunnar Mills "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Id", 399*f2a8e57eSGunnar Mills "readonly": true 400*f2a8e57eSGunnar Mills }, 401*f2a8e57eSGunnar Mills "Links": { 402*f2a8e57eSGunnar Mills "$ref": "#/definitions/Links", 403*f2a8e57eSGunnar Mills "description": "The links to other resources that are related to this resource.", 404*f2a8e57eSGunnar Mills "longDescription": "This property shall contain links to resources that are related to but are not contained by, or subordinate to, this resource." 405*f2a8e57eSGunnar Mills }, 406*f2a8e57eSGunnar Mills "Name": { 407*f2a8e57eSGunnar Mills "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Name", 408*f2a8e57eSGunnar Mills "readonly": true 409*f2a8e57eSGunnar Mills }, 410*f2a8e57eSGunnar Mills "Oem": { 411*f2a8e57eSGunnar Mills "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem", 412*f2a8e57eSGunnar Mills "description": "The OEM extension property.", 413*f2a8e57eSGunnar Mills "longDescription": "This property shall contain the OEM extensions. All values for properties that this object contains shall conform to the Redfish Specification-described requirements." 414*f2a8e57eSGunnar Mills }, 415*f2a8e57eSGunnar Mills "RevisionId": { 416*f2a8e57eSGunnar Mills "description": "The Revision ID of this PCIe function.", 417*f2a8e57eSGunnar Mills "longDescription": "This property shall contain the PCI Revision ID of the PCIe device function.", 418*f2a8e57eSGunnar Mills "pattern": "^0[xX]([0-9A-Fa-f]{2}){1}$", 419*f2a8e57eSGunnar Mills "readonly": true, 420*f2a8e57eSGunnar Mills "type": [ 421*f2a8e57eSGunnar Mills "string", 422*f2a8e57eSGunnar Mills "null" 423*f2a8e57eSGunnar Mills ] 424*f2a8e57eSGunnar Mills }, 425*f2a8e57eSGunnar Mills "SegmentNumber": { 426*f2a8e57eSGunnar Mills "description": "The segment number of this PCIe function.", 427*f2a8e57eSGunnar Mills "longDescription": "This property shall contain the PCIe segment number of the PCIe device function. This property shall not be present if the PCIe device function is fabric-attached or is shared with multiple systems.", 428*f2a8e57eSGunnar Mills "pattern": "^0[xX][0-9a-fA-F]{4}$", 429*f2a8e57eSGunnar Mills "readonly": true, 430*f2a8e57eSGunnar Mills "type": [ 431*f2a8e57eSGunnar Mills "string", 432*f2a8e57eSGunnar Mills "null" 433*f2a8e57eSGunnar Mills ], 434*f2a8e57eSGunnar Mills "versionAdded": "v1_6_0" 435*f2a8e57eSGunnar Mills }, 436*f2a8e57eSGunnar Mills "Status": { 437*f2a8e57eSGunnar Mills "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Status", 438*f2a8e57eSGunnar Mills "description": "The status and health of the resource and its subordinate or dependent resources.", 439*f2a8e57eSGunnar Mills "longDescription": "This property shall contain any status or health properties of the resource." 440*f2a8e57eSGunnar Mills }, 441*f2a8e57eSGunnar Mills "SubsystemId": { 442*f2a8e57eSGunnar Mills "description": "The Subsystem ID of this PCIe function.", 443*f2a8e57eSGunnar Mills "longDescription": "This property shall contain the PCI Subsystem ID of the PCIe device function with the most significant byte shown first.", 444*f2a8e57eSGunnar Mills "pattern": "^0[xX]([0-9A-Fa-f]{2}){2}$", 445*f2a8e57eSGunnar Mills "readonly": true, 446*f2a8e57eSGunnar Mills "type": [ 447*f2a8e57eSGunnar Mills "string", 448*f2a8e57eSGunnar Mills "null" 449*f2a8e57eSGunnar Mills ] 450*f2a8e57eSGunnar Mills }, 451*f2a8e57eSGunnar Mills "SubsystemVendorId": { 452*f2a8e57eSGunnar Mills "description": "The Subsystem Vendor ID of this PCIe function.", 453*f2a8e57eSGunnar Mills "longDescription": "This property shall contain the PCI Subsystem Vendor ID of the PCIe device function with the most significant byte shown first.", 454*f2a8e57eSGunnar Mills "pattern": "^0[xX]([0-9A-Fa-f]{2}){2}$", 455*f2a8e57eSGunnar Mills "readonly": true, 456*f2a8e57eSGunnar Mills "type": [ 457*f2a8e57eSGunnar Mills "string", 458*f2a8e57eSGunnar Mills "null" 459*f2a8e57eSGunnar Mills ] 460*f2a8e57eSGunnar Mills }, 461*f2a8e57eSGunnar Mills "VendorId": { 462*f2a8e57eSGunnar Mills "description": "The Vendor ID of this PCIe function.", 463*f2a8e57eSGunnar Mills "longDescription": "This property shall contain the PCI Vendor ID of the PCIe device function with the most significant byte shown first.", 464*f2a8e57eSGunnar Mills "pattern": "^0[xX]([0-9A-Fa-f]{2}){2}$", 465*f2a8e57eSGunnar Mills "readonly": true, 466*f2a8e57eSGunnar Mills "type": [ 467*f2a8e57eSGunnar Mills "string", 468*f2a8e57eSGunnar Mills "null" 469*f2a8e57eSGunnar Mills ] 470*f2a8e57eSGunnar Mills } 471*f2a8e57eSGunnar Mills }, 472*f2a8e57eSGunnar Mills "required": [ 473*f2a8e57eSGunnar Mills "@odata.id", 474*f2a8e57eSGunnar Mills "@odata.type", 475*f2a8e57eSGunnar Mills "Id", 476*f2a8e57eSGunnar Mills "Name" 477*f2a8e57eSGunnar Mills ], 478*f2a8e57eSGunnar Mills "type": "object" 479*f2a8e57eSGunnar Mills } 480*f2a8e57eSGunnar Mills }, 481*f2a8e57eSGunnar Mills "language": "en", 482*f2a8e57eSGunnar Mills "owningEntity": "DMTF", 483*f2a8e57eSGunnar Mills "release": "2024.1", 484*f2a8e57eSGunnar Mills "title": "#PCIeFunction.v1_6_0.PCIeFunction" 485*f2a8e57eSGunnar Mills}