blob: 6f70214f1488e775828b3c604aaaa5cda546a807 [file] [log] [blame]
Ed Tanous118b1c72018-09-13 13:45:51 -07001{
Asmitha Karunanithi009c6452022-09-22 01:07:59 -05002 "$id": "http://redfish.dmtf.org/schemas/v1/PCIeFunction.v1_4_0.json",
Ed Tanous118b1c72018-09-13 13:45:51 -07003 "$ref": "#/definitions/PCIeFunction",
Ed Tanous530520e2019-01-02 13:41:37 -08004 "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
Asmitha Karunanithi009c6452022-09-22 01:07:59 -05005 "copyright": "Copyright 2014-2022 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright",
Ed Tanous118b1c72018-09-13 13:45:51 -07006 "definitions": {
7 "Actions": {
8 "additionalProperties": false,
Ed Tanouscb103132019-10-08 11:34:22 -07009 "description": "The available actions for this Resource.",
10 "longDescription": "This type shall contain the available actions for this Resource.",
Ed Tanous118b1c72018-09-13 13:45:51 -070011 "patternProperties": {
Ed Tanouscb103132019-10-08 11:34:22 -070012 "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
Ed Tanous118b1c72018-09-13 13:45:51 -070013 "description": "This property shall specify a valid odata or Redfish property.",
14 "type": [
15 "array",
16 "boolean",
Ed Tanous530520e2019-01-02 13:41:37 -080017 "integer",
Ed Tanous118b1c72018-09-13 13:45:51 -070018 "number",
19 "null",
20 "object",
21 "string"
22 ]
23 }
24 },
25 "properties": {
26 "Oem": {
Ed Tanous530520e2019-01-02 13:41:37 -080027 "$ref": "#/definitions/OemActions",
Ed Tanouscb103132019-10-08 11:34:22 -070028 "description": "The available OEM-specific actions for this Resource.",
29 "longDescription": "This property shall contain the available OEM-specific actions for this Resource.",
30 "versionAdded": "v1_1_0"
Ed Tanous118b1c72018-09-13 13:45:51 -070031 }
32 },
33 "type": "object"
34 },
35 "DeviceClass": {
36 "enum": [
37 "UnclassifiedDevice",
38 "MassStorageController",
39 "NetworkController",
40 "DisplayController",
41 "MultimediaController",
42 "MemoryController",
43 "Bridge",
44 "CommunicationController",
45 "GenericSystemPeripheral",
46 "InputDeviceController",
47 "DockingStation",
48 "Processor",
49 "SerialBusController",
50 "WirelessController",
51 "IntelligentController",
52 "SatelliteCommunicationsController",
53 "EncryptionController",
54 "SignalProcessingController",
55 "ProcessingAccelerators",
56 "NonEssentialInstrumentation",
57 "Coprocessor",
58 "UnassignedClass",
59 "Other"
60 ],
61 "enumDescriptions": {
62 "Bridge": "A bridge.",
63 "CommunicationController": "A communication controller.",
64 "Coprocessor": "A coprocessor.",
65 "DisplayController": "A display controller.",
66 "DockingStation": "A docking station.",
67 "EncryptionController": "An encryption controller.",
68 "GenericSystemPeripheral": "A generic system peripheral.",
69 "InputDeviceController": "An input device controller.",
70 "IntelligentController": "An intelligent controller.",
71 "MassStorageController": "A mass storage controller.",
72 "MemoryController": "A memory controller.",
73 "MultimediaController": "A multimedia controller.",
74 "NetworkController": "A network controller.",
75 "NonEssentialInstrumentation": "A non-essential instrumentation.",
Ed Tanouscb103132019-10-08 11:34:22 -070076 "Other": "A other class. The function Device Class Id needs to be verified.",
Ed Tanous118b1c72018-09-13 13:45:51 -070077 "ProcessingAccelerators": "A processing accelerators.",
78 "Processor": "A processor.",
79 "SatelliteCommunicationsController": "A satellite communications controller.",
80 "SerialBusController": "A serial bus controller.",
81 "SignalProcessingController": "A signal processing controller.",
82 "UnassignedClass": "An unassigned class.",
83 "UnclassifiedDevice": "An unclassified device.",
84 "WirelessController": "A wireless controller."
85 },
86 "type": "string"
87 },
88 "FunctionType": {
89 "enum": [
90 "Physical",
91 "Virtual"
92 ],
93 "enumDescriptions": {
Ed Tanouscb103132019-10-08 11:34:22 -070094 "Physical": "A physical PCIe function.",
Ed Tanous118b1c72018-09-13 13:45:51 -070095 "Virtual": "A virtual PCIe function."
96 },
97 "type": "string"
98 },
99 "Links": {
100 "additionalProperties": false,
Ed Tanouscb103132019-10-08 11:34:22 -0700101 "description": "The links to other Resources that are related to this Resource.",
102 "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.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700103 "patternProperties": {
Ed Tanouscb103132019-10-08 11:34:22 -0700104 "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
Ed Tanous118b1c72018-09-13 13:45:51 -0700105 "description": "This property shall specify a valid odata or Redfish property.",
106 "type": [
107 "array",
108 "boolean",
Ed Tanous530520e2019-01-02 13:41:37 -0800109 "integer",
Ed Tanous118b1c72018-09-13 13:45:51 -0700110 "number",
111 "null",
112 "object",
113 "string"
114 ]
115 }
116 },
117 "properties": {
118 "Drives": {
Ed Tanouscb103132019-10-08 11:34:22 -0700119 "description": "An array of links to the drives that the PCIe device produces.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700120 "items": {
121 "$ref": "http://redfish.dmtf.org/schemas/v1/Drive.json#/definitions/Drive"
122 },
Ed Tanouscb103132019-10-08 11:34:22 -0700123 "longDescription": "This property shall link to a Resource of type Drive that represents the storage drives associated with this Resource.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700124 "readonly": true,
125 "type": "array"
126 },
127 "Drives@odata.count": {
Ed Tanouscb103132019-10-08 11:34:22 -0700128 "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
Ed Tanous118b1c72018-09-13 13:45:51 -0700129 },
130 "EthernetInterfaces": {
Ed Tanouscb103132019-10-08 11:34:22 -0700131 "description": "An array of links to the Ethernet interfaces that the PCIe device produces.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700132 "items": {
133 "$ref": "http://redfish.dmtf.org/schemas/v1/EthernetInterface.json#/definitions/EthernetInterface"
134 },
Ed Tanouscb103132019-10-08 11:34:22 -0700135 "longDescription": "This property shall link to a Resource of type EthernetInterface that represents the network interfaces associated with this Resource.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700136 "readonly": true,
137 "type": "array"
138 },
139 "EthernetInterfaces@odata.count": {
Ed Tanouscb103132019-10-08 11:34:22 -0700140 "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
Ed Tanous118b1c72018-09-13 13:45:51 -0700141 },
142 "NetworkDeviceFunctions": {
Ed Tanouscb103132019-10-08 11:34:22 -0700143 "description": "An array of links to the network device functions that the PCIe device produces.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700144 "items": {
145 "$ref": "http://redfish.dmtf.org/schemas/v1/NetworkDeviceFunction.json#/definitions/NetworkDeviceFunction"
146 },
Ed Tanouscb103132019-10-08 11:34:22 -0700147 "longDescription": "This property shall contain an array of links to Resources of the NetworkDeviceFunction type that represents the network device functions associated with this Resource.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700148 "readonly": true,
Ed Tanouscb103132019-10-08 11:34:22 -0700149 "type": "array",
150 "versionAdded": "v1_2_0"
Ed Tanous118b1c72018-09-13 13:45:51 -0700151 },
152 "NetworkDeviceFunctions@odata.count": {
Ed Tanouscb103132019-10-08 11:34:22 -0700153 "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
Ed Tanous118b1c72018-09-13 13:45:51 -0700154 },
155 "Oem": {
156 "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
Ed Tanouscb103132019-10-08 11:34:22 -0700157 "description": "The OEM extension property.",
158 "longDescription": "This property shall contain the OEM extensions. All values for properties contained in this object shall conform to the Redfish Specification-described requirements."
Ed Tanous118b1c72018-09-13 13:45:51 -0700159 },
160 "PCIeDevice": {
Ed Tanouscb103132019-10-08 11:34:22 -0700161 "$ref": "http://redfish.dmtf.org/schemas/v1/PCIeDevice.json#/definitions/PCIeDevice",
162 "description": "The link to the PCIe device on which this function resides.",
163 "longDescription": "This property shall contain a link to a Resource of type PCIeDevice of which this function is a part.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700164 "readonly": true
165 },
Asmitha Karunanithi009c6452022-09-22 01:07:59 -0500166 "Processor": {
167 "anyOf": [
168 {
169 "$ref": "http://redfish.dmtf.org/schemas/v1/Processor.json#/definitions/Processor"
170 },
171 {
172 "type": "null"
173 }
174 ],
175 "description": "The link to a processor that is hosted on this PCIe device function.",
176 "longDescription": "This property shall link to a resource of type Processor that is hosted on this PCIe device function.",
177 "readonly": true,
178 "versionAdded": "v1_4_0"
179 },
Ed Tanous118b1c72018-09-13 13:45:51 -0700180 "StorageControllers": {
Ed Tanouscb103132019-10-08 11:34:22 -0700181 "description": "An array of links to the storage controllers that the PCIe device produces.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700182 "items": {
183 "$ref": "http://redfish.dmtf.org/schemas/v1/Storage.json#/definitions/StorageController"
184 },
Ed Tanouscb103132019-10-08 11:34:22 -0700185 "longDescription": "This property shall link to a Resource of type StorageController that represents the storage controllers associated with this Resource.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700186 "readonly": true,
187 "type": "array"
188 },
189 "StorageControllers@odata.count": {
Ed Tanouscb103132019-10-08 11:34:22 -0700190 "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
Ed Tanous118b1c72018-09-13 13:45:51 -0700191 }
192 },
193 "type": "object"
194 },
195 "OemActions": {
196 "additionalProperties": true,
Ed Tanouscb103132019-10-08 11:34:22 -0700197 "description": "The available OEM-specific actions for this Resource.",
198 "longDescription": "This type shall contain the available OEM-specific actions for this Resource.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700199 "patternProperties": {
Ed Tanouscb103132019-10-08 11:34:22 -0700200 "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
Ed Tanous118b1c72018-09-13 13:45:51 -0700201 "description": "This property shall specify a valid odata or Redfish property.",
202 "type": [
203 "array",
204 "boolean",
Ed Tanous530520e2019-01-02 13:41:37 -0800205 "integer",
Ed Tanous118b1c72018-09-13 13:45:51 -0700206 "number",
207 "null",
208 "object",
209 "string"
210 ]
211 }
212 },
213 "properties": {},
214 "type": "object"
215 },
216 "PCIeFunction": {
217 "additionalProperties": false,
Ed Tanouscb103132019-10-08 11:34:22 -0700218 "description": "The schema definition for the PCIeFunction Resource. It represents the properties of a PCIeFunction attached to a System.",
219 "longDescription": "This Resource shall represent a PCIeFunction attached to a System.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700220 "patternProperties": {
Ed Tanouscb103132019-10-08 11:34:22 -0700221 "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
Ed Tanous118b1c72018-09-13 13:45:51 -0700222 "description": "This property shall specify a valid odata or Redfish property.",
223 "type": [
224 "array",
225 "boolean",
Ed Tanous530520e2019-01-02 13:41:37 -0800226 "integer",
Ed Tanous118b1c72018-09-13 13:45:51 -0700227 "number",
228 "null",
229 "object",
230 "string"
231 ]
232 }
233 },
234 "properties": {
235 "@odata.context": {
Ed Tanouscb103132019-10-08 11:34:22 -0700236 "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/context"
Ed Tanous118b1c72018-09-13 13:45:51 -0700237 },
238 "@odata.etag": {
Ed Tanouscb103132019-10-08 11:34:22 -0700239 "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/etag"
Ed Tanous118b1c72018-09-13 13:45:51 -0700240 },
241 "@odata.id": {
Ed Tanouscb103132019-10-08 11:34:22 -0700242 "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/id"
Ed Tanous118b1c72018-09-13 13:45:51 -0700243 },
244 "@odata.type": {
Ed Tanouscb103132019-10-08 11:34:22 -0700245 "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/type"
Ed Tanous118b1c72018-09-13 13:45:51 -0700246 },
247 "Actions": {
248 "$ref": "#/definitions/Actions",
Ed Tanouscb103132019-10-08 11:34:22 -0700249 "description": "The available actions for this Resource.",
250 "longDescription": "This property shall contain the available actions for this Resource.",
251 "versionAdded": "v1_1_0"
Ed Tanous118b1c72018-09-13 13:45:51 -0700252 },
253 "ClassCode": {
254 "description": "The Class Code of this PCIe function.",
Ed Tanouscb103132019-10-08 11:34:22 -0700255 "longDescription": "This property shall contain the PCI Class Code of the PCIe device function.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700256 "pattern": "^0[xX](([a-fA-F]|[0-9]){2}){3}$",
257 "readonly": true,
258 "type": [
259 "string",
260 "null"
261 ]
262 },
263 "Description": {
264 "anyOf": [
265 {
266 "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Description"
267 },
268 {
269 "type": "null"
270 }
271 ],
272 "readonly": true
273 },
274 "DeviceClass": {
275 "$ref": "#/definitions/DeviceClass",
Ed Tanouscb103132019-10-08 11:34:22 -0700276 "description": "The class for this PCIe function.",
277 "longDescription": "This property shall contain the device class of the PCIe device function, such as storage, network, or memory.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700278 "readonly": true
279 },
280 "DeviceId": {
281 "description": "The Device ID of this PCIe function.",
Ed Tanouscb103132019-10-08 11:34:22 -0700282 "longDescription": "This property shall contain the PCI Device ID of the PCIe device function.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700283 "pattern": "^0[xX](([a-fA-F]|[0-9]){2}){2}$",
284 "readonly": true,
285 "type": [
286 "string",
287 "null"
288 ]
289 },
Gunnar Mills10f270b2021-05-19 15:34:06 -0500290 "Enabled": {
291 "description": "An indication of whether this PCIe device function is enabled.",
292 "longDescription": "The value of this property shall indicate if this PCIe device function is enabled.",
293 "readonly": false,
294 "type": "boolean",
295 "versionAdded": "v1_3_0"
296 },
Ed Tanous118b1c72018-09-13 13:45:51 -0700297 "FunctionId": {
Ed Tanouscb103132019-10-08 11:34:22 -0700298 "description": "The PCIe Function Number.",
299 "longDescription": "This property shall contain the PCIe Function Number within a given PCIe device.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700300 "readonly": true,
301 "type": [
Ed Tanous530520e2019-01-02 13:41:37 -0800302 "integer",
Ed Tanous118b1c72018-09-13 13:45:51 -0700303 "null"
304 ]
305 },
306 "FunctionType": {
307 "$ref": "#/definitions/FunctionType",
Ed Tanouscb103132019-10-08 11:34:22 -0700308 "description": "The type of the PCIe function.",
309 "longDescription": "This property shall contain the function type of the PCIe device function such as Physical or Virtual.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700310 "readonly": true
311 },
312 "Id": {
313 "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Id",
314 "readonly": true
315 },
316 "Links": {
317 "$ref": "#/definitions/Links",
Ed Tanouscb103132019-10-08 11:34:22 -0700318 "description": "The links to other Resources that are related to this Resource.",
319 "longDescription": "This property shall contain links to Resources that are related to but are not contained by, or subordinate to, this Resource."
Ed Tanous118b1c72018-09-13 13:45:51 -0700320 },
321 "Name": {
322 "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Name",
323 "readonly": true
324 },
325 "Oem": {
326 "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
Ed Tanouscb103132019-10-08 11:34:22 -0700327 "description": "The OEM extension property.",
328 "longDescription": "This property shall contain the OEM extensions. All values for properties that this object contains shall conform to the Redfish Specification-described requirements."
Ed Tanous118b1c72018-09-13 13:45:51 -0700329 },
330 "RevisionId": {
331 "description": "The Revision ID of this PCIe function.",
Ed Tanouscb103132019-10-08 11:34:22 -0700332 "longDescription": "This property shall contain the PCI Revision ID of the PCIe device function.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700333 "pattern": "^0[xX](([a-fA-F]|[0-9]){2}){1}$",
334 "readonly": true,
335 "type": [
336 "string",
337 "null"
338 ]
339 },
340 "Status": {
Ed Tanous530520e2019-01-02 13:41:37 -0800341 "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Status",
Ed Tanouscb103132019-10-08 11:34:22 -0700342 "description": "The status and health of the Resource and its subordinate or dependent Resources.",
343 "longDescription": "This property shall contain any status or health properties of the Resource."
Ed Tanous118b1c72018-09-13 13:45:51 -0700344 },
345 "SubsystemId": {
346 "description": "The Subsystem ID of this PCIe function.",
Ed Tanouscb103132019-10-08 11:34:22 -0700347 "longDescription": "This property shall contain the PCI Subsystem ID of the PCIe device function.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700348 "pattern": "^0[xX](([a-fA-F]|[0-9]){2}){2}$",
349 "readonly": true,
350 "type": [
351 "string",
352 "null"
353 ]
354 },
355 "SubsystemVendorId": {
356 "description": "The Subsystem Vendor ID of this PCIe function.",
Ed Tanouscb103132019-10-08 11:34:22 -0700357 "longDescription": "This property shall contain the PCI Subsystem Vendor ID of the PCIe device function.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700358 "pattern": "^0[xX](([a-fA-F]|[0-9]){2}){2}$",
359 "readonly": true,
360 "type": [
361 "string",
362 "null"
363 ]
364 },
365 "VendorId": {
366 "description": "The Vendor ID of this PCIe function.",
Ed Tanouscb103132019-10-08 11:34:22 -0700367 "longDescription": "This property shall contain the PCI Vendor ID of the PCIe device function.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700368 "pattern": "^0[xX](([a-fA-F]|[0-9]){2}){2}$",
369 "readonly": true,
370 "type": [
371 "string",
372 "null"
373 ]
374 }
375 },
376 "required": [
Ed Tanous530520e2019-01-02 13:41:37 -0800377 "@odata.id",
378 "@odata.type",
Ed Tanous118b1c72018-09-13 13:45:51 -0700379 "Id",
380 "Name"
381 ],
382 "type": "object"
383 }
384 },
385 "owningEntity": "DMTF",
Asmitha Karunanithi009c6452022-09-22 01:07:59 -0500386 "release": "2022.2",
387 "title": "#PCIeFunction.v1_4_0.PCIeFunction"
Ed Tanous118b1c72018-09-13 13:45:51 -0700388}