xref: /openbmc/bmcweb/features/redfish/schema/dmtf/json-schema/NetworkAdapter.v1_13_0.json (revision 5ecf7b4e1bb6988dd3403fa80b723afbe2be30ae)
1*5ecf7b4eSGunnar Mills{
2*5ecf7b4eSGunnar Mills    "$id": "http://redfish.dmtf.org/schemas/v1/NetworkAdapter.v1_13_0.json",
3*5ecf7b4eSGunnar Mills    "$ref": "#/definitions/NetworkAdapter",
4*5ecf7b4eSGunnar Mills    "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
5*5ecf7b4eSGunnar Mills    "copyright": "Copyright 2014-2025 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright",
6*5ecf7b4eSGunnar Mills    "definitions": {
7*5ecf7b4eSGunnar Mills        "Actions": {
8*5ecf7b4eSGunnar Mills            "additionalProperties": false,
9*5ecf7b4eSGunnar Mills            "description": "The available actions for this resource.",
10*5ecf7b4eSGunnar Mills            "longDescription": "This type shall contain the available actions for this resource.",
11*5ecf7b4eSGunnar Mills            "patternProperties": {
12*5ecf7b4eSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
13*5ecf7b4eSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
14*5ecf7b4eSGunnar Mills                    "type": [
15*5ecf7b4eSGunnar Mills                        "array",
16*5ecf7b4eSGunnar Mills                        "boolean",
17*5ecf7b4eSGunnar Mills                        "integer",
18*5ecf7b4eSGunnar Mills                        "number",
19*5ecf7b4eSGunnar Mills                        "null",
20*5ecf7b4eSGunnar Mills                        "object",
21*5ecf7b4eSGunnar Mills                        "string"
22*5ecf7b4eSGunnar Mills                    ]
23*5ecf7b4eSGunnar Mills                }
24*5ecf7b4eSGunnar Mills            },
25*5ecf7b4eSGunnar Mills            "properties": {
26*5ecf7b4eSGunnar Mills                "#NetworkAdapter.Reset": {
27*5ecf7b4eSGunnar Mills                    "$ref": "#/definitions/Reset"
28*5ecf7b4eSGunnar Mills                },
29*5ecf7b4eSGunnar Mills                "#NetworkAdapter.ResetSettingsToDefault": {
30*5ecf7b4eSGunnar Mills                    "$ref": "#/definitions/ResetSettingsToDefault"
31*5ecf7b4eSGunnar Mills                },
32*5ecf7b4eSGunnar Mills                "Oem": {
33*5ecf7b4eSGunnar Mills                    "$ref": "#/definitions/OemActions",
34*5ecf7b4eSGunnar Mills                    "description": "The available OEM-specific actions for this resource.",
35*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the available OEM-specific actions for this resource."
36*5ecf7b4eSGunnar Mills                }
37*5ecf7b4eSGunnar Mills            },
38*5ecf7b4eSGunnar Mills            "type": "object"
39*5ecf7b4eSGunnar Mills        },
40*5ecf7b4eSGunnar Mills        "ControllerCapabilities": {
41*5ecf7b4eSGunnar Mills            "additionalProperties": false,
42*5ecf7b4eSGunnar Mills            "description": "The capabilities of a controller.",
43*5ecf7b4eSGunnar Mills            "longDescription": "This type shall describe the capabilities of a controller.",
44*5ecf7b4eSGunnar Mills            "patternProperties": {
45*5ecf7b4eSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
46*5ecf7b4eSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
47*5ecf7b4eSGunnar Mills                    "type": [
48*5ecf7b4eSGunnar Mills                        "array",
49*5ecf7b4eSGunnar Mills                        "boolean",
50*5ecf7b4eSGunnar Mills                        "integer",
51*5ecf7b4eSGunnar Mills                        "number",
52*5ecf7b4eSGunnar Mills                        "null",
53*5ecf7b4eSGunnar Mills                        "object",
54*5ecf7b4eSGunnar Mills                        "string"
55*5ecf7b4eSGunnar Mills                    ]
56*5ecf7b4eSGunnar Mills                }
57*5ecf7b4eSGunnar Mills            },
58*5ecf7b4eSGunnar Mills            "properties": {
59*5ecf7b4eSGunnar Mills                "DataCenterBridging": {
60*5ecf7b4eSGunnar Mills                    "$ref": "#/definitions/DataCenterBridging",
61*5ecf7b4eSGunnar Mills                    "description": "Data center bridging (DCB) for this controller.",
62*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain capability, status, and configuration values related to data center bridging (DCB) for this controller."
63*5ecf7b4eSGunnar Mills                },
64*5ecf7b4eSGunnar Mills                "NPAR": {
65*5ecf7b4eSGunnar Mills                    "$ref": "#/definitions/NicPartitioning",
66*5ecf7b4eSGunnar Mills                    "description": "NIC Partitioning (NPAR) capabilities for this controller.",
67*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain capability, status, and configuration values related to NIC partitioning for this controller.",
68*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_2_0"
69*5ecf7b4eSGunnar Mills                },
70*5ecf7b4eSGunnar Mills                "NPIV": {
71*5ecf7b4eSGunnar Mills                    "$ref": "#/definitions/NPIV",
72*5ecf7b4eSGunnar Mills                    "description": "N_Port ID Virtualization (NPIV) capabilities for this controller.",
73*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain N_Port ID Virtualization (NPIV) capabilities for this controller."
74*5ecf7b4eSGunnar Mills                },
75*5ecf7b4eSGunnar Mills                "NetworkDeviceFunctionCount": {
76*5ecf7b4eSGunnar Mills                    "description": "The maximum number of physical functions available on this controller.",
77*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the number of physical functions available on this controller.",
78*5ecf7b4eSGunnar Mills                    "readonly": true,
79*5ecf7b4eSGunnar Mills                    "type": [
80*5ecf7b4eSGunnar Mills                        "integer",
81*5ecf7b4eSGunnar Mills                        "null"
82*5ecf7b4eSGunnar Mills                    ]
83*5ecf7b4eSGunnar Mills                },
84*5ecf7b4eSGunnar Mills                "NetworkPortCount": {
85*5ecf7b4eSGunnar Mills                    "description": "The number of physical ports on this controller.",
86*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the number of physical ports on this controller.",
87*5ecf7b4eSGunnar Mills                    "readonly": true,
88*5ecf7b4eSGunnar Mills                    "type": [
89*5ecf7b4eSGunnar Mills                        "integer",
90*5ecf7b4eSGunnar Mills                        "null"
91*5ecf7b4eSGunnar Mills                    ]
92*5ecf7b4eSGunnar Mills                },
93*5ecf7b4eSGunnar Mills                "VirtualizationOffload": {
94*5ecf7b4eSGunnar Mills                    "$ref": "#/definitions/VirtualizationOffload",
95*5ecf7b4eSGunnar Mills                    "description": "Virtualization offload for this controller.",
96*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain capability, status, and configuration values related to virtualization offload for this controller."
97*5ecf7b4eSGunnar Mills                }
98*5ecf7b4eSGunnar Mills            },
99*5ecf7b4eSGunnar Mills            "type": "object"
100*5ecf7b4eSGunnar Mills        },
101*5ecf7b4eSGunnar Mills        "ControllerLinks": {
102*5ecf7b4eSGunnar Mills            "additionalProperties": false,
103*5ecf7b4eSGunnar Mills            "description": "The links to other resources that are related to this resource.",
104*5ecf7b4eSGunnar 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.",
105*5ecf7b4eSGunnar Mills            "patternProperties": {
106*5ecf7b4eSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
107*5ecf7b4eSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
108*5ecf7b4eSGunnar Mills                    "type": [
109*5ecf7b4eSGunnar Mills                        "array",
110*5ecf7b4eSGunnar Mills                        "boolean",
111*5ecf7b4eSGunnar Mills                        "integer",
112*5ecf7b4eSGunnar Mills                        "number",
113*5ecf7b4eSGunnar Mills                        "null",
114*5ecf7b4eSGunnar Mills                        "object",
115*5ecf7b4eSGunnar Mills                        "string"
116*5ecf7b4eSGunnar Mills                    ]
117*5ecf7b4eSGunnar Mills                }
118*5ecf7b4eSGunnar Mills            },
119*5ecf7b4eSGunnar Mills            "properties": {
120*5ecf7b4eSGunnar Mills                "ActiveSoftwareImage": {
121*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/SoftwareInventory.json#/definitions/SoftwareInventory",
122*5ecf7b4eSGunnar Mills                    "description": "The link to the software inventory resource that represents the active firmware image for this controller.",
123*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain a link to a resource of type `SoftwareInventory` that represents the active firmware image for this controller.",
124*5ecf7b4eSGunnar Mills                    "readonly": false,
125*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_10_0"
126*5ecf7b4eSGunnar Mills                },
127*5ecf7b4eSGunnar Mills                "NetworkDeviceFunctions": {
128*5ecf7b4eSGunnar Mills                    "description": "An array of links to the network device functions associated with this network controller.",
129*5ecf7b4eSGunnar Mills                    "items": {
130*5ecf7b4eSGunnar Mills                        "$ref": "http://redfish.dmtf.org/schemas/v1/NetworkDeviceFunction.json#/definitions/NetworkDeviceFunction"
131*5ecf7b4eSGunnar Mills                    },
132*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain an array of links to resources of type `NetworkDeviceFunction` that represent the network device functions associated with this network controller.",
133*5ecf7b4eSGunnar Mills                    "readonly": true,
134*5ecf7b4eSGunnar Mills                    "type": "array"
135*5ecf7b4eSGunnar Mills                },
136*5ecf7b4eSGunnar Mills                "NetworkDeviceFunctions@odata.count": {
137*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
138*5ecf7b4eSGunnar Mills                },
139*5ecf7b4eSGunnar Mills                "NetworkPorts": {
140*5ecf7b4eSGunnar Mills                    "deprecated": "This property has been deprecated in favor of the `Ports` property.",
141*5ecf7b4eSGunnar Mills                    "description": "An array of links to the network ports associated with this network controller.",
142*5ecf7b4eSGunnar Mills                    "items": {
143*5ecf7b4eSGunnar Mills                        "$ref": "http://redfish.dmtf.org/schemas/v1/NetworkPort.json#/definitions/NetworkPort"
144*5ecf7b4eSGunnar Mills                    },
145*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain an array of links to resources of type `NetworkPort` that represent the network ports associated with this network controller.",
146*5ecf7b4eSGunnar Mills                    "readonly": true,
147*5ecf7b4eSGunnar Mills                    "type": "array",
148*5ecf7b4eSGunnar Mills                    "versionDeprecated": "v1_5_0"
149*5ecf7b4eSGunnar Mills                },
150*5ecf7b4eSGunnar Mills                "NetworkPorts@odata.count": {
151*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
152*5ecf7b4eSGunnar Mills                },
153*5ecf7b4eSGunnar Mills                "Oem": {
154*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
155*5ecf7b4eSGunnar Mills                    "description": "The OEM extension property.",
156*5ecf7b4eSGunnar 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."
157*5ecf7b4eSGunnar Mills                },
158*5ecf7b4eSGunnar Mills                "PCIeDevices": {
159*5ecf7b4eSGunnar Mills                    "description": "An array of links to the PCIe devices associated with this network controller.",
160*5ecf7b4eSGunnar Mills                    "items": {
161*5ecf7b4eSGunnar Mills                        "$ref": "http://redfish.dmtf.org/schemas/v1/PCIeDevice.json#/definitions/PCIeDevice"
162*5ecf7b4eSGunnar Mills                    },
163*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain an array of links to resources of type `PCIeDevice` that represent the PCIe devices associated with this network controller.",
164*5ecf7b4eSGunnar Mills                    "readonly": true,
165*5ecf7b4eSGunnar Mills                    "type": "array"
166*5ecf7b4eSGunnar Mills                },
167*5ecf7b4eSGunnar Mills                "PCIeDevices@odata.count": {
168*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
169*5ecf7b4eSGunnar Mills                },
170*5ecf7b4eSGunnar Mills                "Ports": {
171*5ecf7b4eSGunnar Mills                    "description": "An array of links to the ports associated with this network controller.",
172*5ecf7b4eSGunnar Mills                    "items": {
173*5ecf7b4eSGunnar Mills                        "$ref": "http://redfish.dmtf.org/schemas/v1/Port.json#/definitions/Port"
174*5ecf7b4eSGunnar Mills                    },
175*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain an array of links to resources of type `Port` that represent the ports associated with this network controller.",
176*5ecf7b4eSGunnar Mills                    "readonly": true,
177*5ecf7b4eSGunnar Mills                    "type": "array",
178*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_5_0"
179*5ecf7b4eSGunnar Mills                },
180*5ecf7b4eSGunnar Mills                "Ports@odata.count": {
181*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
182*5ecf7b4eSGunnar Mills                },
183*5ecf7b4eSGunnar Mills                "SoftwareImages": {
184*5ecf7b4eSGunnar Mills                    "description": "The images that are associated with this controller.",
185*5ecf7b4eSGunnar Mills                    "items": {
186*5ecf7b4eSGunnar Mills                        "$ref": "http://redfish.dmtf.org/schemas/v1/SoftwareInventory.json#/definitions/SoftwareInventory"
187*5ecf7b4eSGunnar Mills                    },
188*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain an array of links to resource of type `SoftwareInventory` that represent the firmware images that apply to this controller.",
189*5ecf7b4eSGunnar Mills                    "readonly": true,
190*5ecf7b4eSGunnar Mills                    "type": "array",
191*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_10_0"
192*5ecf7b4eSGunnar Mills                },
193*5ecf7b4eSGunnar Mills                "SoftwareImages@odata.count": {
194*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
195*5ecf7b4eSGunnar Mills                }
196*5ecf7b4eSGunnar Mills            },
197*5ecf7b4eSGunnar Mills            "type": "object"
198*5ecf7b4eSGunnar Mills        },
199*5ecf7b4eSGunnar Mills        "Controllers": {
200*5ecf7b4eSGunnar Mills            "additionalProperties": false,
201*5ecf7b4eSGunnar Mills            "description": "A network controller ASIC that makes up part of a network adapter.",
202*5ecf7b4eSGunnar Mills            "longDescription": "This type shall describe a network controller ASIC that makes up part of a network adapter.",
203*5ecf7b4eSGunnar Mills            "patternProperties": {
204*5ecf7b4eSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
205*5ecf7b4eSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
206*5ecf7b4eSGunnar Mills                    "type": [
207*5ecf7b4eSGunnar Mills                        "array",
208*5ecf7b4eSGunnar Mills                        "boolean",
209*5ecf7b4eSGunnar Mills                        "integer",
210*5ecf7b4eSGunnar Mills                        "number",
211*5ecf7b4eSGunnar Mills                        "null",
212*5ecf7b4eSGunnar Mills                        "object",
213*5ecf7b4eSGunnar Mills                        "string"
214*5ecf7b4eSGunnar Mills                    ]
215*5ecf7b4eSGunnar Mills                }
216*5ecf7b4eSGunnar Mills            },
217*5ecf7b4eSGunnar Mills            "properties": {
218*5ecf7b4eSGunnar Mills                "ControllerCapabilities": {
219*5ecf7b4eSGunnar Mills                    "$ref": "#/definitions/ControllerCapabilities",
220*5ecf7b4eSGunnar Mills                    "description": "The capabilities of this controller.",
221*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the capabilities of this controller."
222*5ecf7b4eSGunnar Mills                },
223*5ecf7b4eSGunnar Mills                "FirmwarePackageVersion": {
224*5ecf7b4eSGunnar Mills                    "description": "The version of the user-facing firmware package.",
225*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the version number of the user-facing firmware package.",
226*5ecf7b4eSGunnar Mills                    "readonly": true,
227*5ecf7b4eSGunnar Mills                    "type": [
228*5ecf7b4eSGunnar Mills                        "string",
229*5ecf7b4eSGunnar Mills                        "null"
230*5ecf7b4eSGunnar Mills                    ]
231*5ecf7b4eSGunnar Mills                },
232*5ecf7b4eSGunnar Mills                "Identifiers": {
233*5ecf7b4eSGunnar Mills                    "description": "The durable names for the network adapter controller.",
234*5ecf7b4eSGunnar Mills                    "items": {
235*5ecf7b4eSGunnar Mills                        "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Identifier"
236*5ecf7b4eSGunnar Mills                    },
237*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain a list of all known durable names for the controller associated with the network adapter.",
238*5ecf7b4eSGunnar Mills                    "type": "array",
239*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_3_0"
240*5ecf7b4eSGunnar Mills                },
241*5ecf7b4eSGunnar Mills                "Links": {
242*5ecf7b4eSGunnar Mills                    "$ref": "#/definitions/ControllerLinks",
243*5ecf7b4eSGunnar Mills                    "description": "The links to other resources that are related to this resource.",
244*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain links to resources that are related to but are not contained by, or subordinate to, this resource."
245*5ecf7b4eSGunnar Mills                },
246*5ecf7b4eSGunnar Mills                "Location": {
247*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Location",
248*5ecf7b4eSGunnar Mills                    "description": "The location of the network adapter controller.",
249*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the location information of the controller associated with the network adapter.",
250*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_1_0"
251*5ecf7b4eSGunnar Mills                },
252*5ecf7b4eSGunnar Mills                "PCIeInterface": {
253*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/PCIeDevice.json#/definitions/PCIeInterface",
254*5ecf7b4eSGunnar Mills                    "description": "The PCIe interface details for this controller.",
255*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain details for the PCIe interface that connects this PCIe-based controller to its host.",
256*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_2_0"
257*5ecf7b4eSGunnar Mills                }
258*5ecf7b4eSGunnar Mills            },
259*5ecf7b4eSGunnar Mills            "type": "object"
260*5ecf7b4eSGunnar Mills        },
261*5ecf7b4eSGunnar Mills        "DataCenterBridging": {
262*5ecf7b4eSGunnar Mills            "additionalProperties": false,
263*5ecf7b4eSGunnar Mills            "description": "Data center bridging (DCB) for capabilities of a controller.",
264*5ecf7b4eSGunnar Mills            "longDescription": "This type shall describe the capability, status, and configuration values related to data center bridging (DCB) for a controller.",
265*5ecf7b4eSGunnar Mills            "patternProperties": {
266*5ecf7b4eSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
267*5ecf7b4eSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
268*5ecf7b4eSGunnar Mills                    "type": [
269*5ecf7b4eSGunnar Mills                        "array",
270*5ecf7b4eSGunnar Mills                        "boolean",
271*5ecf7b4eSGunnar Mills                        "integer",
272*5ecf7b4eSGunnar Mills                        "number",
273*5ecf7b4eSGunnar Mills                        "null",
274*5ecf7b4eSGunnar Mills                        "object",
275*5ecf7b4eSGunnar Mills                        "string"
276*5ecf7b4eSGunnar Mills                    ]
277*5ecf7b4eSGunnar Mills                }
278*5ecf7b4eSGunnar Mills            },
279*5ecf7b4eSGunnar Mills            "properties": {
280*5ecf7b4eSGunnar Mills                "Capable": {
281*5ecf7b4eSGunnar Mills                    "description": "An indication of whether this controller is capable of data center bridging (DCB).",
282*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall indicate whether this controller is capable of data center bridging (DCB).",
283*5ecf7b4eSGunnar Mills                    "readonly": true,
284*5ecf7b4eSGunnar Mills                    "type": [
285*5ecf7b4eSGunnar Mills                        "boolean",
286*5ecf7b4eSGunnar Mills                        "null"
287*5ecf7b4eSGunnar Mills                    ]
288*5ecf7b4eSGunnar Mills                }
289*5ecf7b4eSGunnar Mills            },
290*5ecf7b4eSGunnar Mills            "type": "object"
291*5ecf7b4eSGunnar Mills        },
292*5ecf7b4eSGunnar Mills        "NPIV": {
293*5ecf7b4eSGunnar Mills            "additionalProperties": false,
294*5ecf7b4eSGunnar Mills            "description": "N_Port ID Virtualization (NPIV) capabilities for a controller.",
295*5ecf7b4eSGunnar Mills            "longDescription": "This type shall contain N_Port ID Virtualization (NPIV) capabilities for a controller.",
296*5ecf7b4eSGunnar Mills            "patternProperties": {
297*5ecf7b4eSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
298*5ecf7b4eSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
299*5ecf7b4eSGunnar Mills                    "type": [
300*5ecf7b4eSGunnar Mills                        "array",
301*5ecf7b4eSGunnar Mills                        "boolean",
302*5ecf7b4eSGunnar Mills                        "integer",
303*5ecf7b4eSGunnar Mills                        "number",
304*5ecf7b4eSGunnar Mills                        "null",
305*5ecf7b4eSGunnar Mills                        "object",
306*5ecf7b4eSGunnar Mills                        "string"
307*5ecf7b4eSGunnar Mills                    ]
308*5ecf7b4eSGunnar Mills                }
309*5ecf7b4eSGunnar Mills            },
310*5ecf7b4eSGunnar Mills            "properties": {
311*5ecf7b4eSGunnar Mills                "MaxDeviceLogins": {
312*5ecf7b4eSGunnar Mills                    "description": "The maximum number of N_Port ID Virtualization (NPIV) logins allowed simultaneously from all ports on this controller.",
313*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the maximum number of N_Port ID Virtualization (NPIV) logins allowed simultaneously from all ports on this controller.",
314*5ecf7b4eSGunnar Mills                    "readonly": true,
315*5ecf7b4eSGunnar Mills                    "type": [
316*5ecf7b4eSGunnar Mills                        "integer",
317*5ecf7b4eSGunnar Mills                        "null"
318*5ecf7b4eSGunnar Mills                    ]
319*5ecf7b4eSGunnar Mills                },
320*5ecf7b4eSGunnar Mills                "MaxPortLogins": {
321*5ecf7b4eSGunnar Mills                    "description": "The maximum number of N_Port ID Virtualization (NPIV) logins allowed per physical port on this controller.",
322*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the maximum number of N_Port ID Virtualization (NPIV) logins allowed per physical port on this controller.",
323*5ecf7b4eSGunnar Mills                    "readonly": true,
324*5ecf7b4eSGunnar Mills                    "type": [
325*5ecf7b4eSGunnar Mills                        "integer",
326*5ecf7b4eSGunnar Mills                        "null"
327*5ecf7b4eSGunnar Mills                    ]
328*5ecf7b4eSGunnar Mills                }
329*5ecf7b4eSGunnar Mills            },
330*5ecf7b4eSGunnar Mills            "type": "object"
331*5ecf7b4eSGunnar Mills        },
332*5ecf7b4eSGunnar Mills        "NetworkAdapter": {
333*5ecf7b4eSGunnar Mills            "additionalProperties": false,
334*5ecf7b4eSGunnar Mills            "description": "The `NetworkAdapter` schema represents a physical network adapter capable of connecting to a computer network.  Examples include but are not limited to Ethernet, Fibre Channel, and converged network adapters.",
335*5ecf7b4eSGunnar Mills            "longDescription": "This resource shall represent a physical network adapter capable of connecting to a computer network in a Redfish implementation.  Services should represent adapters that contain multiple controllers with independent management interfaces as multiple `NetworkAdapter` resources.",
336*5ecf7b4eSGunnar Mills            "patternProperties": {
337*5ecf7b4eSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
338*5ecf7b4eSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
339*5ecf7b4eSGunnar Mills                    "type": [
340*5ecf7b4eSGunnar Mills                        "array",
341*5ecf7b4eSGunnar Mills                        "boolean",
342*5ecf7b4eSGunnar Mills                        "integer",
343*5ecf7b4eSGunnar Mills                        "number",
344*5ecf7b4eSGunnar Mills                        "null",
345*5ecf7b4eSGunnar Mills                        "object",
346*5ecf7b4eSGunnar Mills                        "string"
347*5ecf7b4eSGunnar Mills                    ]
348*5ecf7b4eSGunnar Mills                }
349*5ecf7b4eSGunnar Mills            },
350*5ecf7b4eSGunnar Mills            "properties": {
351*5ecf7b4eSGunnar Mills                "@odata.context": {
352*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/context"
353*5ecf7b4eSGunnar Mills                },
354*5ecf7b4eSGunnar Mills                "@odata.etag": {
355*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/etag"
356*5ecf7b4eSGunnar Mills                },
357*5ecf7b4eSGunnar Mills                "@odata.id": {
358*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/id"
359*5ecf7b4eSGunnar Mills                },
360*5ecf7b4eSGunnar Mills                "@odata.type": {
361*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/type"
362*5ecf7b4eSGunnar Mills                },
363*5ecf7b4eSGunnar Mills                "Actions": {
364*5ecf7b4eSGunnar Mills                    "$ref": "#/definitions/Actions",
365*5ecf7b4eSGunnar Mills                    "description": "The available actions for this resource.",
366*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the available actions for this resource."
367*5ecf7b4eSGunnar Mills                },
368*5ecf7b4eSGunnar Mills                "Assembly": {
369*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Assembly.json#/definitions/Assembly",
370*5ecf7b4eSGunnar Mills                    "description": "The link to the assembly resource associated with this adapter.",
371*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain a link to a resource of type `Assembly`.",
372*5ecf7b4eSGunnar Mills                    "readonly": true,
373*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_1_0"
374*5ecf7b4eSGunnar Mills                },
375*5ecf7b4eSGunnar Mills                "Certificates": {
376*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/CertificateCollection.json#/definitions/CertificateCollection",
377*5ecf7b4eSGunnar Mills                    "description": "The link to a collection of certificates for device identity and attestation.",
378*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain a link to a resource collection of type `CertificateCollection` that contains certificates for device identity and attestation.",
379*5ecf7b4eSGunnar Mills                    "readonly": true,
380*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_6_0"
381*5ecf7b4eSGunnar Mills                },
382*5ecf7b4eSGunnar Mills                "Controllers": {
383*5ecf7b4eSGunnar Mills                    "description": "The set of network controllers ASICs that make up this NetworkAdapter.",
384*5ecf7b4eSGunnar Mills                    "items": {
385*5ecf7b4eSGunnar Mills                        "$ref": "#/definitions/Controllers"
386*5ecf7b4eSGunnar Mills                    },
387*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the set of network controllers ASICs that make up this network adapter.",
388*5ecf7b4eSGunnar Mills                    "type": "array"
389*5ecf7b4eSGunnar Mills                },
390*5ecf7b4eSGunnar Mills                "Description": {
391*5ecf7b4eSGunnar Mills                    "anyOf": [
392*5ecf7b4eSGunnar Mills                        {
393*5ecf7b4eSGunnar Mills                            "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Description"
394*5ecf7b4eSGunnar Mills                        },
395*5ecf7b4eSGunnar Mills                        {
396*5ecf7b4eSGunnar Mills                            "type": "null"
397*5ecf7b4eSGunnar Mills                        }
398*5ecf7b4eSGunnar Mills                    ],
399*5ecf7b4eSGunnar Mills                    "readonly": true
400*5ecf7b4eSGunnar Mills                },
401*5ecf7b4eSGunnar Mills                "EnvironmentMetrics": {
402*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/EnvironmentMetrics.json#/definitions/EnvironmentMetrics",
403*5ecf7b4eSGunnar Mills                    "description": "The link to the environment metrics for this network adapter.",
404*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain a link to a resource of type `EnvironmentMetrics` that specifies the environment metrics for this network adapter.",
405*5ecf7b4eSGunnar Mills                    "readonly": true,
406*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_7_0"
407*5ecf7b4eSGunnar Mills                },
408*5ecf7b4eSGunnar Mills                "Id": {
409*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Id",
410*5ecf7b4eSGunnar Mills                    "readonly": true
411*5ecf7b4eSGunnar Mills                },
412*5ecf7b4eSGunnar Mills                "Identifiers": {
413*5ecf7b4eSGunnar Mills                    "description": "The durable names for the network adapter.",
414*5ecf7b4eSGunnar Mills                    "items": {
415*5ecf7b4eSGunnar Mills                        "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Identifier"
416*5ecf7b4eSGunnar Mills                    },
417*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain a list of all known durable names for the network adapter.",
418*5ecf7b4eSGunnar Mills                    "type": "array",
419*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_4_0"
420*5ecf7b4eSGunnar Mills                },
421*5ecf7b4eSGunnar Mills                "LLDPEnabled": {
422*5ecf7b4eSGunnar Mills                    "description": "Enable or disable LLDP globally for an adapter.",
423*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the state indicating whether LLDP is globally enabled on a network adapter.  If set to `false`, the `LLDPEnabled` value for the ports associated with this adapter shall be disregarded.",
424*5ecf7b4eSGunnar Mills                    "readonly": false,
425*5ecf7b4eSGunnar Mills                    "type": "boolean",
426*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_7_0"
427*5ecf7b4eSGunnar Mills                },
428*5ecf7b4eSGunnar Mills                "Location": {
429*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Location",
430*5ecf7b4eSGunnar Mills                    "description": "The location of the network adapter.",
431*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the location information of the network adapter.",
432*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_4_0"
433*5ecf7b4eSGunnar Mills                },
434*5ecf7b4eSGunnar Mills                "Manufacturer": {
435*5ecf7b4eSGunnar Mills                    "description": "The manufacturer or OEM of this network adapter.",
436*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain a value that represents the manufacturer of the network adapter.",
437*5ecf7b4eSGunnar Mills                    "readonly": true,
438*5ecf7b4eSGunnar Mills                    "type": [
439*5ecf7b4eSGunnar Mills                        "string",
440*5ecf7b4eSGunnar Mills                        "null"
441*5ecf7b4eSGunnar Mills                    ]
442*5ecf7b4eSGunnar Mills                },
443*5ecf7b4eSGunnar Mills                "Measurements": {
444*5ecf7b4eSGunnar Mills                    "deprecated": "This property has been deprecated in favor of the `ComponentIntegrity` resource.",
445*5ecf7b4eSGunnar Mills                    "description": "An array of DSP0274-defined measurement blocks.",
446*5ecf7b4eSGunnar Mills                    "items": {
447*5ecf7b4eSGunnar Mills                        "$ref": "http://redfish.dmtf.org/schemas/v1/SoftwareInventory.json#/definitions/MeasurementBlock"
448*5ecf7b4eSGunnar Mills                    },
449*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain an array of DSP0274-defined measurement blocks.",
450*5ecf7b4eSGunnar Mills                    "type": "array",
451*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_6_0",
452*5ecf7b4eSGunnar Mills                    "versionDeprecated": "v1_9_0"
453*5ecf7b4eSGunnar Mills                },
454*5ecf7b4eSGunnar Mills                "Metrics": {
455*5ecf7b4eSGunnar Mills                    "anyOf": [
456*5ecf7b4eSGunnar Mills                        {
457*5ecf7b4eSGunnar Mills                            "$ref": "http://redfish.dmtf.org/schemas/v1/NetworkAdapterMetrics.json#/definitions/NetworkAdapterMetrics"
458*5ecf7b4eSGunnar Mills                        },
459*5ecf7b4eSGunnar Mills                        {
460*5ecf7b4eSGunnar Mills                            "type": "null"
461*5ecf7b4eSGunnar Mills                        }
462*5ecf7b4eSGunnar Mills                    ],
463*5ecf7b4eSGunnar Mills                    "description": "The link to the metrics associated with this adapter.",
464*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain a link to a resource of type `NetworkAdapterMetrics` that contains the metrics associated with this adapter.",
465*5ecf7b4eSGunnar Mills                    "readonly": true,
466*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_7_0"
467*5ecf7b4eSGunnar Mills                },
468*5ecf7b4eSGunnar Mills                "Model": {
469*5ecf7b4eSGunnar Mills                    "description": "The model string for this network adapter.",
470*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the information about how the manufacturer refers to this network adapter.",
471*5ecf7b4eSGunnar Mills                    "readonly": true,
472*5ecf7b4eSGunnar Mills                    "type": [
473*5ecf7b4eSGunnar Mills                        "string",
474*5ecf7b4eSGunnar Mills                        "null"
475*5ecf7b4eSGunnar Mills                    ]
476*5ecf7b4eSGunnar Mills                },
477*5ecf7b4eSGunnar Mills                "Name": {
478*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Name",
479*5ecf7b4eSGunnar Mills                    "readonly": true
480*5ecf7b4eSGunnar Mills                },
481*5ecf7b4eSGunnar Mills                "NetworkDeviceFunctions": {
482*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/NetworkDeviceFunctionCollection.json#/definitions/NetworkDeviceFunctionCollection",
483*5ecf7b4eSGunnar Mills                    "description": "The link to the collection of network device functions associated with this network adapter.",
484*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain a link to a resource collection of type `NetworkDeviceFunctionCollection`.",
485*5ecf7b4eSGunnar Mills                    "readonly": true
486*5ecf7b4eSGunnar Mills                },
487*5ecf7b4eSGunnar Mills                "NetworkPorts": {
488*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/NetworkPortCollection.json#/definitions/NetworkPortCollection",
489*5ecf7b4eSGunnar Mills                    "deprecated": "This property has been deprecated in favor of the `Ports` property.",
490*5ecf7b4eSGunnar Mills                    "description": "The link to the collection of network ports associated with this network adapter.",
491*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain a link to a resource collection of type `NetworkPortCollection`.",
492*5ecf7b4eSGunnar Mills                    "readonly": true,
493*5ecf7b4eSGunnar Mills                    "versionDeprecated": "v1_5_0"
494*5ecf7b4eSGunnar Mills                },
495*5ecf7b4eSGunnar Mills                "Oem": {
496*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
497*5ecf7b4eSGunnar Mills                    "description": "The OEM extension property.",
498*5ecf7b4eSGunnar 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."
499*5ecf7b4eSGunnar Mills                },
500*5ecf7b4eSGunnar Mills                "PartNumber": {
501*5ecf7b4eSGunnar Mills                    "description": "Part number for this network adapter.",
502*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the part number for the network adapter as defined by the manufacturer.",
503*5ecf7b4eSGunnar Mills                    "readonly": true,
504*5ecf7b4eSGunnar Mills                    "type": [
505*5ecf7b4eSGunnar Mills                        "string",
506*5ecf7b4eSGunnar Mills                        "null"
507*5ecf7b4eSGunnar Mills                    ]
508*5ecf7b4eSGunnar Mills                },
509*5ecf7b4eSGunnar Mills                "PortSplitting": {
510*5ecf7b4eSGunnar Mills                    "anyOf": [
511*5ecf7b4eSGunnar Mills                        {
512*5ecf7b4eSGunnar Mills                            "$ref": "#/definitions/PortSplitting"
513*5ecf7b4eSGunnar Mills                        },
514*5ecf7b4eSGunnar Mills                        {
515*5ecf7b4eSGunnar Mills                            "type": "null"
516*5ecf7b4eSGunnar Mills                        }
517*5ecf7b4eSGunnar Mills                    ],
518*5ecf7b4eSGunnar Mills                    "description": "The port splitting capabilities for this controller.",
519*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain capability, status, and configuration values related to physically subdividing the lanes of ports on this controller.",
520*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_13_0"
521*5ecf7b4eSGunnar Mills                },
522*5ecf7b4eSGunnar Mills                "Ports": {
523*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/PortCollection.json#/definitions/PortCollection",
524*5ecf7b4eSGunnar Mills                    "description": "The link to the collection of ports associated with this network adapter.",
525*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain a link to a resource collection of type `PortCollection`.",
526*5ecf7b4eSGunnar Mills                    "readonly": true,
527*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_5_0"
528*5ecf7b4eSGunnar Mills                },
529*5ecf7b4eSGunnar Mills                "Processors": {
530*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/ProcessorCollection.json#/definitions/ProcessorCollection",
531*5ecf7b4eSGunnar Mills                    "description": "The link to the collection of offload processors contained in this network adapter.",
532*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain a link to a resource collection of type `ProcessorCollection` that represent the offload processors contained in this network adapter.",
533*5ecf7b4eSGunnar Mills                    "readonly": true,
534*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_8_0"
535*5ecf7b4eSGunnar Mills                },
536*5ecf7b4eSGunnar Mills                "SKU": {
537*5ecf7b4eSGunnar Mills                    "description": "The manufacturer SKU for this network adapter.",
538*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the SKU for the network adapter.",
539*5ecf7b4eSGunnar Mills                    "readonly": true,
540*5ecf7b4eSGunnar Mills                    "type": [
541*5ecf7b4eSGunnar Mills                        "string",
542*5ecf7b4eSGunnar Mills                        "null"
543*5ecf7b4eSGunnar Mills                    ]
544*5ecf7b4eSGunnar Mills                },
545*5ecf7b4eSGunnar Mills                "SerialNumber": {
546*5ecf7b4eSGunnar Mills                    "description": "The serial number for this network adapter.",
547*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the serial number for the network adapter.",
548*5ecf7b4eSGunnar Mills                    "readonly": true,
549*5ecf7b4eSGunnar Mills                    "type": [
550*5ecf7b4eSGunnar Mills                        "string",
551*5ecf7b4eSGunnar Mills                        "null"
552*5ecf7b4eSGunnar Mills                    ]
553*5ecf7b4eSGunnar Mills                },
554*5ecf7b4eSGunnar Mills                "Status": {
555*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Status",
556*5ecf7b4eSGunnar Mills                    "description": "The status and health of the resource and its subordinate or dependent resources.",
557*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain any status or health properties of the resource."
558*5ecf7b4eSGunnar Mills                }
559*5ecf7b4eSGunnar Mills            },
560*5ecf7b4eSGunnar Mills            "required": [
561*5ecf7b4eSGunnar Mills                "@odata.id",
562*5ecf7b4eSGunnar Mills                "@odata.type",
563*5ecf7b4eSGunnar Mills                "Id",
564*5ecf7b4eSGunnar Mills                "Name"
565*5ecf7b4eSGunnar Mills            ],
566*5ecf7b4eSGunnar Mills            "type": "object"
567*5ecf7b4eSGunnar Mills        },
568*5ecf7b4eSGunnar Mills        "NicPartitioning": {
569*5ecf7b4eSGunnar Mills            "additionalProperties": false,
570*5ecf7b4eSGunnar Mills            "description": "NIC Partitioning capability, status, and configuration for a controller.",
571*5ecf7b4eSGunnar Mills            "longDescription": "This type shall contain the capability, status, and configuration values for a controller.",
572*5ecf7b4eSGunnar Mills            "patternProperties": {
573*5ecf7b4eSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
574*5ecf7b4eSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
575*5ecf7b4eSGunnar Mills                    "type": [
576*5ecf7b4eSGunnar Mills                        "array",
577*5ecf7b4eSGunnar Mills                        "boolean",
578*5ecf7b4eSGunnar Mills                        "integer",
579*5ecf7b4eSGunnar Mills                        "number",
580*5ecf7b4eSGunnar Mills                        "null",
581*5ecf7b4eSGunnar Mills                        "object",
582*5ecf7b4eSGunnar Mills                        "string"
583*5ecf7b4eSGunnar Mills                    ]
584*5ecf7b4eSGunnar Mills                }
585*5ecf7b4eSGunnar Mills            },
586*5ecf7b4eSGunnar Mills            "properties": {
587*5ecf7b4eSGunnar Mills                "NparCapable": {
588*5ecf7b4eSGunnar Mills                    "description": "An indication of whether the controller supports NIC function partitioning.",
589*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall indicate whether the controller supports NIC function partitioning.",
590*5ecf7b4eSGunnar Mills                    "readonly": true,
591*5ecf7b4eSGunnar Mills                    "type": [
592*5ecf7b4eSGunnar Mills                        "boolean",
593*5ecf7b4eSGunnar Mills                        "null"
594*5ecf7b4eSGunnar Mills                    ],
595*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_2_0"
596*5ecf7b4eSGunnar Mills                },
597*5ecf7b4eSGunnar Mills                "NparEnabled": {
598*5ecf7b4eSGunnar Mills                    "description": "An indication of whether NIC function partitioning is active on this controller.",
599*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall indicate whether NIC function partitioning is active on this controller.",
600*5ecf7b4eSGunnar Mills                    "readonly": false,
601*5ecf7b4eSGunnar Mills                    "type": [
602*5ecf7b4eSGunnar Mills                        "boolean",
603*5ecf7b4eSGunnar Mills                        "null"
604*5ecf7b4eSGunnar Mills                    ],
605*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_2_0"
606*5ecf7b4eSGunnar Mills                }
607*5ecf7b4eSGunnar Mills            },
608*5ecf7b4eSGunnar Mills            "type": "object"
609*5ecf7b4eSGunnar Mills        },
610*5ecf7b4eSGunnar Mills        "OemActions": {
611*5ecf7b4eSGunnar Mills            "additionalProperties": true,
612*5ecf7b4eSGunnar Mills            "description": "The available OEM-specific actions for this resource.",
613*5ecf7b4eSGunnar Mills            "longDescription": "This type shall contain the available OEM-specific actions for this resource.",
614*5ecf7b4eSGunnar Mills            "patternProperties": {
615*5ecf7b4eSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
616*5ecf7b4eSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
617*5ecf7b4eSGunnar Mills                    "type": [
618*5ecf7b4eSGunnar Mills                        "array",
619*5ecf7b4eSGunnar Mills                        "boolean",
620*5ecf7b4eSGunnar Mills                        "integer",
621*5ecf7b4eSGunnar Mills                        "number",
622*5ecf7b4eSGunnar Mills                        "null",
623*5ecf7b4eSGunnar Mills                        "object",
624*5ecf7b4eSGunnar Mills                        "string"
625*5ecf7b4eSGunnar Mills                    ]
626*5ecf7b4eSGunnar Mills                }
627*5ecf7b4eSGunnar Mills            },
628*5ecf7b4eSGunnar Mills            "properties": {},
629*5ecf7b4eSGunnar Mills            "type": "object"
630*5ecf7b4eSGunnar Mills        },
631*5ecf7b4eSGunnar Mills        "PortSplitting": {
632*5ecf7b4eSGunnar Mills            "additionalProperties": false,
633*5ecf7b4eSGunnar Mills            "description": "The port splitting capabilities for a controller.",
634*5ecf7b4eSGunnar Mills            "longDescription": "This type shall contain capability, status, and configuration values related to physically subdividing the lanes of ports on a controller.",
635*5ecf7b4eSGunnar Mills            "patternProperties": {
636*5ecf7b4eSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
637*5ecf7b4eSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
638*5ecf7b4eSGunnar Mills                    "type": [
639*5ecf7b4eSGunnar Mills                        "array",
640*5ecf7b4eSGunnar Mills                        "boolean",
641*5ecf7b4eSGunnar Mills                        "integer",
642*5ecf7b4eSGunnar Mills                        "number",
643*5ecf7b4eSGunnar Mills                        "null",
644*5ecf7b4eSGunnar Mills                        "object",
645*5ecf7b4eSGunnar Mills                        "string"
646*5ecf7b4eSGunnar Mills                    ]
647*5ecf7b4eSGunnar Mills                }
648*5ecf7b4eSGunnar Mills            },
649*5ecf7b4eSGunnar Mills            "properties": {
650*5ecf7b4eSGunnar Mills                "CurrentConfiguration": {
651*5ecf7b4eSGunnar Mills                    "description": "The current port splitting configuration for this controller.",
652*5ecf7b4eSGunnar Mills                    "items": {
653*5ecf7b4eSGunnar Mills                        "$ref": "#/definitions/PortSplittingSubconfiguration"
654*5ecf7b4eSGunnar Mills                    },
655*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the current port splitting configuration for this controller.",
656*5ecf7b4eSGunnar Mills                    "type": "array",
657*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_13_0"
658*5ecf7b4eSGunnar Mills                },
659*5ecf7b4eSGunnar Mills                "MaximumSubports": {
660*5ecf7b4eSGunnar Mills                    "description": "The maximum number of subdivided ports that this controller supports.",
661*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the maximum number of subdivided ports that this controller supports.",
662*5ecf7b4eSGunnar Mills                    "readonly": true,
663*5ecf7b4eSGunnar Mills                    "type": [
664*5ecf7b4eSGunnar Mills                        "integer",
665*5ecf7b4eSGunnar Mills                        "null"
666*5ecf7b4eSGunnar Mills                    ],
667*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_13_0"
668*5ecf7b4eSGunnar Mills                },
669*5ecf7b4eSGunnar Mills                "MaximumSubportsPerPort": {
670*5ecf7b4eSGunnar Mills                    "description": "The maximum number of subdivided ports split from a single physical port that this controller supports.",
671*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the maximum number of subdivided ports split from a single physical port that this controller supports.",
672*5ecf7b4eSGunnar Mills                    "readonly": true,
673*5ecf7b4eSGunnar Mills                    "type": [
674*5ecf7b4eSGunnar Mills                        "integer",
675*5ecf7b4eSGunnar Mills                        "null"
676*5ecf7b4eSGunnar Mills                    ],
677*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_13_0"
678*5ecf7b4eSGunnar Mills                },
679*5ecf7b4eSGunnar Mills                "SupportedConfigurations": {
680*5ecf7b4eSGunnar Mills                    "description": "The port splitting configurations this controller supports.",
681*5ecf7b4eSGunnar Mills                    "items": {
682*5ecf7b4eSGunnar Mills                        "$ref": "#/definitions/PortSplittingSubconfigurationList"
683*5ecf7b4eSGunnar Mills                    },
684*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the port splitting configurations that this controller supports.  Properties contained in this property shall be read-only.",
685*5ecf7b4eSGunnar Mills                    "type": "array",
686*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_13_0"
687*5ecf7b4eSGunnar Mills                }
688*5ecf7b4eSGunnar Mills            },
689*5ecf7b4eSGunnar Mills            "type": "object"
690*5ecf7b4eSGunnar Mills        },
691*5ecf7b4eSGunnar Mills        "PortSplittingSubconfiguration": {
692*5ecf7b4eSGunnar Mills            "additionalProperties": false,
693*5ecf7b4eSGunnar Mills            "description": "A port splitting subconfiguration for one or more physical ports on a controller.",
694*5ecf7b4eSGunnar Mills            "longDescription": "This type shall contain a port splitting subconfiguration for one or more physical ports on a controller.",
695*5ecf7b4eSGunnar Mills            "patternProperties": {
696*5ecf7b4eSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
697*5ecf7b4eSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
698*5ecf7b4eSGunnar Mills                    "type": [
699*5ecf7b4eSGunnar Mills                        "array",
700*5ecf7b4eSGunnar Mills                        "boolean",
701*5ecf7b4eSGunnar Mills                        "integer",
702*5ecf7b4eSGunnar Mills                        "number",
703*5ecf7b4eSGunnar Mills                        "null",
704*5ecf7b4eSGunnar Mills                        "object",
705*5ecf7b4eSGunnar Mills                        "string"
706*5ecf7b4eSGunnar Mills                    ]
707*5ecf7b4eSGunnar Mills                }
708*5ecf7b4eSGunnar Mills            },
709*5ecf7b4eSGunnar Mills            "properties": {
710*5ecf7b4eSGunnar Mills                "EndingPhysicalPort": {
711*5ecf7b4eSGunnar Mills                    "description": "The last physical port to which this subconfiguration applies.",
712*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the last physical port to which this subconfiguration applies.  Specifically, the splitting for ports `StartPort` through `EndPort`, inclusive, is characterized by this subconfiguration.  Each set of subconfigurations shall cover all physical ports on the controller and shall describe splitting for each port exactly once.",
713*5ecf7b4eSGunnar Mills                    "readonly": false,
714*5ecf7b4eSGunnar Mills                    "type": [
715*5ecf7b4eSGunnar Mills                        "integer",
716*5ecf7b4eSGunnar Mills                        "null"
717*5ecf7b4eSGunnar Mills                    ],
718*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_13_0"
719*5ecf7b4eSGunnar Mills                },
720*5ecf7b4eSGunnar Mills                "FirstSubportId": {
721*5ecf7b4eSGunnar Mills                    "description": "The first identifier to assign to subports in this subconfiguration.  Subport identifiers are assigned sequentially to the subports starting with those for `StartPort` and working through to those for `EndPort`.",
722*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the first identifier to assign to subports in this subconfiguration.  Subport identifiers shall be assigned sequentially to the subports starting with those for `StartPort` and working through to those for `EndPort`.",
723*5ecf7b4eSGunnar Mills                    "readonly": false,
724*5ecf7b4eSGunnar Mills                    "type": [
725*5ecf7b4eSGunnar Mills                        "integer",
726*5ecf7b4eSGunnar Mills                        "null"
727*5ecf7b4eSGunnar Mills                    ],
728*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_13_0"
729*5ecf7b4eSGunnar Mills                },
730*5ecf7b4eSGunnar Mills                "Lanes": {
731*5ecf7b4eSGunnar Mills                    "description": "The number of lanes for each subport.",
732*5ecf7b4eSGunnar Mills                    "items": {
733*5ecf7b4eSGunnar Mills                        "type": [
734*5ecf7b4eSGunnar Mills                            "integer",
735*5ecf7b4eSGunnar Mills                            "null"
736*5ecf7b4eSGunnar Mills                        ]
737*5ecf7b4eSGunnar Mills                    },
738*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the number of lanes for each subport.  The number of members in this array shall equal the value contained in `SubportsPerPort` in the enclosing subconfiguration.",
739*5ecf7b4eSGunnar Mills                    "readonly": false,
740*5ecf7b4eSGunnar Mills                    "type": "array",
741*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_13_0"
742*5ecf7b4eSGunnar Mills                },
743*5ecf7b4eSGunnar Mills                "LinkSpeedGbps": {
744*5ecf7b4eSGunnar Mills                    "description": "The configured link speed for each subport.",
745*5ecf7b4eSGunnar Mills                    "items": {
746*5ecf7b4eSGunnar Mills                        "type": [
747*5ecf7b4eSGunnar Mills                            "integer",
748*5ecf7b4eSGunnar Mills                            "null"
749*5ecf7b4eSGunnar Mills                        ]
750*5ecf7b4eSGunnar Mills                    },
751*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the configured link speed for each subport.  The number of members in this array shall equal the value contained in `SubportsPerPort` in the enclosing subconfiguration.",
752*5ecf7b4eSGunnar Mills                    "readonly": false,
753*5ecf7b4eSGunnar Mills                    "type": "array",
754*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_13_0"
755*5ecf7b4eSGunnar Mills                },
756*5ecf7b4eSGunnar Mills                "StartingPhysicalPort": {
757*5ecf7b4eSGunnar Mills                    "description": "The first physical port to which this subconfiguration applies.",
758*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the first physical port to which this subconfiguration applies.",
759*5ecf7b4eSGunnar Mills                    "readonly": false,
760*5ecf7b4eSGunnar Mills                    "type": [
761*5ecf7b4eSGunnar Mills                        "integer",
762*5ecf7b4eSGunnar Mills                        "null"
763*5ecf7b4eSGunnar Mills                    ],
764*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_13_0"
765*5ecf7b4eSGunnar Mills                },
766*5ecf7b4eSGunnar Mills                "SubportsPerPort": {
767*5ecf7b4eSGunnar Mills                    "description": "The number of subports created from each port in this subconfiguration.",
768*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the number of subports created from each port in this subconfiguration.",
769*5ecf7b4eSGunnar Mills                    "readonly": false,
770*5ecf7b4eSGunnar Mills                    "type": [
771*5ecf7b4eSGunnar Mills                        "integer",
772*5ecf7b4eSGunnar Mills                        "null"
773*5ecf7b4eSGunnar Mills                    ],
774*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_13_0"
775*5ecf7b4eSGunnar Mills                }
776*5ecf7b4eSGunnar Mills            },
777*5ecf7b4eSGunnar Mills            "type": "object"
778*5ecf7b4eSGunnar Mills        },
779*5ecf7b4eSGunnar Mills        "PortSplittingSubconfigurationList": {
780*5ecf7b4eSGunnar Mills            "additionalProperties": false,
781*5ecf7b4eSGunnar Mills            "description": "A port splitting configuration for a controller.",
782*5ecf7b4eSGunnar Mills            "longDescription": "This type shall contain a port splitting configuration for a controller.",
783*5ecf7b4eSGunnar Mills            "patternProperties": {
784*5ecf7b4eSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
785*5ecf7b4eSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
786*5ecf7b4eSGunnar Mills                    "type": [
787*5ecf7b4eSGunnar Mills                        "array",
788*5ecf7b4eSGunnar Mills                        "boolean",
789*5ecf7b4eSGunnar Mills                        "integer",
790*5ecf7b4eSGunnar Mills                        "number",
791*5ecf7b4eSGunnar Mills                        "null",
792*5ecf7b4eSGunnar Mills                        "object",
793*5ecf7b4eSGunnar Mills                        "string"
794*5ecf7b4eSGunnar Mills                    ]
795*5ecf7b4eSGunnar Mills                }
796*5ecf7b4eSGunnar Mills            },
797*5ecf7b4eSGunnar Mills            "properties": {
798*5ecf7b4eSGunnar Mills                "Subconfigurations": {
799*5ecf7b4eSGunnar Mills                    "description": "The set of subconfigurations that collectively define a port splitting configuration for this controller.",
800*5ecf7b4eSGunnar Mills                    "items": {
801*5ecf7b4eSGunnar Mills                        "$ref": "#/definitions/PortSplittingSubconfiguration"
802*5ecf7b4eSGunnar Mills                    },
803*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the set of subconfigurations that collectively define a port splitting configuration for this controller.",
804*5ecf7b4eSGunnar Mills                    "type": "array",
805*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_13_0"
806*5ecf7b4eSGunnar Mills                }
807*5ecf7b4eSGunnar Mills            },
808*5ecf7b4eSGunnar Mills            "type": "object"
809*5ecf7b4eSGunnar Mills        },
810*5ecf7b4eSGunnar Mills        "Reset": {
811*5ecf7b4eSGunnar Mills            "additionalProperties": false,
812*5ecf7b4eSGunnar Mills            "description": "This action resets the network adapter.",
813*5ecf7b4eSGunnar Mills            "longDescription": "This action shall reset a network adapter.",
814*5ecf7b4eSGunnar Mills            "parameters": {
815*5ecf7b4eSGunnar Mills                "ResetType": {
816*5ecf7b4eSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/ResetType",
817*5ecf7b4eSGunnar Mills                    "description": "The type of reset.",
818*5ecf7b4eSGunnar Mills                    "longDescription": "This parameter shall contain the type of reset.  The service can accept a request without the parameter and shall perform a `GracefulRestart`."
819*5ecf7b4eSGunnar Mills                }
820*5ecf7b4eSGunnar Mills            },
821*5ecf7b4eSGunnar Mills            "patternProperties": {
822*5ecf7b4eSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
823*5ecf7b4eSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
824*5ecf7b4eSGunnar Mills                    "type": [
825*5ecf7b4eSGunnar Mills                        "array",
826*5ecf7b4eSGunnar Mills                        "boolean",
827*5ecf7b4eSGunnar Mills                        "integer",
828*5ecf7b4eSGunnar Mills                        "number",
829*5ecf7b4eSGunnar Mills                        "null",
830*5ecf7b4eSGunnar Mills                        "object",
831*5ecf7b4eSGunnar Mills                        "string"
832*5ecf7b4eSGunnar Mills                    ]
833*5ecf7b4eSGunnar Mills                }
834*5ecf7b4eSGunnar Mills            },
835*5ecf7b4eSGunnar Mills            "properties": {
836*5ecf7b4eSGunnar Mills                "target": {
837*5ecf7b4eSGunnar Mills                    "description": "Link to invoke action",
838*5ecf7b4eSGunnar Mills                    "format": "uri-reference",
839*5ecf7b4eSGunnar Mills                    "type": "string"
840*5ecf7b4eSGunnar Mills                },
841*5ecf7b4eSGunnar Mills                "title": {
842*5ecf7b4eSGunnar Mills                    "description": "Friendly action name",
843*5ecf7b4eSGunnar Mills                    "type": "string"
844*5ecf7b4eSGunnar Mills                }
845*5ecf7b4eSGunnar Mills            },
846*5ecf7b4eSGunnar Mills            "type": "object",
847*5ecf7b4eSGunnar Mills            "versionAdded": "v1_11_0"
848*5ecf7b4eSGunnar Mills        },
849*5ecf7b4eSGunnar Mills        "ResetSettingsToDefault": {
850*5ecf7b4eSGunnar Mills            "additionalProperties": false,
851*5ecf7b4eSGunnar Mills            "description": "This action is to clear the settings back to factory defaults.",
852*5ecf7b4eSGunnar Mills            "longDescription": "This action shall reset of all active and pending settings back to factory default settings upon reset of the network adapter.",
853*5ecf7b4eSGunnar Mills            "parameters": {},
854*5ecf7b4eSGunnar Mills            "patternProperties": {
855*5ecf7b4eSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
856*5ecf7b4eSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
857*5ecf7b4eSGunnar Mills                    "type": [
858*5ecf7b4eSGunnar Mills                        "array",
859*5ecf7b4eSGunnar Mills                        "boolean",
860*5ecf7b4eSGunnar Mills                        "integer",
861*5ecf7b4eSGunnar Mills                        "number",
862*5ecf7b4eSGunnar Mills                        "null",
863*5ecf7b4eSGunnar Mills                        "object",
864*5ecf7b4eSGunnar Mills                        "string"
865*5ecf7b4eSGunnar Mills                    ]
866*5ecf7b4eSGunnar Mills                }
867*5ecf7b4eSGunnar Mills            },
868*5ecf7b4eSGunnar Mills            "properties": {
869*5ecf7b4eSGunnar Mills                "target": {
870*5ecf7b4eSGunnar Mills                    "description": "Link to invoke action",
871*5ecf7b4eSGunnar Mills                    "format": "uri-reference",
872*5ecf7b4eSGunnar Mills                    "type": "string"
873*5ecf7b4eSGunnar Mills                },
874*5ecf7b4eSGunnar Mills                "title": {
875*5ecf7b4eSGunnar Mills                    "description": "Friendly action name",
876*5ecf7b4eSGunnar Mills                    "type": "string"
877*5ecf7b4eSGunnar Mills                }
878*5ecf7b4eSGunnar Mills            },
879*5ecf7b4eSGunnar Mills            "type": "object"
880*5ecf7b4eSGunnar Mills        },
881*5ecf7b4eSGunnar Mills        "SRIOV": {
882*5ecf7b4eSGunnar Mills            "additionalProperties": false,
883*5ecf7b4eSGunnar Mills            "description": "Single-root input/output virtualization (SR-IOV) capabilities.",
884*5ecf7b4eSGunnar Mills            "longDescription": "This type shall contain single-root input/output virtualization (SR-IOV) capabilities.",
885*5ecf7b4eSGunnar Mills            "patternProperties": {
886*5ecf7b4eSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
887*5ecf7b4eSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
888*5ecf7b4eSGunnar Mills                    "type": [
889*5ecf7b4eSGunnar Mills                        "array",
890*5ecf7b4eSGunnar Mills                        "boolean",
891*5ecf7b4eSGunnar Mills                        "integer",
892*5ecf7b4eSGunnar Mills                        "number",
893*5ecf7b4eSGunnar Mills                        "null",
894*5ecf7b4eSGunnar Mills                        "object",
895*5ecf7b4eSGunnar Mills                        "string"
896*5ecf7b4eSGunnar Mills                    ]
897*5ecf7b4eSGunnar Mills                }
898*5ecf7b4eSGunnar Mills            },
899*5ecf7b4eSGunnar Mills            "properties": {
900*5ecf7b4eSGunnar Mills                "SRIOVEnabled": {
901*5ecf7b4eSGunnar Mills                    "description": "An indication of whether single root input/output virtualization (SR-IOV) is enabled for this controller.",
902*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall indicate whether single root input/output virtualization (SR-IOV) is enabled for this controller.",
903*5ecf7b4eSGunnar Mills                    "readonly": false,
904*5ecf7b4eSGunnar Mills                    "type": "boolean",
905*5ecf7b4eSGunnar Mills                    "versionAdded": "v1_12_0"
906*5ecf7b4eSGunnar Mills                },
907*5ecf7b4eSGunnar Mills                "SRIOVVEPACapable": {
908*5ecf7b4eSGunnar Mills                    "description": "An indication of whether this controller supports single root input/output virtualization (SR-IOV) in Virtual Ethernet Port Aggregator (VEPA) mode.",
909*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall indicate whether this controller supports single root input/output virtualization (SR-IOV) in Virtual Ethernet Port Aggregator (VEPA) mode.",
910*5ecf7b4eSGunnar Mills                    "readonly": true,
911*5ecf7b4eSGunnar Mills                    "type": [
912*5ecf7b4eSGunnar Mills                        "boolean",
913*5ecf7b4eSGunnar Mills                        "null"
914*5ecf7b4eSGunnar Mills                    ]
915*5ecf7b4eSGunnar Mills                }
916*5ecf7b4eSGunnar Mills            },
917*5ecf7b4eSGunnar Mills            "type": "object"
918*5ecf7b4eSGunnar Mills        },
919*5ecf7b4eSGunnar Mills        "VirtualFunction": {
920*5ecf7b4eSGunnar Mills            "additionalProperties": false,
921*5ecf7b4eSGunnar Mills            "description": "A virtual function of a controller.",
922*5ecf7b4eSGunnar Mills            "longDescription": "This type shall describe the capability, status, and configuration values related to a virtual function for a controller.",
923*5ecf7b4eSGunnar Mills            "patternProperties": {
924*5ecf7b4eSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
925*5ecf7b4eSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
926*5ecf7b4eSGunnar Mills                    "type": [
927*5ecf7b4eSGunnar Mills                        "array",
928*5ecf7b4eSGunnar Mills                        "boolean",
929*5ecf7b4eSGunnar Mills                        "integer",
930*5ecf7b4eSGunnar Mills                        "number",
931*5ecf7b4eSGunnar Mills                        "null",
932*5ecf7b4eSGunnar Mills                        "object",
933*5ecf7b4eSGunnar Mills                        "string"
934*5ecf7b4eSGunnar Mills                    ]
935*5ecf7b4eSGunnar Mills                }
936*5ecf7b4eSGunnar Mills            },
937*5ecf7b4eSGunnar Mills            "properties": {
938*5ecf7b4eSGunnar Mills                "DeviceMaxCount": {
939*5ecf7b4eSGunnar Mills                    "description": "The maximum number of virtual functions supported by this controller.",
940*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the maximum number of virtual functions supported by this controller.",
941*5ecf7b4eSGunnar Mills                    "readonly": true,
942*5ecf7b4eSGunnar Mills                    "type": [
943*5ecf7b4eSGunnar Mills                        "integer",
944*5ecf7b4eSGunnar Mills                        "null"
945*5ecf7b4eSGunnar Mills                    ]
946*5ecf7b4eSGunnar Mills                },
947*5ecf7b4eSGunnar Mills                "MinAssignmentGroupSize": {
948*5ecf7b4eSGunnar Mills                    "description": "The minimum number of virtual functions that can be allocated or moved between physical functions for this controller.",
949*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the minimum number of virtual functions that can be allocated or moved between physical functions for this controller.",
950*5ecf7b4eSGunnar Mills                    "readonly": true,
951*5ecf7b4eSGunnar Mills                    "type": [
952*5ecf7b4eSGunnar Mills                        "integer",
953*5ecf7b4eSGunnar Mills                        "null"
954*5ecf7b4eSGunnar Mills                    ]
955*5ecf7b4eSGunnar Mills                },
956*5ecf7b4eSGunnar Mills                "NetworkPortMaxCount": {
957*5ecf7b4eSGunnar Mills                    "description": "The maximum number of virtual functions supported per network port for this controller.",
958*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain the maximum number of virtual functions supported per network port for this controller.",
959*5ecf7b4eSGunnar Mills                    "readonly": true,
960*5ecf7b4eSGunnar Mills                    "type": [
961*5ecf7b4eSGunnar Mills                        "integer",
962*5ecf7b4eSGunnar Mills                        "null"
963*5ecf7b4eSGunnar Mills                    ]
964*5ecf7b4eSGunnar Mills                }
965*5ecf7b4eSGunnar Mills            },
966*5ecf7b4eSGunnar Mills            "type": "object"
967*5ecf7b4eSGunnar Mills        },
968*5ecf7b4eSGunnar Mills        "VirtualizationOffload": {
969*5ecf7b4eSGunnar Mills            "additionalProperties": false,
970*5ecf7b4eSGunnar Mills            "description": "A Virtualization offload capability of a controller.",
971*5ecf7b4eSGunnar Mills            "longDescription": "This type shall describe the capability, status, and configuration values related to a virtualization offload for a controller.",
972*5ecf7b4eSGunnar Mills            "patternProperties": {
973*5ecf7b4eSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
974*5ecf7b4eSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
975*5ecf7b4eSGunnar Mills                    "type": [
976*5ecf7b4eSGunnar Mills                        "array",
977*5ecf7b4eSGunnar Mills                        "boolean",
978*5ecf7b4eSGunnar Mills                        "integer",
979*5ecf7b4eSGunnar Mills                        "number",
980*5ecf7b4eSGunnar Mills                        "null",
981*5ecf7b4eSGunnar Mills                        "object",
982*5ecf7b4eSGunnar Mills                        "string"
983*5ecf7b4eSGunnar Mills                    ]
984*5ecf7b4eSGunnar Mills                }
985*5ecf7b4eSGunnar Mills            },
986*5ecf7b4eSGunnar Mills            "properties": {
987*5ecf7b4eSGunnar Mills                "SRIOV": {
988*5ecf7b4eSGunnar Mills                    "$ref": "#/definitions/SRIOV",
989*5ecf7b4eSGunnar Mills                    "description": "Single-root input/output virtualization (SR-IOV) capabilities.",
990*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall contain single-root input/output virtualization (SR-IOV) capabilities."
991*5ecf7b4eSGunnar Mills                },
992*5ecf7b4eSGunnar Mills                "VirtualFunction": {
993*5ecf7b4eSGunnar Mills                    "$ref": "#/definitions/VirtualFunction",
994*5ecf7b4eSGunnar Mills                    "description": "The virtual function of the controller.",
995*5ecf7b4eSGunnar Mills                    "longDescription": "This property shall describe the capability, status, and configuration values related to the virtual function for this controller."
996*5ecf7b4eSGunnar Mills                }
997*5ecf7b4eSGunnar Mills            },
998*5ecf7b4eSGunnar Mills            "type": "object"
999*5ecf7b4eSGunnar Mills        }
1000*5ecf7b4eSGunnar Mills    },
1001*5ecf7b4eSGunnar Mills    "language": "en",
1002*5ecf7b4eSGunnar Mills    "owningEntity": "DMTF",
1003*5ecf7b4eSGunnar Mills    "release": "2025.3",
1004*5ecf7b4eSGunnar Mills    "title": "#NetworkAdapter.v1_13_0.NetworkAdapter"
1005*5ecf7b4eSGunnar Mills}