1{
2    "$id": "http://redfish.dmtf.org/schemas/v1/Processor.v1_20_0.json",
3    "$ref": "#/definitions/Processor",
4    "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
5    "copyright": "Copyright 2014-2024 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright",
6    "definitions": {
7        "Actions": {
8            "additionalProperties": false,
9            "description": "The available actions for this resource.",
10            "longDescription": "This type shall contain the available actions for this resource.",
11            "patternProperties": {
12                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
13                    "description": "This property shall specify a valid odata or Redfish property.",
14                    "type": [
15                        "array",
16                        "boolean",
17                        "integer",
18                        "number",
19                        "null",
20                        "object",
21                        "string"
22                    ]
23                }
24            },
25            "properties": {
26                "#Processor.Reset": {
27                    "$ref": "#/definitions/Reset"
28                },
29                "#Processor.ResetToDefaults": {
30                    "$ref": "#/definitions/ResetToDefaults"
31                },
32                "Oem": {
33                    "$ref": "#/definitions/OemActions",
34                    "description": "The available OEM-specific actions for this resource.",
35                    "longDescription": "This property shall contain the available OEM-specific actions for this resource.",
36                    "versionAdded": "v1_1_0"
37                }
38            },
39            "type": "object"
40        },
41        "BaseSpeedPriorityState": {
42            "enum": [
43                "Enabled",
44                "Disabled"
45            ],
46            "enumDescriptions": {
47                "Disabled": "Base speed priority is disabled.",
48                "Enabled": "Base speed priority is enabled."
49            },
50            "type": "string"
51        },
52        "EthernetInterface": {
53            "additionalProperties": false,
54            "description": "This type defines an Ethernet interface.",
55            "longDescription": "These properties shall contain the definition for an Ethernet interface for a Redfish implementation.",
56            "patternProperties": {
57                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
58                    "description": "This property shall specify a valid odata or Redfish property.",
59                    "type": [
60                        "array",
61                        "boolean",
62                        "integer",
63                        "number",
64                        "null",
65                        "object",
66                        "string"
67                    ]
68                }
69            },
70            "properties": {
71                "MaxLanes": {
72                    "description": "The number of lanes supported by this interface.",
73                    "longDescription": "This property shall contain the maximum number of lanes supported by this interface.",
74                    "readonly": true,
75                    "type": [
76                        "integer",
77                        "null"
78                    ],
79                    "versionAdded": "v1_4_0"
80                },
81                "MaxSpeedMbps": {
82                    "description": "The maximum speed supported by this interface.",
83                    "longDescription": "This property shall contain the maximum speed supported by this interface.",
84                    "readonly": true,
85                    "type": [
86                        "integer",
87                        "null"
88                    ],
89                    "units": "Mbit/s",
90                    "versionAdded": "v1_4_0"
91                },
92                "Oem": {
93                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
94                    "description": "The OEM extension property.",
95                    "longDescription": "This property shall contain the OEM extensions.  All values for properties contained in this object shall conform to the Redfish Specification-described requirements.",
96                    "versionAdded": "v1_4_0"
97                }
98            },
99            "type": "object"
100        },
101        "FPGA": {
102            "additionalProperties": false,
103            "description": "The properties of the FPGA device.",
104            "longDescription": "This object shall contain the properties of the FPGA device represented by a processor.",
105            "patternProperties": {
106                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
107                    "description": "This property shall specify a valid odata or Redfish property.",
108                    "type": [
109                        "array",
110                        "boolean",
111                        "integer",
112                        "number",
113                        "null",
114                        "object",
115                        "string"
116                    ]
117                }
118            },
119            "properties": {
120                "ExternalInterfaces": {
121                    "description": "An array of the FPGA external interfaces.",
122                    "items": {
123                        "$ref": "#/definitions/ProcessorInterface"
124                    },
125                    "longDescription": "This property shall contain an array of objects that describe the external connectivity of the FPGA.",
126                    "type": "array",
127                    "versionAdded": "v1_4_0"
128                },
129                "FirmwareId": {
130                    "description": "The FPGA firmware identifier.",
131                    "longDescription": "This property shall contain a string describing the FPGA firmware identifier.",
132                    "readonly": true,
133                    "type": "string",
134                    "versionAdded": "v1_4_0"
135                },
136                "FirmwareManufacturer": {
137                    "description": "The FPGA firmware manufacturer.",
138                    "longDescription": "This property shall contain a string describing the FPGA firmware manufacturer.",
139                    "readonly": true,
140                    "type": "string",
141                    "versionAdded": "v1_4_0"
142                },
143                "FirmwareVersion": {
144                    "deprecated": "This property has been deprecated in favor of the `FirmwareVersion` property in the root of this resource.",
145                    "description": "The FPGA firmware version.",
146                    "longDescription": "This property shall contain a string describing the FPGA firmware version.",
147                    "readonly": true,
148                    "type": "string",
149                    "versionAdded": "v1_4_0",
150                    "versionDeprecated": "v1_9_0"
151                },
152                "FpgaType": {
153                    "$ref": "#/definitions/FpgaType",
154                    "description": "The FPGA type.",
155                    "longDescription": "This property shall contain a type of the FPGA device.",
156                    "readonly": true,
157                    "versionAdded": "v1_4_0"
158                },
159                "HostInterface": {
160                    "$ref": "#/definitions/ProcessorInterface",
161                    "deprecated": "This property has been deprecated in favor of the `SystemInterface` property in the root of this resource.",
162                    "description": "The FPGA interface to the host.",
163                    "longDescription": "This property shall contain an object that describes the connectivity to the host for system software to use.",
164                    "versionAdded": "v1_4_0",
165                    "versionDeprecated": "v1_8_0"
166                },
167                "Model": {
168                    "description": "The FPGA model.",
169                    "longDescription": "This property shall contain a model of the FPGA device.",
170                    "readonly": true,
171                    "type": "string",
172                    "versionAdded": "v1_4_0"
173                },
174                "Oem": {
175                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
176                    "description": "The OEM extension property.",
177                    "longDescription": "This property shall contain the OEM extensions.  All values for properties contained in this object shall conform to the Redfish Specification-described requirements.",
178                    "versionAdded": "v1_4_0"
179                },
180                "PCIeVirtualFunctions": {
181                    "description": "The number of PCIe Virtual Functions.",
182                    "longDescription": "This property shall contain an integer that describes the number of PCIe Virtual Functions configured within the FPGA.",
183                    "readonly": false,
184                    "type": "integer",
185                    "versionAdded": "v1_4_0"
186                },
187                "ProgrammableFromHost": {
188                    "description": "An indication of whether the FPGA firmware can be reprogrammed from the host by using system software.",
189                    "longDescription": "This property shall indicate whether the FPGA firmware can be reprogrammed from the host by using system software.  If `false`, system software shall not be able to program the FPGA firmware from the system interface.  In either state, a management controller may be able to program the FPGA firmware by using the sideband interface.",
190                    "readonly": false,
191                    "type": [
192                        "boolean",
193                        "null"
194                    ],
195                    "versionAdded": "v1_4_0"
196                },
197                "ReconfigurationSlots": {
198                    "description": "An array of the FPGA reconfiguration slots.  An FPGA uses a reconfiguration slot to contain an acceleration function that can change as the FPGA is provisioned.",
199                    "items": {
200                        "$ref": "#/definitions/FpgaReconfigurationSlot"
201                    },
202                    "longDescription": "This property shall contain an array of the structures that describe the FPGA reconfiguration slots that the acceleration functions can program.",
203                    "type": "array",
204                    "versionAdded": "v1_4_0"
205                }
206            },
207            "type": "object"
208        },
209        "FpgaReconfigurationSlot": {
210            "additionalProperties": false,
211            "description": "This type describes the FPGA reconfiguration slot.  An FPGA uses a reconfiguration slot to contain an acceleration function that can change as the FPGA is provisioned.",
212            "longDescription": "This type shall contain information about the FPGA reconfiguration slot.",
213            "patternProperties": {
214                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
215                    "description": "This property shall specify a valid odata or Redfish property.",
216                    "type": [
217                        "array",
218                        "boolean",
219                        "integer",
220                        "number",
221                        "null",
222                        "object",
223                        "string"
224                    ]
225                }
226            },
227            "properties": {
228                "AccelerationFunction": {
229                    "$ref": "http://redfish.dmtf.org/schemas/v1/AccelerationFunction.json#/definitions/AccelerationFunction",
230                    "description": "The link to the acceleration function that the code programmed into a reconfiguration slot provides.",
231                    "longDescription": "This property shall contain a link to a resource of type `AccelerationFunction` that represents the code programmed into this reconfiguration slot.",
232                    "readonly": true,
233                    "versionAdded": "v1_4_0"
234                },
235                "ProgrammableFromHost": {
236                    "description": "An indication of whether the reconfiguration slot can be reprogrammed from the host by using system software.",
237                    "longDescription": "This property shall indicate whether the reconfiguration slot can be reprogrammed from the host by using system software.  If `false`, system software shall not be able to program the reconfiguration slot from the system interface.  In either state, a management controller may be able to program the reconfiguration slot by using the sideband interface.",
238                    "readonly": false,
239                    "type": [
240                        "boolean",
241                        "null"
242                    ],
243                    "versionAdded": "v1_4_0"
244                },
245                "SlotId": {
246                    "description": "The FPGA reconfiguration slot identifier.",
247                    "longDescription": "This property shall contain the FPGA reconfiguration slot identifier.",
248                    "readonly": true,
249                    "type": [
250                        "string",
251                        "null"
252                    ],
253                    "versionAdded": "v1_4_0"
254                },
255                "UUID": {
256                    "anyOf": [
257                        {
258                            "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/UUID"
259                        },
260                        {
261                            "type": "null"
262                        }
263                    ],
264                    "description": "The UUID for this reconfiguration slot.",
265                    "longDescription": "This property shall contain a universally unique identifier number for the reconfiguration slot.",
266                    "readonly": true,
267                    "versionAdded": "v1_4_0"
268                }
269            },
270            "type": "object"
271        },
272        "FpgaType": {
273            "enum": [
274                "Integrated",
275                "Discrete"
276            ],
277            "enumDescriptions": {
278                "Discrete": "The discrete FPGA device.",
279                "Integrated": "The FPGA device integrated with other processor in the single chip."
280            },
281            "type": "string"
282        },
283        "InstructionSet": {
284            "enum": [
285                "x86",
286                "x86-64",
287                "IA-64",
288                "ARM-A32",
289                "ARM-A64",
290                "MIPS32",
291                "MIPS64",
292                "PowerISA",
293                "RV32",
294                "RV64",
295                "OEM"
296            ],
297            "enumDescriptions": {
298                "ARM-A32": "ARM 32-bit.",
299                "ARM-A64": "ARM 64-bit.",
300                "IA-64": "Intel IA-64.",
301                "MIPS32": "MIPS 32-bit.",
302                "MIPS64": "MIPS 64-bit.",
303                "OEM": "OEM-defined.",
304                "PowerISA": "PowerISA-64 or PowerISA-32.",
305                "RV32": "RISC-V 32-bit.",
306                "RV64": "RISC-V 64-bit.",
307                "x86": "x86 32-bit.",
308                "x86-64": "x86 64-bit."
309            },
310            "enumVersionAdded": {
311                "PowerISA": "v1_4_0",
312                "RV32": "v1_19_0",
313                "RV64": "v1_19_0"
314            },
315            "type": "string"
316        },
317        "Links": {
318            "additionalProperties": false,
319            "description": "The links to other resources that are related to this resource.",
320            "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.",
321            "patternProperties": {
322                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
323                    "description": "This property shall specify a valid odata or Redfish property.",
324                    "type": [
325                        "array",
326                        "boolean",
327                        "integer",
328                        "number",
329                        "null",
330                        "object",
331                        "string"
332                    ]
333                }
334            },
335            "properties": {
336                "Chassis": {
337                    "$ref": "http://redfish.dmtf.org/schemas/v1/Chassis.json#/definitions/Chassis",
338                    "description": "The link to the chassis that contains this processor.",
339                    "longDescription": "This property shall contain a link to a resource of type `Chassis` that represents the physical container associated with this processor.",
340                    "readonly": true,
341                    "versionAdded": "v1_1_0"
342                },
343                "ConnectedProcessors": {
344                    "description": "An array of links to the processors directly connected to this processor.",
345                    "items": {
346                        "$ref": "http://redfish.dmtf.org/schemas/v1/Processor.json#/definitions/Processor"
347                    },
348                    "longDescription": "This property shall contain an array of links to resources of type `Processor` that are directly connected to this processor.",
349                    "readonly": true,
350                    "type": "array",
351                    "versionAdded": "v1_4_0"
352                },
353                "ConnectedProcessors@odata.count": {
354                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
355                },
356                "Endpoints": {
357                    "description": "An array of links to the endpoints that connect to this processor.",
358                    "items": {
359                        "$ref": "http://redfish.dmtf.org/schemas/v1/Endpoint.json#/definitions/Endpoint"
360                    },
361                    "longDescription": "This property shall contain an array of links to resources of type `Endpoint` that represent endpoints associated with this processor.",
362                    "readonly": true,
363                    "type": "array",
364                    "versionAdded": "v1_4_0"
365                },
366                "Endpoints@odata.count": {
367                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
368                },
369                "FabricAdapters": {
370                    "description": "An array of links to the fabric adapters that present this processor to a fabric.",
371                    "items": {
372                        "$ref": "http://redfish.dmtf.org/schemas/v1/FabricAdapter.json#/definitions/FabricAdapter"
373                    },
374                    "longDescription": "This property shall contain an array of links to resources of type `FabricAdapter` that represent the fabric adapters that present this processor to a fabric.",
375                    "readonly": true,
376                    "type": "array",
377                    "versionAdded": "v1_17_0"
378                },
379                "FabricAdapters@odata.count": {
380                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
381                },
382                "GraphicsController": {
383                    "anyOf": [
384                        {
385                            "$ref": "http://redfish.dmtf.org/schemas/v1/GraphicsController.json#/definitions/GraphicsController"
386                        },
387                        {
388                            "type": "null"
389                        }
390                    ],
391                    "description": "A link to the graphics controller associated with this processor.",
392                    "longDescription": "This property shall contain a link to a resource of type `GraphicsController` that is associated with this processor.",
393                    "readonly": true,
394                    "versionAdded": "v1_12_0"
395                },
396                "Memory": {
397                    "description": "An array of links to the memory associated with this processor.",
398                    "items": {
399                        "$ref": "http://redfish.dmtf.org/schemas/v1/Memory.json#/definitions/Memory"
400                    },
401                    "longDescription": "This property shall contain an array of links to resources of type `Memory` that are associated with this processor.",
402                    "readonly": true,
403                    "type": "array",
404                    "versionAdded": "v1_11_0"
405                },
406                "Memory@odata.count": {
407                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
408                },
409                "NetworkDeviceFunctions": {
410                    "description": "The network device functions to which this processor performs offload computation, such as with a SmartNIC.",
411                    "items": {
412                        "$ref": "http://redfish.dmtf.org/schemas/v1/NetworkDeviceFunction.json#/definitions/NetworkDeviceFunction"
413                    },
414                    "longDescription": "This property shall contain an array of links to resources of type `NetworkDeviceFunction` that represent the network device functions to which this processor performs offload computation, such as with a SmartNIC.",
415                    "readonly": true,
416                    "type": "array",
417                    "versionAdded": "v1_13_0"
418                },
419                "NetworkDeviceFunctions@odata.count": {
420                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
421                },
422                "Oem": {
423                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
424                    "description": "The OEM extension property.",
425                    "longDescription": "This property shall contain the OEM extensions.  All values for properties contained in this object shall conform to the Redfish Specification-described requirements."
426                },
427                "PCIeDevice": {
428                    "$ref": "http://redfish.dmtf.org/schemas/v1/PCIeDevice.json#/definitions/PCIeDevice",
429                    "description": "The link to the PCIe device associated with this processor.",
430                    "longDescription": "This property shall contain a link to a resource of type `PCIeDevice` that represents the PCIe device associated with this processor.",
431                    "readonly": true,
432                    "versionAdded": "v1_4_0"
433                },
434                "PCIeFunctions": {
435                    "description": "An array of links to the PCIeFunctions associated with this processor.",
436                    "items": {
437                        "$ref": "http://redfish.dmtf.org/schemas/v1/PCIeFunction.json#/definitions/PCIeFunction"
438                    },
439                    "longDescription": "This property shall contain an array of links to resources of type `PCIeFunction` that represent the PCIe functions associated with this processor.",
440                    "readonly": true,
441                    "type": "array",
442                    "versionAdded": "v1_4_0"
443                },
444                "PCIeFunctions@odata.count": {
445                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
446                }
447            },
448            "type": "object"
449        },
450        "MemorySummary": {
451            "additionalProperties": false,
452            "description": "The summary of all memory associated with a processor.",
453            "longDescription": "This type shall contain properties that describe the summary of all memory that is associated with a processor.",
454            "patternProperties": {
455                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
456                    "description": "This property shall specify a valid odata or Redfish property.",
457                    "type": [
458                        "array",
459                        "boolean",
460                        "integer",
461                        "number",
462                        "null",
463                        "object",
464                        "string"
465                    ]
466                }
467            },
468            "properties": {
469                "ECCModeEnabled": {
470                    "description": "An indication of whether memory ECC mode is enabled for this processor.",
471                    "longDescription": "The value of this property shall indicate if memory ECC mode is enabled for this processor.  This value shall not affect system memory ECC mode.",
472                    "readonly": false,
473                    "type": [
474                        "boolean",
475                        "null"
476                    ],
477                    "versionAdded": "v1_13_0"
478                },
479                "Metrics": {
480                    "$ref": "http://redfish.dmtf.org/schemas/v1/MemoryMetrics.json#/definitions/MemoryMetrics",
481                    "description": "The link to the memory metrics associated with all memory of this processor.",
482                    "longDescription": "This property shall contain a link to a resource of type `MemoryMetrics` that contains the metrics associated with all memory of this processor.",
483                    "readonly": true,
484                    "uriSegment": "MemorySummary/MemoryMetrics",
485                    "versionAdded": "v1_11_0"
486                },
487                "TotalCacheSizeMiB": {
488                    "description": "Total size of cache memory of this processor.",
489                    "longDescription": "This property shall contain the total size of cache memory of this processor.",
490                    "readonly": true,
491                    "type": [
492                        "integer",
493                        "null"
494                    ],
495                    "units": "MiBy",
496                    "versionAdded": "v1_11_0"
497                },
498                "TotalMemorySizeMiB": {
499                    "description": "Total size of non-cache volatile or non-volatile memory attached to this processor.  Examples include DRAMs and NV-DIMMs that are not configured as block storage.",
500                    "longDescription": "This property shall contain the total size of non-cache volatile or non-volatile memory attached to this processor.  Examples include DRAMs and NV-DIMMs that are not configured as block storage.  This value indicates the size of memory directly attached or with strong affinity to this processor, not the total memory accessible by the processor.  This property shall not be present for implementations where all processors have equal memory performance or access characteristics, such as hop count, for all system memory.",
501                    "readonly": true,
502                    "type": [
503                        "integer",
504                        "null"
505                    ],
506                    "units": "MiBy",
507                    "versionAdded": "v1_11_0"
508                }
509            },
510            "type": "object"
511        },
512        "OemActions": {
513            "additionalProperties": true,
514            "description": "The available OEM-specific actions for this resource.",
515            "longDescription": "This type shall contain the available OEM-specific actions for this resource.",
516            "patternProperties": {
517                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
518                    "description": "This property shall specify a valid odata or Redfish property.",
519                    "type": [
520                        "array",
521                        "boolean",
522                        "integer",
523                        "number",
524                        "null",
525                        "object",
526                        "string"
527                    ]
528                }
529            },
530            "properties": {},
531            "type": "object"
532        },
533        "Processor": {
534            "additionalProperties": false,
535            "description": "The `Processor` schema describes the information about a single processor that a system contains.  A processor includes both performance characteristics, clock speed, architecture, core count, and so on, and compatibility, such as the CPU ID instruction results.  It also describes the location, such as a slot, socket, or bay, where a unit can be installed, by populating a resource instance with an absent state if a unit is not present.",
536            "longDescription": "This resource shall represent a single processor that a system contains.  A processor includes both performance characteristics, clock speed, architecture, core count, and so on, and compatibility, such as the CPU ID instruction results.  It may also represent a location, such as a slot, socket, or bay, where a unit may be installed, but the `State` property within the `Status` property contains `Absent`.",
537            "patternProperties": {
538                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
539                    "description": "This property shall specify a valid odata or Redfish property.",
540                    "type": [
541                        "array",
542                        "boolean",
543                        "integer",
544                        "number",
545                        "null",
546                        "object",
547                        "string"
548                    ]
549                }
550            },
551            "properties": {
552                "@odata.context": {
553                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/context"
554                },
555                "@odata.etag": {
556                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/etag"
557                },
558                "@odata.id": {
559                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/id"
560                },
561                "@odata.type": {
562                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/type"
563                },
564                "AccelerationFunctions": {
565                    "$ref": "http://redfish.dmtf.org/schemas/v1/AccelerationFunctionCollection.json#/definitions/AccelerationFunctionCollection",
566                    "description": "The link to the collection of acceleration functions associated with this processor.",
567                    "longDescription": "This property shall contain a link to a resource collection of type `AccelerationFunctionCollection`.",
568                    "readonly": true,
569                    "versionAdded": "v1_4_0"
570                },
571                "Actions": {
572                    "$ref": "#/definitions/Actions",
573                    "description": "The available actions for this resource.",
574                    "longDescription": "This property shall contain the available actions for this resource.",
575                    "versionAdded": "v1_1_0"
576                },
577                "AdditionalFirmwareVersions": {
578                    "$ref": "http://redfish.dmtf.org/schemas/v1/SoftwareInventory.json#/definitions/AdditionalVersions",
579                    "description": "The additional firmware versions of the processor.",
580                    "longDescription": "This property shall contain the additional firmware versions of the processor.",
581                    "versionAdded": "v1_15_0"
582                },
583                "AppliedOperatingConfig": {
584                    "$ref": "http://redfish.dmtf.org/schemas/v1/OperatingConfig.json#/definitions/OperatingConfig",
585                    "description": "The link to the operating configuration that is applied to this processor.",
586                    "longDescription": "This property shall contain a link to a resource of type `OperatingConfig` that specifies the configuration is applied to this processor.",
587                    "readonly": false,
588                    "versionAdded": "v1_9_0"
589                },
590                "Assembly": {
591                    "$ref": "http://redfish.dmtf.org/schemas/v1/Assembly.json#/definitions/Assembly",
592                    "description": "The link to an assembly associated with this processor.",
593                    "longDescription": "This property shall contain a link to a resource of type `Assembly`.",
594                    "readonly": true,
595                    "versionAdded": "v1_2_0"
596                },
597                "BaseSpeedMHz": {
598                    "description": "The base (nominal) clock speed of the processor in MHz.",
599                    "longDescription": "This property shall contain the base (nominal) clock speed of the processor in MHz.",
600                    "minimum": 0,
601                    "readonly": true,
602                    "type": [
603                        "integer",
604                        "null"
605                    ],
606                    "units": "MHz",
607                    "versionAdded": "v1_10_0"
608                },
609                "BaseSpeedPriorityState": {
610                    "anyOf": [
611                        {
612                            "$ref": "#/definitions/BaseSpeedPriorityState"
613                        },
614                        {
615                            "type": "null"
616                        }
617                    ],
618                    "description": "The state of the base frequency settings of the operation configuration applied to this processor.",
619                    "longDescription": "This property shall contain the state of the base frequency settings of the operating configuration applied to this processor.",
620                    "readonly": true,
621                    "versionAdded": "v1_9_0"
622                },
623                "CacheMemory": {
624                    "$ref": "http://redfish.dmtf.org/schemas/v1/MemoryCollection.json#/definitions/MemoryCollection",
625                    "description": "The link to the collection of cache memory associated with this processor.",
626                    "longDescription": "This property shall contain a link to a resource collection of type `MemoryCollection` that represents the cache memory of this processor.",
627                    "readonly": true,
628                    "versionAdded": "v1_20_0"
629                },
630                "Certificates": {
631                    "$ref": "http://redfish.dmtf.org/schemas/v1/CertificateCollection.json#/definitions/CertificateCollection",
632                    "description": "The link to a collection of certificates for device identity and attestation.",
633                    "longDescription": "This property shall contain a link to a resource collection of type `CertificateCollection` that contains certificates for device identity and attestation.",
634                    "readonly": true,
635                    "versionAdded": "v1_11_0"
636                },
637                "Description": {
638                    "anyOf": [
639                        {
640                            "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Description"
641                        },
642                        {
643                            "type": "null"
644                        }
645                    ],
646                    "readonly": true
647                },
648                "Enabled": {
649                    "description": "An indication of whether this processor is enabled.",
650                    "longDescription": "The value of this property shall indicate if this processor is enabled.",
651                    "readonly": false,
652                    "type": "boolean",
653                    "versionAdded": "v1_12_0"
654                },
655                "EnvironmentMetrics": {
656                    "$ref": "http://redfish.dmtf.org/schemas/v1/EnvironmentMetrics.json#/definitions/EnvironmentMetrics",
657                    "description": "The link to the environment metrics for this processor.",
658                    "longDescription": "This property shall contain a link to a resource of type `EnvironmentMetrics` that specifies the environment metrics for this processor.",
659                    "readonly": true,
660                    "versionAdded": "v1_11_0"
661                },
662                "FPGA": {
663                    "$ref": "#/definitions/FPGA",
664                    "description": "The properties for processors of the FPGA type.",
665                    "longDescription": "This property shall contain an object containing properties for processors of type `FPGA`.",
666                    "versionAdded": "v1_4_0"
667                },
668                "Family": {
669                    "description": "The processor family.",
670                    "longDescription": "This property shall contain a string that identifies the processor family, as specified by the combination of the `EffectiveFamily` and `EffectiveModel` properties.",
671                    "readonly": true,
672                    "type": [
673                        "string",
674                        "null"
675                    ],
676                    "versionAdded": "v1_16_0"
677                },
678                "FirmwareVersion": {
679                    "description": "The firmware version of the processor.",
680                    "longDescription": "This property shall contain a string describing the firmware version of the processor as provided by the manufacturer.",
681                    "readonly": true,
682                    "type": "string",
683                    "versionAdded": "v1_7_0"
684                },
685                "HighSpeedCoreIDs": {
686                    "description": "The list of core identifiers corresponding to the cores that have been configured with the higher clock speed from the operating configuration applied to this processor.",
687                    "items": {
688                        "type": [
689                            "integer",
690                            "null"
691                        ]
692                    },
693                    "longDescription": "This property shall contain an array of core identifiers corresponding to the cores that have been configured with the higher clock speed from the operating configuration applied to this processor.",
694                    "readonly": true,
695                    "type": "array",
696                    "versionAdded": "v1_9_0"
697                },
698                "Id": {
699                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Id",
700                    "readonly": true
701                },
702                "InstructionSet": {
703                    "anyOf": [
704                        {
705                            "$ref": "#/definitions/InstructionSet"
706                        },
707                        {
708                            "type": "null"
709                        }
710                    ],
711                    "description": "The instruction set of the processor.",
712                    "longDescription": "This property shall contain the string that identifies the instruction set of the processor contained in this socket.",
713                    "readonly": true
714                },
715                "Links": {
716                    "$ref": "#/definitions/Links",
717                    "description": "The links to other resources that are related to this resource.",
718                    "longDescription": "This property shall contain links to resources that are related to but are not contained by, or subordinate to, this resource.",
719                    "versionAdded": "v1_1_0"
720                },
721                "Location": {
722                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Location",
723                    "description": "The location of the processor.",
724                    "longDescription": "This property shall contain the location information of the associated processor.",
725                    "versionAdded": "v1_2_0"
726                },
727                "LocationIndicatorActive": {
728                    "description": "An indicator allowing an operator to physically locate this resource.",
729                    "longDescription": "This property shall contain the state of the indicator used to physically identify or locate this resource.  A write to this property shall update the value of `IndicatorLED` in this resource, if supported, to reflect the implementation of the locating function.",
730                    "readonly": false,
731                    "type": [
732                        "boolean",
733                        "null"
734                    ],
735                    "versionAdded": "v1_10_0"
736                },
737                "Manufacturer": {
738                    "description": "The processor manufacturer.",
739                    "longDescription": "This property shall contain a string that identifies the manufacturer of the processor.",
740                    "readonly": true,
741                    "type": [
742                        "string",
743                        "null"
744                    ]
745                },
746                "MaxSpeedMHz": {
747                    "description": "The maximum clock speed of the processor.",
748                    "longDescription": "This property shall indicate the maximum rated clock speed of the processor in MHz.",
749                    "readonly": true,
750                    "type": [
751                        "integer",
752                        "null"
753                    ],
754                    "units": "MHz"
755                },
756                "MaxTDPWatts": {
757                    "description": "The maximum Thermal Design Power (TDP) in watt units.",
758                    "longDescription": "This property shall contain the maximum Thermal Design Power (TDP) in watt units.",
759                    "readonly": true,
760                    "type": [
761                        "integer",
762                        "null"
763                    ],
764                    "units": "W",
765                    "versionAdded": "v1_4_0"
766                },
767                "Measurements": {
768                    "deprecated": "This property has been deprecated in favor of the `ComponentIntegrity` resource.",
769                    "description": "An array of DSP0274-defined measurement blocks.",
770                    "items": {
771                        "$ref": "http://redfish.dmtf.org/schemas/v1/SoftwareInventory.json#/definitions/MeasurementBlock"
772                    },
773                    "longDescription": "This property shall contain an array of DSP0274-defined measurement blocks.",
774                    "type": "array",
775                    "versionAdded": "v1_11_0",
776                    "versionDeprecated": "v1_14_0"
777                },
778                "MemorySummary": {
779                    "$ref": "#/definitions/MemorySummary",
780                    "description": "The summary of all memory associated with this processor.",
781                    "longDescription": "This property shall contain properties that describe the summary of all memory that is associated with this processor.",
782                    "versionAdded": "v1_11_0"
783                },
784                "Metrics": {
785                    "$ref": "http://redfish.dmtf.org/schemas/v1/ProcessorMetrics.json#/definitions/ProcessorMetrics",
786                    "description": "The link to the metrics associated with this processor.",
787                    "longDescription": "This property shall contain a link to a resource of type `ProcessorMetrics` that contains the metrics associated with this processor.",
788                    "readonly": true,
789                    "uriSegment": "ProcessorMetrics",
790                    "versionAdded": "v1_4_0"
791                },
792                "MinSpeedMHz": {
793                    "description": "The minimum clock speed of the processor in MHz.",
794                    "longDescription": "This property shall indicate the minimum rated clock speed of the processor in MHz.",
795                    "readonly": true,
796                    "type": [
797                        "integer",
798                        "null"
799                    ],
800                    "units": "MHz",
801                    "versionAdded": "v1_8_0"
802                },
803                "Model": {
804                    "description": "The product model number of this device.",
805                    "longDescription": "This property shall indicate the model information as provided by the manufacturer of this processor.",
806                    "readonly": true,
807                    "type": [
808                        "string",
809                        "null"
810                    ]
811                },
812                "Name": {
813                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Name",
814                    "readonly": true
815                },
816                "Oem": {
817                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
818                    "description": "The OEM extension property.",
819                    "longDescription": "This property shall contain the OEM extensions.  All values for properties that this object contains shall conform to the Redfish Specification-described requirements."
820                },
821                "OperatingConfigs": {
822                    "$ref": "http://redfish.dmtf.org/schemas/v1/OperatingConfigCollection.json#/definitions/OperatingConfigCollection",
823                    "description": "The link to the collection of operating configurations that can be applied to this processor.",
824                    "longDescription": "This property shall contain a link to a resource collection of type `OperatingConfigCollection`.",
825                    "readonly": true,
826                    "versionAdded": "v1_9_0"
827                },
828                "OperatingSpeedMHz": {
829                    "description": "Operating speed of the processor in MHz.",
830                    "longDescription": "This property shall contain the operating speed of the processor in MHz.  The operating speed of the processor may change more frequently than the manager is able to monitor.",
831                    "readonly": true,
832                    "type": [
833                        "integer",
834                        "null"
835                    ],
836                    "units": "MHz",
837                    "versionAdded": "v1_8_0"
838                },
839                "OperatingSpeedRangeMHz": {
840                    "anyOf": [
841                        {
842                            "$ref": "http://redfish.dmtf.org/schemas/v1/Control.json#/definitions/ControlRangeExcerpt"
843                        },
844                        {
845                            "type": "null"
846                        }
847                    ],
848                    "description": "Range of allowed operating speeds (MHz).",
849                    "excerptCopy": "ControlRangeExcerpt",
850                    "longDescription": "This property shall contain the operating speed control, measured in megahertz units, for this resource.  The value of the `DataSourceUri` property, if present, shall reference a resource of type `Control` with the `ControlType` property containing the value of `FrequencyMHz`.",
851                    "readonly": false,
852                    "versionAdded": "v1_13_0"
853                },
854                "PartNumber": {
855                    "description": "The part number of the processor.",
856                    "longDescription": "This property shall contain a part number assigned by the organization that is responsible for producing or manufacturing the processor.",
857                    "readonly": true,
858                    "type": [
859                        "string",
860                        "null"
861                    ],
862                    "versionAdded": "v1_7_0"
863                },
864                "Ports": {
865                    "$ref": "http://redfish.dmtf.org/schemas/v1/PortCollection.json#/definitions/PortCollection",
866                    "description": "The link to the collection of ports for this processor.",
867                    "longDescription": "This property shall contain a link to a resource collection of type `PortCollection`.  It shall contain the interconnect and fabric ports of this processor.  It shall not contain ports for `GraphicsController` resources, `USBController` resources, or other local adapter-related types of resources.",
868                    "readonly": true,
869                    "versionAdded": "v1_13_0"
870                },
871                "PowerState": {
872                    "anyOf": [
873                        {
874                            "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/PowerState"
875                        },
876                        {
877                            "type": "null"
878                        }
879                    ],
880                    "description": "The current power state of the processor.",
881                    "longDescription": "This property shall contain the power state of the processor.  If the `PowerState` property in the associated `Chassis` resource contains the value `Off`, this property shall contain `Off`.",
882                    "readonly": true,
883                    "versionAdded": "v1_17_0"
884                },
885                "ProcessorArchitecture": {
886                    "anyOf": [
887                        {
888                            "$ref": "#/definitions/ProcessorArchitecture"
889                        },
890                        {
891                            "type": "null"
892                        }
893                    ],
894                    "description": "The architecture of the processor.",
895                    "longDescription": "This property shall contain the string that identifies the architecture of the processor contained in this socket.",
896                    "readonly": true
897                },
898                "ProcessorId": {
899                    "$ref": "#/definitions/ProcessorId",
900                    "description": "The identification information for this processor.",
901                    "longDescription": "This object shall contain identification information for this processor."
902                },
903                "ProcessorIndex": {
904                    "description": "The logical index of this processor within the system.",
905                    "longDescription": "This property shall contain the zero-based index of the processor, indexed within the next unit of containment.  The value of this property shall match the ordering in the operating system topology interfaces, with offset adjustments, if needed.",
906                    "readonly": true,
907                    "type": [
908                        "integer",
909                        "null"
910                    ],
911                    "versionAdded": "v1_16_0"
912                },
913                "ProcessorMemory": {
914                    "description": "The memory directly attached or integrated within this processor.  Examples include internal cache, dedicated memory for the processor, and system memory.",
915                    "items": {
916                        "$ref": "#/definitions/ProcessorMemory"
917                    },
918                    "longDescription": "This property shall contain the memory directly attached or integrated within this processor.",
919                    "type": "array",
920                    "versionAdded": "v1_4_0"
921                },
922                "ProcessorType": {
923                    "anyOf": [
924                        {
925                            "$ref": "#/definitions/ProcessorType"
926                        },
927                        {
928                            "type": "null"
929                        }
930                    ],
931                    "description": "The type of processor.",
932                    "longDescription": "This property shall contain the string that identifies the type of processor contained in this socket.",
933                    "readonly": true
934                },
935                "Replaceable": {
936                    "description": "An indication of whether this component can be independently replaced as allowed by the vendor's replacement policy.",
937                    "longDescription": "This property shall indicate whether this component can be independently replaced as allowed by the vendor's replacement policy.  A value of `false` indicates the component needs to be replaced by policy as part of another component.  If the `LocationType` property of this component contains `Embedded`, this property shall contain `false`.",
938                    "readonly": true,
939                    "type": [
940                        "boolean",
941                        "null"
942                    ],
943                    "versionAdded": "v1_16_0"
944                },
945                "SerialNumber": {
946                    "description": "The serial number of the processor.",
947                    "longDescription": "This property shall contain a manufacturer-allocated number that identifies the processor.",
948                    "readonly": true,
949                    "type": [
950                        "string",
951                        "null"
952                    ],
953                    "versionAdded": "v1_7_0"
954                },
955                "Socket": {
956                    "description": "The socket or location of the processor.",
957                    "longDescription": "This property shall contain the string that identifies the physical location or socket of the processor.",
958                    "readonly": true,
959                    "type": [
960                        "string",
961                        "null"
962                    ]
963                },
964                "SparePartNumber": {
965                    "description": "The spare part number of the processor.",
966                    "longDescription": "This property shall contain the spare part number of the processor.",
967                    "readonly": true,
968                    "type": [
969                        "string",
970                        "null"
971                    ],
972                    "versionAdded": "v1_11_0"
973                },
974                "SpeedLimitMHz": {
975                    "description": "The clock limit of the processor in MHz.",
976                    "longDescription": "This property shall contain the clock limit of the processor in MHz.  This value shall be within the range of `MinSpeedMHz` and `MaxSpeedMHz` as provided by the manufacturer of this processor.",
977                    "minimum": 0,
978                    "readonly": false,
979                    "type": [
980                        "integer",
981                        "null"
982                    ],
983                    "units": "MHz",
984                    "versionAdded": "v1_10_0"
985                },
986                "SpeedLocked": {
987                    "description": "Indicates whether the clock speed of the processor is fixed at the value specified in the `SpeedLimitMHz` property.",
988                    "longDescription": "This property shall indicate whether the clock speed of the processor is fixed, where a value `true` shall indicate that the clock speed is fixed at the value specified in the `SpeedLimitMHz` property.",
989                    "readonly": false,
990                    "type": [
991                        "boolean",
992                        "null"
993                    ],
994                    "versionAdded": "v1_10_0"
995                },
996                "Status": {
997                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Status",
998                    "description": "The status and health of the resource and its subordinate or dependent resources.",
999                    "longDescription": "This property shall contain any status or health properties of the resource."
1000                },
1001                "SubProcessors": {
1002                    "$ref": "http://redfish.dmtf.org/schemas/v1/ProcessorCollection.json#/definitions/ProcessorCollection",
1003                    "description": "The link to the collection of sub-processors associated with this processor, such as cores or threads, that are part of a processor.",
1004                    "longDescription": "This property shall contain a link to a resource collection of type `ProcessorCollection`.",
1005                    "readonly": true,
1006                    "versionAdded": "v1_3_0"
1007                },
1008                "SystemInterface": {
1009                    "$ref": "#/definitions/ProcessorInterface",
1010                    "description": "The interface between the system and the processor.",
1011                    "longDescription": "This property shall contain an object that describes the connectivity between the host system and the processor.",
1012                    "versionAdded": "v1_8_0"
1013                },
1014                "TDPWatts": {
1015                    "description": "The nominal Thermal Design Power (TDP) in watt units.",
1016                    "longDescription": "This property shall contain the nominal Thermal Design Power (TDP) in watt units.",
1017                    "readonly": true,
1018                    "type": [
1019                        "integer",
1020                        "null"
1021                    ],
1022                    "units": "W",
1023                    "versionAdded": "v1_4_0"
1024                },
1025                "ThrottleCauses": {
1026                    "description": "The causes of the processor being throttled.",
1027                    "items": {
1028                        "anyOf": [
1029                            {
1030                                "$ref": "#/definitions/ThrottleCause"
1031                            },
1032                            {
1033                                "type": "null"
1034                            }
1035                        ]
1036                    },
1037                    "longDescription": "This property shall contain the causes of the processor being throttled.  If `Throttled` contains `false`, this property shall contain an empty array.",
1038                    "readonly": true,
1039                    "type": "array",
1040                    "versionAdded": "v1_16_0"
1041                },
1042                "Throttled": {
1043                    "description": "An indication of whether the processor is throttled.",
1044                    "longDescription": "This property shall indicate whether the processor is throttled.",
1045                    "readonly": true,
1046                    "type": [
1047                        "boolean",
1048                        "null"
1049                    ],
1050                    "versionAdded": "v1_16_0"
1051                },
1052                "TotalCores": {
1053                    "description": "The total number of cores that this processor contains.",
1054                    "longDescription": "This property shall indicate the total count of independent processor cores contained within this processor.",
1055                    "readonly": true,
1056                    "type": [
1057                        "integer",
1058                        "null"
1059                    ]
1060                },
1061                "TotalEnabledCores": {
1062                    "description": "The total number of enabled cores that this processor contains.",
1063                    "longDescription": "This property shall indicate the total count of enabled independent processor cores contained within this processor.",
1064                    "readonly": true,
1065                    "type": [
1066                        "integer",
1067                        "null"
1068                    ],
1069                    "versionAdded": "v1_5_0"
1070                },
1071                "TotalThreads": {
1072                    "description": "The total number of execution threads that this processor supports.",
1073                    "longDescription": "This property shall indicate the total count of independent execution threads that this processor supports.",
1074                    "readonly": true,
1075                    "type": [
1076                        "integer",
1077                        "null"
1078                    ]
1079                },
1080                "TurboState": {
1081                    "anyOf": [
1082                        {
1083                            "$ref": "#/definitions/TurboState"
1084                        },
1085                        {
1086                            "type": "null"
1087                        }
1088                    ],
1089                    "description": "The state of turbo for this processor.",
1090                    "longDescription": "This property shall contain the state of turbo for this processor.",
1091                    "readonly": true,
1092                    "versionAdded": "v1_9_0"
1093                },
1094                "UUID": {
1095                    "anyOf": [
1096                        {
1097                            "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/UUID"
1098                        },
1099                        {
1100                            "type": "null"
1101                        }
1102                    ],
1103                    "description": "The UUID for this processor.",
1104                    "longDescription": "This property shall contain a universally unique identifier number for the processor.  RFC4122 describes methods to use to create the value.  The value should be considered to be opaque.  Client software should only treat the overall value as a universally unique identifier and should not interpret any subfields within the UUID.",
1105                    "readonly": true,
1106                    "versionAdded": "v1_4_0"
1107                },
1108                "Version": {
1109                    "description": "The hardware version of the processor.",
1110                    "longDescription": "This property shall contain the hardware version of the processor as determined by the vendor or supplier.",
1111                    "readonly": true,
1112                    "type": [
1113                        "string",
1114                        "null"
1115                    ],
1116                    "versionAdded": "v1_7_0"
1117                }
1118            },
1119            "required": [
1120                "@odata.id",
1121                "@odata.type",
1122                "Id",
1123                "Name"
1124            ],
1125            "type": "object"
1126        },
1127        "ProcessorArchitecture": {
1128            "enum": [
1129                "x86",
1130                "IA-64",
1131                "ARM",
1132                "MIPS",
1133                "Power",
1134                "RISC-V",
1135                "OEM"
1136            ],
1137            "enumDescriptions": {
1138                "ARM": "ARM.",
1139                "IA-64": "Intel Itanium.",
1140                "MIPS": "MIPS.",
1141                "OEM": "OEM-defined.",
1142                "Power": "Power.",
1143                "RISC-V": "RISC-V.",
1144                "x86": "x86 or x86-64."
1145            },
1146            "enumVersionAdded": {
1147                "Power": "v1_4_0",
1148                "RISC-V": "v1_19_0"
1149            },
1150            "type": "string"
1151        },
1152        "ProcessorId": {
1153            "additionalProperties": false,
1154            "description": "The identification information for a processor.",
1155            "longDescription": "This type shall contain identification information for a processor.",
1156            "patternProperties": {
1157                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
1158                    "description": "This property shall specify a valid odata or Redfish property.",
1159                    "type": [
1160                        "array",
1161                        "boolean",
1162                        "integer",
1163                        "number",
1164                        "null",
1165                        "object",
1166                        "string"
1167                    ]
1168                }
1169            },
1170            "properties": {
1171                "EffectiveFamily": {
1172                    "description": "The effective family for this processor.",
1173                    "longDescription": "This property shall contain the effective family information as provided by the manufacturer of this processor.  If this property represents raw register data, as determined by the value of the `ProcessorArchitecture` property, the service shall encode the value as a hex-encoded string following the regular expression pattern `^0x[0-9A-Fa-f]+$` or a decimal-encoded string following the regular expression pattern `^\\d+$`.",
1174                    "readonly": true,
1175                    "type": [
1176                        "string",
1177                        "null"
1178                    ]
1179                },
1180                "EffectiveModel": {
1181                    "description": "The effective model for this processor.",
1182                    "longDescription": "This property shall contain the effective model information as provided by the manufacturer of this processor.  If this property represents raw register data, as determined by the value of the `ProcessorArchitecture` property, the service shall encode the value as a hex-encoded string following the regular expression pattern `^0x[0-9A-Fa-f]+$` or a decimal-encoded string following the regular expression pattern `^\\d+$`.",
1183                    "readonly": true,
1184                    "type": [
1185                        "string",
1186                        "null"
1187                    ]
1188                },
1189                "IdentificationRegisters": {
1190                    "description": "The raw manufacturer-provided processor identification registers for this processor.",
1191                    "longDescription": "This property shall contain the raw manufacturer-provided processor-specific identification registers of this processor's features.",
1192                    "pattern": "^0x[0-9A-Fa-f]+$",
1193                    "readonly": true,
1194                    "type": [
1195                        "string",
1196                        "null"
1197                    ]
1198                },
1199                "MicrocodeInfo": {
1200                    "description": "The microcode information for this processor.",
1201                    "longDescription": "This property shall contain the microcode information as provided by the manufacturer of this processor.  If this property represents raw register data, as determined by the value of the `ProcessorArchitecture` property, the service shall encode the value as a hex-encoded string following the regular expression pattern `^0x[0-9A-Fa-f]+$` or a decimal-encoded string following the regular expression pattern `^\\d+$`.",
1202                    "readonly": true,
1203                    "type": [
1204                        "string",
1205                        "null"
1206                    ]
1207                },
1208                "ProtectedIdentificationNumber": {
1209                    "description": "The Protected Processor Identification Number (PPIN) for this processor.",
1210                    "longDescription": "This property shall contain the Protected Processor Identification Number (PPIN) for this processor.",
1211                    "readonly": true,
1212                    "type": [
1213                        "string",
1214                        "null"
1215                    ],
1216                    "versionAdded": "v1_10_0"
1217                },
1218                "Step": {
1219                    "description": "The step value for this processor.",
1220                    "longDescription": "This property shall contain the step or revision information as provided by the manufacturer of this processor.  If this property represents raw register data, as determined by the value of the `ProcessorArchitecture` property, the service shall encode the value as a hex-encoded string following the regular expression pattern `^0x[0-9A-Fa-f]+$` or a decimal-encoded string following the regular expression pattern `^\\d+$`.",
1221                    "readonly": true,
1222                    "type": [
1223                        "string",
1224                        "null"
1225                    ]
1226                },
1227                "VendorId": {
1228                    "description": "The vendor identification for this processor.",
1229                    "longDescription": "This property shall contain the vendor identification information as provided by the manufacturer of this processor.  If this property represents raw register data, as determined by the value of the `ProcessorArchitecture` property, the service shall encode the value as a hex-encoded string following the regular expression pattern `^0x[0-9A-Fa-f]+$` or a decimal-encoded string following the regular expression pattern `^\\d+$`.",
1230                    "readonly": true,
1231                    "type": [
1232                        "string",
1233                        "null"
1234                    ]
1235                }
1236            },
1237            "type": "object"
1238        },
1239        "ProcessorInterface": {
1240            "additionalProperties": false,
1241            "description": "This type describes an interface between the system, or external connection, and the processor.",
1242            "longDescription": "This type shall contain information about the system interface, or external connection, to the processor.",
1243            "patternProperties": {
1244                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
1245                    "description": "This property shall specify a valid odata or Redfish property.",
1246                    "type": [
1247                        "array",
1248                        "boolean",
1249                        "integer",
1250                        "number",
1251                        "null",
1252                        "object",
1253                        "string"
1254                    ]
1255                }
1256            },
1257            "properties": {
1258                "Ethernet": {
1259                    "$ref": "#/definitions/EthernetInterface",
1260                    "description": "The Ethernet-related information for this interface.",
1261                    "longDescription": "This property shall contain an object the describes the Ethernet-related information for this interface.",
1262                    "versionAdded": "v1_4_0"
1263                },
1264                "InterfaceType": {
1265                    "anyOf": [
1266                        {
1267                            "$ref": "#/definitions/SystemInterfaceType"
1268                        },
1269                        {
1270                            "type": "null"
1271                        }
1272                    ],
1273                    "description": "The interface type.",
1274                    "longDescription": "This property shall contain an enumerated value that describes the type of interface between the system, or external connection, and the processor.",
1275                    "readonly": true,
1276                    "versionAdded": "v1_4_0"
1277                },
1278                "PCIe": {
1279                    "$ref": "http://redfish.dmtf.org/schemas/v1/PCIeDevice.json#/definitions/PCIeInterface",
1280                    "description": "The PCIe-related information for this interface.",
1281                    "longDescription": "This property shall contain an object the describes the PCIe-related information for this interface.",
1282                    "versionAdded": "v1_4_0"
1283                }
1284            },
1285            "type": "object"
1286        },
1287        "ProcessorMemory": {
1288            "additionalProperties": false,
1289            "description": "This type describes the memory directly attached or integrated within a processor.",
1290            "longDescription": "This type shall contain information about memory directly attached or integrated within a processor.",
1291            "patternProperties": {
1292                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
1293                    "description": "This property shall specify a valid odata or Redfish property.",
1294                    "type": [
1295                        "array",
1296                        "boolean",
1297                        "integer",
1298                        "number",
1299                        "null",
1300                        "object",
1301                        "string"
1302                    ]
1303                }
1304            },
1305            "properties": {
1306                "CapacityMiB": {
1307                    "description": "The memory capacity in MiB.",
1308                    "longDescription": "This property shall contain the memory capacity in MiB.",
1309                    "readonly": true,
1310                    "type": [
1311                        "integer",
1312                        "null"
1313                    ],
1314                    "units": "MiBy",
1315                    "versionAdded": "v1_4_0"
1316                },
1317                "IntegratedMemory": {
1318                    "description": "An indication of whether this memory is integrated within the processor.",
1319                    "longDescription": "This property shall indicate whether this memory is integrated within the processor.  Otherwise, it is discrete memory attached to the processor.",
1320                    "readonly": true,
1321                    "type": [
1322                        "boolean",
1323                        "null"
1324                    ],
1325                    "versionAdded": "v1_4_0"
1326                },
1327                "MemoryType": {
1328                    "anyOf": [
1329                        {
1330                            "$ref": "#/definitions/ProcessorMemoryType"
1331                        },
1332                        {
1333                            "type": "null"
1334                        }
1335                    ],
1336                    "description": "The type of memory used by this processor.",
1337                    "longDescription": "This property shall contain a type of the processor memory type.",
1338                    "readonly": true,
1339                    "versionAdded": "v1_4_0"
1340                },
1341                "SpeedMHz": {
1342                    "description": "The operating speed of the memory in MHz.",
1343                    "longDescription": "This property shall contain the operating speed of the memory in MHz.",
1344                    "readonly": true,
1345                    "type": [
1346                        "integer",
1347                        "null"
1348                    ],
1349                    "versionAdded": "v1_4_0"
1350                }
1351            },
1352            "type": "object"
1353        },
1354        "ProcessorMemoryType": {
1355            "enum": [
1356                "Cache",
1357                "L1Cache",
1358                "L2Cache",
1359                "L3Cache",
1360                "L4Cache",
1361                "L5Cache",
1362                "L6Cache",
1363                "L7Cache",
1364                "HBM1",
1365                "HBM2",
1366                "HBM2E",
1367                "HBM3",
1368                "SGRAM",
1369                "GDDR",
1370                "GDDR2",
1371                "GDDR3",
1372                "GDDR4",
1373                "GDDR5",
1374                "GDDR5X",
1375                "GDDR6",
1376                "DDR",
1377                "DDR2",
1378                "DDR3",
1379                "DDR4",
1380                "DDR5",
1381                "SDRAM",
1382                "SRAM",
1383                "Flash",
1384                "OEM"
1385            ],
1386            "enumDescriptions": {
1387                "Cache": "Processor cache, but no level is determined.",
1388                "DDR": "Double data rate synchronous dynamic random-access memory.",
1389                "DDR2": "Double data rate type two synchronous dynamic random-access memory.",
1390                "DDR3": "Double data rate type three synchronous dynamic random-access memory.",
1391                "DDR4": "Double data rate type four synchronous dynamic random-access memory.",
1392                "DDR5": "Double data rate type five synchronous dynamic random-access memory.",
1393                "Flash": "Flash memory.",
1394                "GDDR": "Synchronous graphics random-access memory.",
1395                "GDDR2": "Double data rate type two synchronous graphics random-access memory.",
1396                "GDDR3": "Double data rate type three synchronous graphics random-access memory.",
1397                "GDDR4": "Double data rate type four synchronous graphics random-access memory.",
1398                "GDDR5": "Double data rate type five synchronous graphics random-access memory.",
1399                "GDDR5X": "Double data rate type five X synchronous graphics random-access memory.",
1400                "GDDR6": "Double data rate type six synchronous graphics random-access memory.",
1401                "HBM1": "High Bandwidth Memory.",
1402                "HBM2": "The second generation of High Bandwidth Memory.",
1403                "HBM2E": "An updated version of the second generation of High Bandwidth Memory.",
1404                "HBM3": "The third generation of High Bandwidth Memory.",
1405                "L1Cache": "L1 cache.",
1406                "L2Cache": "L2 cache.",
1407                "L3Cache": "L3 cache.",
1408                "L4Cache": "L4 cache.",
1409                "L5Cache": "L5 cache.",
1410                "L6Cache": "L6 cache.",
1411                "L7Cache": "L7 cache.",
1412                "OEM": "OEM-defined.",
1413                "SDRAM": "Synchronous dynamic random-access memory.",
1414                "SGRAM": "Synchronous graphics RAM.",
1415                "SRAM": "Static random-access memory."
1416            },
1417            "enumVersionAdded": {
1418                "Cache": "v1_17_0",
1419                "HBM2E": "v1_17_0"
1420            },
1421            "type": "string"
1422        },
1423        "ProcessorType": {
1424            "enum": [
1425                "CPU",
1426                "GPU",
1427                "FPGA",
1428                "DSP",
1429                "Accelerator",
1430                "Core",
1431                "Thread",
1432                "Partition",
1433                "OEM"
1434            ],
1435            "enumDescriptions": {
1436                "Accelerator": "An accelerator.",
1437                "CPU": "A CPU.",
1438                "Core": "A core in a processor.",
1439                "DSP": "A DSP.",
1440                "FPGA": "An FPGA.",
1441                "GPU": "A GPU.",
1442                "OEM": "An OEM-defined processing unit.",
1443                "Partition": "A partition in a single processor.",
1444                "Thread": "A thread in a processor."
1445            },
1446            "enumLongDescriptions": {
1447                "Partition": "This value shall indicate a partition in a processor that is instantiated from a user configuration to carve out resources in a single processor.  An example of this is assigning memory to a set of cores in a GPU."
1448            },
1449            "enumVersionAdded": {
1450                "Core": "v1_3_0",
1451                "Partition": "v1_19_0",
1452                "Thread": "v1_3_0"
1453            },
1454            "type": "string"
1455        },
1456        "Reset": {
1457            "additionalProperties": false,
1458            "description": "This action resets the processor.",
1459            "longDescription": "This action shall reset the processor.",
1460            "parameters": {
1461                "ResetType": {
1462                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/ResetType",
1463                    "description": "The type of reset.",
1464                    "longDescription": "This parameter shall contain the type of reset.  The service can accept a request without the parameter and perform an implementation-specific default reset."
1465                }
1466            },
1467            "patternProperties": {
1468                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
1469                    "description": "This property shall specify a valid odata or Redfish property.",
1470                    "type": [
1471                        "array",
1472                        "boolean",
1473                        "integer",
1474                        "number",
1475                        "null",
1476                        "object",
1477                        "string"
1478                    ]
1479                }
1480            },
1481            "properties": {
1482                "target": {
1483                    "description": "Link to invoke action",
1484                    "format": "uri-reference",
1485                    "type": "string"
1486                },
1487                "title": {
1488                    "description": "Friendly action name",
1489                    "type": "string"
1490                }
1491            },
1492            "type": "object",
1493            "versionAdded": "v1_6_0"
1494        },
1495        "ResetToDefaults": {
1496            "additionalProperties": false,
1497            "description": "The action resets the values of writable properties to factory defaults.",
1498            "longDescription": "This action shall reset the values of writable properties in this resource to their default values as specified by the manufacturer.",
1499            "parameters": {},
1500            "patternProperties": {
1501                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
1502                    "description": "This property shall specify a valid odata or Redfish property.",
1503                    "type": [
1504                        "array",
1505                        "boolean",
1506                        "integer",
1507                        "number",
1508                        "null",
1509                        "object",
1510                        "string"
1511                    ]
1512                }
1513            },
1514            "properties": {
1515                "target": {
1516                    "description": "Link to invoke action",
1517                    "format": "uri-reference",
1518                    "type": "string"
1519                },
1520                "title": {
1521                    "description": "Friendly action name",
1522                    "type": "string"
1523                }
1524            },
1525            "type": "object",
1526            "versionAdded": "v1_15_0"
1527        },
1528        "SystemInterfaceType": {
1529            "enum": [
1530                "QPI",
1531                "UPI",
1532                "PCIe",
1533                "Ethernet",
1534                "AMBA",
1535                "CCIX",
1536                "CXL",
1537                "OEM"
1538            ],
1539            "enumDescriptions": {
1540                "AMBA": "The Arm Advanced Microcontroller Bus Architecture interface.",
1541                "CCIX": "The Cache Coherent Interconnect for Accelerators interface.",
1542                "CXL": "The Compute Express Link interface.",
1543                "Ethernet": "An Ethernet interface.",
1544                "OEM": "An OEM-defined interface.",
1545                "PCIe": "A PCI Express interface.",
1546                "QPI": "The Intel QuickPath Interconnect.",
1547                "UPI": "The Intel UltraPath Interconnect."
1548            },
1549            "enumVersionAdded": {
1550                "AMBA": "v1_8_0",
1551                "CCIX": "v1_8_0",
1552                "CXL": "v1_8_0"
1553            },
1554            "type": "string"
1555        },
1556        "ThrottleCause": {
1557            "enum": [
1558                "PowerLimit",
1559                "ThermalLimit",
1560                "ClockLimit",
1561                "ManagementDetectedFault",
1562                "Unknown",
1563                "OEM"
1564            ],
1565            "enumDescriptions": {
1566                "ClockLimit": "The cause of the processor being throttled is a clock limit.",
1567                "ManagementDetectedFault": "The cause of the processor being throttled is a fault detected by management hardware or firmware.",
1568                "OEM": "The cause of the processor being throttled is OEM-specific.",
1569                "PowerLimit": "The cause of the processor being throttled is a power limit.",
1570                "ThermalLimit": "The cause of the processor being throttled is a thermal limit.",
1571                "Unknown": "The cause of the processor being throttled is not known."
1572            },
1573            "enumVersionAdded": {
1574                "ManagementDetectedFault": "v1_18_0"
1575            },
1576            "type": "string"
1577        },
1578        "TurboState": {
1579            "enum": [
1580                "Enabled",
1581                "Disabled"
1582            ],
1583            "enumDescriptions": {
1584                "Disabled": "Turbo is disabled.",
1585                "Enabled": "Turbo is enabled."
1586            },
1587            "type": "string"
1588        }
1589    },
1590    "language": "en",
1591    "owningEntity": "DMTF",
1592    "release": "2024.1",
1593    "title": "#Processor.v1_20_0.Processor"
1594}