xref: /openbmc/bmcweb/features/redfish/schema/dmtf/json-schema/Memory.v1_21_0.json (revision c6d7a45d427f9a6d9e761afcf305761dca60d7cf)
1*c6d7a45dSGunnar Mills{
2*c6d7a45dSGunnar Mills    "$id": "http://redfish.dmtf.org/schemas/v1/Memory.v1_21_0.json",
3*c6d7a45dSGunnar Mills    "$ref": "#/definitions/Memory",
4*c6d7a45dSGunnar Mills    "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
5*c6d7a45dSGunnar Mills    "copyright": "Copyright 2014-2025 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright",
6*c6d7a45dSGunnar Mills    "definitions": {
7*c6d7a45dSGunnar Mills        "Actions": {
8*c6d7a45dSGunnar Mills            "additionalProperties": false,
9*c6d7a45dSGunnar Mills            "description": "The available actions for this resource.",
10*c6d7a45dSGunnar Mills            "longDescription": "This type shall contain the available actions for this resource.",
11*c6d7a45dSGunnar Mills            "patternProperties": {
12*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
13*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
14*c6d7a45dSGunnar Mills                    "type": [
15*c6d7a45dSGunnar Mills                        "array",
16*c6d7a45dSGunnar Mills                        "boolean",
17*c6d7a45dSGunnar Mills                        "integer",
18*c6d7a45dSGunnar Mills                        "number",
19*c6d7a45dSGunnar Mills                        "null",
20*c6d7a45dSGunnar Mills                        "object",
21*c6d7a45dSGunnar Mills                        "string"
22*c6d7a45dSGunnar Mills                    ]
23*c6d7a45dSGunnar Mills                }
24*c6d7a45dSGunnar Mills            },
25*c6d7a45dSGunnar Mills            "properties": {
26*c6d7a45dSGunnar Mills                "#Memory.DisableMasterPassphrase": {
27*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/DisableMasterPassphrase"
28*c6d7a45dSGunnar Mills                },
29*c6d7a45dSGunnar Mills                "#Memory.DisablePassphrase": {
30*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/DisablePassphrase"
31*c6d7a45dSGunnar Mills                },
32*c6d7a45dSGunnar Mills                "#Memory.FreezeSecurityState": {
33*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/FreezeSecurityState"
34*c6d7a45dSGunnar Mills                },
35*c6d7a45dSGunnar Mills                "#Memory.InjectPersistentPoison": {
36*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/InjectPersistentPoison"
37*c6d7a45dSGunnar Mills                },
38*c6d7a45dSGunnar Mills                "#Memory.OverwriteUnit": {
39*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/OverwriteUnit"
40*c6d7a45dSGunnar Mills                },
41*c6d7a45dSGunnar Mills                "#Memory.Reset": {
42*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/Reset"
43*c6d7a45dSGunnar Mills                },
44*c6d7a45dSGunnar Mills                "#Memory.ResetToDefaults": {
45*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/ResetToDefaults"
46*c6d7a45dSGunnar Mills                },
47*c6d7a45dSGunnar Mills                "#Memory.ScanMedia": {
48*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/ScanMedia"
49*c6d7a45dSGunnar Mills                },
50*c6d7a45dSGunnar Mills                "#Memory.SecureEraseUnit": {
51*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/SecureEraseUnit"
52*c6d7a45dSGunnar Mills                },
53*c6d7a45dSGunnar Mills                "#Memory.SetMasterPassphrase": {
54*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/SetMasterPassphrase"
55*c6d7a45dSGunnar Mills                },
56*c6d7a45dSGunnar Mills                "#Memory.SetPassphrase": {
57*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/SetPassphrase"
58*c6d7a45dSGunnar Mills                },
59*c6d7a45dSGunnar Mills                "#Memory.UnlockUnit": {
60*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/UnlockUnit"
61*c6d7a45dSGunnar Mills                },
62*c6d7a45dSGunnar Mills                "Oem": {
63*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/OemActions",
64*c6d7a45dSGunnar Mills                    "description": "The available OEM-specific actions for this resource.",
65*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the available OEM-specific actions for this resource."
66*c6d7a45dSGunnar Mills                }
67*c6d7a45dSGunnar Mills            },
68*c6d7a45dSGunnar Mills            "type": "object"
69*c6d7a45dSGunnar Mills        },
70*c6d7a45dSGunnar Mills        "BaseModuleType": {
71*c6d7a45dSGunnar Mills            "enum": [
72*c6d7a45dSGunnar Mills                "RDIMM",
73*c6d7a45dSGunnar Mills                "UDIMM",
74*c6d7a45dSGunnar Mills                "SO_DIMM",
75*c6d7a45dSGunnar Mills                "LRDIMM",
76*c6d7a45dSGunnar Mills                "Mini_RDIMM",
77*c6d7a45dSGunnar Mills                "Mini_UDIMM",
78*c6d7a45dSGunnar Mills                "SO_RDIMM_72b",
79*c6d7a45dSGunnar Mills                "SO_UDIMM_72b",
80*c6d7a45dSGunnar Mills                "SO_DIMM_16b",
81*c6d7a45dSGunnar Mills                "SO_DIMM_32b",
82*c6d7a45dSGunnar Mills                "Die",
83*c6d7a45dSGunnar Mills                "CAMM"
84*c6d7a45dSGunnar Mills            ],
85*c6d7a45dSGunnar Mills            "enumDescriptions": {
86*c6d7a45dSGunnar Mills                "CAMM": "Compression Attached Memory Module.",
87*c6d7a45dSGunnar Mills                "Die": "A die within a package.",
88*c6d7a45dSGunnar Mills                "LRDIMM": "Load Reduced.",
89*c6d7a45dSGunnar Mills                "Mini_RDIMM": "Mini_RDIMM.",
90*c6d7a45dSGunnar Mills                "Mini_UDIMM": "Mini_UDIMM.",
91*c6d7a45dSGunnar Mills                "RDIMM": "Registered DIMM.",
92*c6d7a45dSGunnar Mills                "SO_DIMM": "SO_DIMM.",
93*c6d7a45dSGunnar Mills                "SO_DIMM_16b": "SO_DIMM_16b.",
94*c6d7a45dSGunnar Mills                "SO_DIMM_32b": "SO_DIMM_32b.",
95*c6d7a45dSGunnar Mills                "SO_RDIMM_72b": "SO_RDIMM_72b.",
96*c6d7a45dSGunnar Mills                "SO_UDIMM_72b": "SO_UDIMM_72b.",
97*c6d7a45dSGunnar Mills                "UDIMM": "UDIMM."
98*c6d7a45dSGunnar Mills            },
99*c6d7a45dSGunnar Mills            "enumVersionAdded": {
100*c6d7a45dSGunnar Mills                "CAMM": "v1_21_0",
101*c6d7a45dSGunnar Mills                "Die": "v1_7_0"
102*c6d7a45dSGunnar Mills            },
103*c6d7a45dSGunnar Mills            "type": "string"
104*c6d7a45dSGunnar Mills        },
105*c6d7a45dSGunnar Mills        "CXL": {
106*c6d7a45dSGunnar Mills            "additionalProperties": false,
107*c6d7a45dSGunnar Mills            "description": "CXL properties for a memory device.",
108*c6d7a45dSGunnar Mills            "longDescription": "This type shall contain CXL-specific properties for a memory device.",
109*c6d7a45dSGunnar Mills            "patternProperties": {
110*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
111*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
112*c6d7a45dSGunnar Mills                    "type": [
113*c6d7a45dSGunnar Mills                        "array",
114*c6d7a45dSGunnar Mills                        "boolean",
115*c6d7a45dSGunnar Mills                        "integer",
116*c6d7a45dSGunnar Mills                        "number",
117*c6d7a45dSGunnar Mills                        "null",
118*c6d7a45dSGunnar Mills                        "object",
119*c6d7a45dSGunnar Mills                        "string"
120*c6d7a45dSGunnar Mills                    ]
121*c6d7a45dSGunnar Mills                }
122*c6d7a45dSGunnar Mills            },
123*c6d7a45dSGunnar Mills            "properties": {
124*c6d7a45dSGunnar Mills                "LabelStorageSizeBytes": {
125*c6d7a45dSGunnar Mills                    "description": "The size of the label storage area in bytes of this memory device.",
126*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the size of the label storage area in bytes of this memory device.",
127*c6d7a45dSGunnar Mills                    "readonly": true,
128*c6d7a45dSGunnar Mills                    "type": "integer",
129*c6d7a45dSGunnar Mills                    "units": "By",
130*c6d7a45dSGunnar Mills                    "versionAdded": "v1_17_0"
131*c6d7a45dSGunnar Mills                },
132*c6d7a45dSGunnar Mills                "StagedNonVolatileSizeMiB": {
133*c6d7a45dSGunnar Mills                    "description": "Total device non-volatile memory capacity in MiB staged for next activation.  The value is in multiples of 256 MiB.",
134*c6d7a45dSGunnar Mills                    "longDescription": "The value of this property shall indicate the total device non-volatile memory capacity in mebibytes.  The value shall be in multiples of 256 mebibytes.",
135*c6d7a45dSGunnar Mills                    "readonly": false,
136*c6d7a45dSGunnar Mills                    "type": "integer",
137*c6d7a45dSGunnar Mills                    "units": "MiBy",
138*c6d7a45dSGunnar Mills                    "versionAdded": "v1_17_0"
139*c6d7a45dSGunnar Mills                },
140*c6d7a45dSGunnar Mills                "StagedVolatileSizeMiB": {
141*c6d7a45dSGunnar Mills                    "description": "Total device volatile memory capacity in MiB staged for next activation.  This value is in multiples of 256 MiB.",
142*c6d7a45dSGunnar Mills                    "longDescription": "The value of this property shall indicate the total device volatile memory capacity in mebibytes staged for next activation.  This value shall be in multiples of 256 mebibytes.",
143*c6d7a45dSGunnar Mills                    "readonly": false,
144*c6d7a45dSGunnar Mills                    "type": "integer",
145*c6d7a45dSGunnar Mills                    "units": "MiBy",
146*c6d7a45dSGunnar Mills                    "versionAdded": "v1_17_0"
147*c6d7a45dSGunnar Mills                }
148*c6d7a45dSGunnar Mills            },
149*c6d7a45dSGunnar Mills            "type": "object"
150*c6d7a45dSGunnar Mills        },
151*c6d7a45dSGunnar Mills        "DisableMasterPassphrase": {
152*c6d7a45dSGunnar Mills            "additionalProperties": false,
153*c6d7a45dSGunnar Mills            "description": "Disables the master passphrase for the given region.",
154*c6d7a45dSGunnar Mills            "longDescription": "This action shall disable the master passphrase on the supplied region provided the supplied master passphrase matches that of the region.",
155*c6d7a45dSGunnar Mills            "parameters": {
156*c6d7a45dSGunnar Mills                "Passphrase": {
157*c6d7a45dSGunnar Mills                    "description": "The master passphrase for the specified region.",
158*c6d7a45dSGunnar Mills                    "longDescription": "This parameter shall contain the master passphrase for the specified region.",
159*c6d7a45dSGunnar Mills                    "requiredParameter": true,
160*c6d7a45dSGunnar Mills                    "type": "string"
161*c6d7a45dSGunnar Mills                },
162*c6d7a45dSGunnar Mills                "RegionId": {
163*c6d7a45dSGunnar Mills                    "description": "The memory region ID to which to disable the master passphrase.",
164*c6d7a45dSGunnar Mills                    "longDescription": "This parameter shall contain the memory region ID to which to disable the master passphrase.",
165*c6d7a45dSGunnar Mills                    "requiredParameter": true,
166*c6d7a45dSGunnar Mills                    "type": "string"
167*c6d7a45dSGunnar Mills                }
168*c6d7a45dSGunnar Mills            },
169*c6d7a45dSGunnar Mills            "patternProperties": {
170*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
171*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
172*c6d7a45dSGunnar Mills                    "type": [
173*c6d7a45dSGunnar Mills                        "array",
174*c6d7a45dSGunnar Mills                        "boolean",
175*c6d7a45dSGunnar Mills                        "integer",
176*c6d7a45dSGunnar Mills                        "number",
177*c6d7a45dSGunnar Mills                        "null",
178*c6d7a45dSGunnar Mills                        "object",
179*c6d7a45dSGunnar Mills                        "string"
180*c6d7a45dSGunnar Mills                    ]
181*c6d7a45dSGunnar Mills                }
182*c6d7a45dSGunnar Mills            },
183*c6d7a45dSGunnar Mills            "properties": {
184*c6d7a45dSGunnar Mills                "target": {
185*c6d7a45dSGunnar Mills                    "description": "Link to invoke action",
186*c6d7a45dSGunnar Mills                    "format": "uri-reference",
187*c6d7a45dSGunnar Mills                    "type": "string"
188*c6d7a45dSGunnar Mills                },
189*c6d7a45dSGunnar Mills                "title": {
190*c6d7a45dSGunnar Mills                    "description": "Friendly action name",
191*c6d7a45dSGunnar Mills                    "type": "string"
192*c6d7a45dSGunnar Mills                }
193*c6d7a45dSGunnar Mills            },
194*c6d7a45dSGunnar Mills            "type": "object",
195*c6d7a45dSGunnar Mills            "versionAdded": "v1_17_0"
196*c6d7a45dSGunnar Mills        },
197*c6d7a45dSGunnar Mills        "DisablePassphrase": {
198*c6d7a45dSGunnar Mills            "additionalProperties": false,
199*c6d7a45dSGunnar Mills            "description": "Disable passphrase for the given region.",
200*c6d7a45dSGunnar Mills            "longDescription": "This action shall disable the need for passphrases on the supplied region provided the supplied passphrase matches that of the region.",
201*c6d7a45dSGunnar Mills            "parameters": {
202*c6d7a45dSGunnar Mills                "Passphrase": {
203*c6d7a45dSGunnar Mills                    "description": "Passphrase for doing the operation.",
204*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the passphrase used in this action.",
205*c6d7a45dSGunnar Mills                    "requiredParameter": true,
206*c6d7a45dSGunnar Mills                    "type": "string"
207*c6d7a45dSGunnar Mills                },
208*c6d7a45dSGunnar Mills                "RegionId": {
209*c6d7a45dSGunnar Mills                    "description": "The memory region ID to which to apply this action.",
210*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the memory region ID to which to apply this action.",
211*c6d7a45dSGunnar Mills                    "requiredParameter": true,
212*c6d7a45dSGunnar Mills                    "type": "string"
213*c6d7a45dSGunnar Mills                }
214*c6d7a45dSGunnar Mills            },
215*c6d7a45dSGunnar Mills            "patternProperties": {
216*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
217*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
218*c6d7a45dSGunnar Mills                    "type": [
219*c6d7a45dSGunnar Mills                        "array",
220*c6d7a45dSGunnar Mills                        "boolean",
221*c6d7a45dSGunnar Mills                        "integer",
222*c6d7a45dSGunnar Mills                        "number",
223*c6d7a45dSGunnar Mills                        "null",
224*c6d7a45dSGunnar Mills                        "object",
225*c6d7a45dSGunnar Mills                        "string"
226*c6d7a45dSGunnar Mills                    ]
227*c6d7a45dSGunnar Mills                }
228*c6d7a45dSGunnar Mills            },
229*c6d7a45dSGunnar Mills            "properties": {
230*c6d7a45dSGunnar Mills                "target": {
231*c6d7a45dSGunnar Mills                    "description": "Link to invoke action",
232*c6d7a45dSGunnar Mills                    "format": "uri-reference",
233*c6d7a45dSGunnar Mills                    "type": "string"
234*c6d7a45dSGunnar Mills                },
235*c6d7a45dSGunnar Mills                "title": {
236*c6d7a45dSGunnar Mills                    "description": "Friendly action name",
237*c6d7a45dSGunnar Mills                    "type": "string"
238*c6d7a45dSGunnar Mills                }
239*c6d7a45dSGunnar Mills            },
240*c6d7a45dSGunnar Mills            "type": "object"
241*c6d7a45dSGunnar Mills        },
242*c6d7a45dSGunnar Mills        "ErrorCorrection": {
243*c6d7a45dSGunnar Mills            "enum": [
244*c6d7a45dSGunnar Mills                "NoECC",
245*c6d7a45dSGunnar Mills                "SingleBitECC",
246*c6d7a45dSGunnar Mills                "MultiBitECC",
247*c6d7a45dSGunnar Mills                "AddressParity"
248*c6d7a45dSGunnar Mills            ],
249*c6d7a45dSGunnar Mills            "enumDescriptions": {
250*c6d7a45dSGunnar Mills                "AddressParity": "Address parity errors can be corrected.",
251*c6d7a45dSGunnar Mills                "MultiBitECC": "Multibit data errors can be corrected by ECC.",
252*c6d7a45dSGunnar Mills                "NoECC": "No ECC available.",
253*c6d7a45dSGunnar Mills                "SingleBitECC": "Single bit data errors can be corrected by ECC."
254*c6d7a45dSGunnar Mills            },
255*c6d7a45dSGunnar Mills            "type": "string"
256*c6d7a45dSGunnar Mills        },
257*c6d7a45dSGunnar Mills        "FreezeSecurityState": {
258*c6d7a45dSGunnar Mills            "additionalProperties": false,
259*c6d7a45dSGunnar Mills            "description": "Freezes the security state of the memory device.",
260*c6d7a45dSGunnar Mills            "longDescription": "This action shall freeze the security state of the memory device.",
261*c6d7a45dSGunnar Mills            "parameters": {},
262*c6d7a45dSGunnar Mills            "patternProperties": {
263*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
264*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
265*c6d7a45dSGunnar Mills                    "type": [
266*c6d7a45dSGunnar Mills                        "array",
267*c6d7a45dSGunnar Mills                        "boolean",
268*c6d7a45dSGunnar Mills                        "integer",
269*c6d7a45dSGunnar Mills                        "number",
270*c6d7a45dSGunnar Mills                        "null",
271*c6d7a45dSGunnar Mills                        "object",
272*c6d7a45dSGunnar Mills                        "string"
273*c6d7a45dSGunnar Mills                    ]
274*c6d7a45dSGunnar Mills                }
275*c6d7a45dSGunnar Mills            },
276*c6d7a45dSGunnar Mills            "properties": {
277*c6d7a45dSGunnar Mills                "target": {
278*c6d7a45dSGunnar Mills                    "description": "Link to invoke action",
279*c6d7a45dSGunnar Mills                    "format": "uri-reference",
280*c6d7a45dSGunnar Mills                    "type": "string"
281*c6d7a45dSGunnar Mills                },
282*c6d7a45dSGunnar Mills                "title": {
283*c6d7a45dSGunnar Mills                    "description": "Friendly action name",
284*c6d7a45dSGunnar Mills                    "type": "string"
285*c6d7a45dSGunnar Mills                }
286*c6d7a45dSGunnar Mills            },
287*c6d7a45dSGunnar Mills            "type": "object",
288*c6d7a45dSGunnar Mills            "versionAdded": "v1_17_0"
289*c6d7a45dSGunnar Mills        },
290*c6d7a45dSGunnar Mills        "HealthData": {
291*c6d7a45dSGunnar Mills            "additionalProperties": false,
292*c6d7a45dSGunnar Mills            "description": "The health data of a memory device.",
293*c6d7a45dSGunnar Mills            "longDescription": "This type shall contain the health data of a memory device.",
294*c6d7a45dSGunnar Mills            "patternProperties": {
295*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
296*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
297*c6d7a45dSGunnar Mills                    "type": [
298*c6d7a45dSGunnar Mills                        "array",
299*c6d7a45dSGunnar Mills                        "boolean",
300*c6d7a45dSGunnar Mills                        "integer",
301*c6d7a45dSGunnar Mills                        "number",
302*c6d7a45dSGunnar Mills                        "null",
303*c6d7a45dSGunnar Mills                        "object",
304*c6d7a45dSGunnar Mills                        "string"
305*c6d7a45dSGunnar Mills                    ]
306*c6d7a45dSGunnar Mills                }
307*c6d7a45dSGunnar Mills            },
308*c6d7a45dSGunnar Mills            "properties": {
309*c6d7a45dSGunnar Mills                "PredictedMediaLifeLeftPercent": {
310*c6d7a45dSGunnar Mills                    "deprecated": "This property has been deprecated in favor of `PredictedMediaLifeLeftPercent` in the `MemoryMetrics` resource.",
311*c6d7a45dSGunnar Mills                    "description": "The current health of the memory device as a percentage.",
312*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the current health of the memory device as a percentage, `0` to `100`.",
313*c6d7a45dSGunnar Mills                    "maximum": 100,
314*c6d7a45dSGunnar Mills                    "minimum": 0,
315*c6d7a45dSGunnar Mills                    "readonly": true,
316*c6d7a45dSGunnar Mills                    "type": [
317*c6d7a45dSGunnar Mills                        "number",
318*c6d7a45dSGunnar Mills                        "null"
319*c6d7a45dSGunnar Mills                    ],
320*c6d7a45dSGunnar Mills                    "units": "%",
321*c6d7a45dSGunnar Mills                    "versionAdded": "v1_17_0",
322*c6d7a45dSGunnar Mills                    "versionDeprecated": "v1_19_0"
323*c6d7a45dSGunnar Mills                }
324*c6d7a45dSGunnar Mills            },
325*c6d7a45dSGunnar Mills            "type": "object"
326*c6d7a45dSGunnar Mills        },
327*c6d7a45dSGunnar Mills        "InjectPersistentPoison": {
328*c6d7a45dSGunnar Mills            "additionalProperties": false,
329*c6d7a45dSGunnar Mills            "description": "Injects poison to a specific persistent memory address in the memory device.",
330*c6d7a45dSGunnar Mills            "longDescription": "This action shall inject poison to a specific persistent memory address in the memory device.",
331*c6d7a45dSGunnar Mills            "parameters": {
332*c6d7a45dSGunnar Mills                "PhysicalAddress": {
333*c6d7a45dSGunnar Mills                    "description": "The device persistent physical address in which to perform a poison injection as a hex-encoded string.",
334*c6d7a45dSGunnar Mills                    "longDescription": "This parameter shall contain the device persistent physical address in which to perform a poison injection as a hex-encoded string.",
335*c6d7a45dSGunnar Mills                    "pattern": "^0x[0-9a-fA-F]+$",
336*c6d7a45dSGunnar Mills                    "requiredParameter": true,
337*c6d7a45dSGunnar Mills                    "type": "string"
338*c6d7a45dSGunnar Mills                }
339*c6d7a45dSGunnar Mills            },
340*c6d7a45dSGunnar Mills            "patternProperties": {
341*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
342*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
343*c6d7a45dSGunnar Mills                    "type": [
344*c6d7a45dSGunnar Mills                        "array",
345*c6d7a45dSGunnar Mills                        "boolean",
346*c6d7a45dSGunnar Mills                        "integer",
347*c6d7a45dSGunnar Mills                        "number",
348*c6d7a45dSGunnar Mills                        "null",
349*c6d7a45dSGunnar Mills                        "object",
350*c6d7a45dSGunnar Mills                        "string"
351*c6d7a45dSGunnar Mills                    ]
352*c6d7a45dSGunnar Mills                }
353*c6d7a45dSGunnar Mills            },
354*c6d7a45dSGunnar Mills            "properties": {
355*c6d7a45dSGunnar Mills                "target": {
356*c6d7a45dSGunnar Mills                    "description": "Link to invoke action",
357*c6d7a45dSGunnar Mills                    "format": "uri-reference",
358*c6d7a45dSGunnar Mills                    "type": "string"
359*c6d7a45dSGunnar Mills                },
360*c6d7a45dSGunnar Mills                "title": {
361*c6d7a45dSGunnar Mills                    "description": "Friendly action name",
362*c6d7a45dSGunnar Mills                    "type": "string"
363*c6d7a45dSGunnar Mills                }
364*c6d7a45dSGunnar Mills            },
365*c6d7a45dSGunnar Mills            "type": "object",
366*c6d7a45dSGunnar Mills            "versionAdded": "v1_17_0"
367*c6d7a45dSGunnar Mills        },
368*c6d7a45dSGunnar Mills        "Links": {
369*c6d7a45dSGunnar Mills            "additionalProperties": false,
370*c6d7a45dSGunnar Mills            "description": "The links to other resources that are related to this resource.",
371*c6d7a45dSGunnar 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.",
372*c6d7a45dSGunnar Mills            "patternProperties": {
373*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
374*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
375*c6d7a45dSGunnar Mills                    "type": [
376*c6d7a45dSGunnar Mills                        "array",
377*c6d7a45dSGunnar Mills                        "boolean",
378*c6d7a45dSGunnar Mills                        "integer",
379*c6d7a45dSGunnar Mills                        "number",
380*c6d7a45dSGunnar Mills                        "null",
381*c6d7a45dSGunnar Mills                        "object",
382*c6d7a45dSGunnar Mills                        "string"
383*c6d7a45dSGunnar Mills                    ]
384*c6d7a45dSGunnar Mills                }
385*c6d7a45dSGunnar Mills            },
386*c6d7a45dSGunnar Mills            "properties": {
387*c6d7a45dSGunnar Mills                "Batteries": {
388*c6d7a45dSGunnar Mills                    "description": "The batteries that provide power to this memory device during a power-loss event.",
389*c6d7a45dSGunnar Mills                    "items": {
390*c6d7a45dSGunnar Mills                        "$ref": "http://redfish.dmtf.org/schemas/v1/Battery.json#/definitions/Battery"
391*c6d7a45dSGunnar Mills                    },
392*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain an array of links to resources of type `Battery` that represent the batteries that provide power to this memory device during a power-loss event, such as with battery-backed NVDIMMs.  This property shall not be present if the batteries power the containing chassis as a whole rather than the individual memory device.",
393*c6d7a45dSGunnar Mills                    "readonly": true,
394*c6d7a45dSGunnar Mills                    "type": "array",
395*c6d7a45dSGunnar Mills                    "versionAdded": "v1_15_0"
396*c6d7a45dSGunnar Mills                },
397*c6d7a45dSGunnar Mills                "Batteries@odata.count": {
398*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
399*c6d7a45dSGunnar Mills                },
400*c6d7a45dSGunnar Mills                "Chassis": {
401*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Chassis.json#/definitions/Chassis",
402*c6d7a45dSGunnar Mills                    "description": "The link to the chassis that contains this memory device.",
403*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a link to a resource of type `Chassis` that represents the physical container associated with this memory device.",
404*c6d7a45dSGunnar Mills                    "readonly": true,
405*c6d7a45dSGunnar Mills                    "versionAdded": "v1_2_0"
406*c6d7a45dSGunnar Mills                },
407*c6d7a45dSGunnar Mills                "Endpoints": {
408*c6d7a45dSGunnar Mills                    "description": "An array of links to the endpoints associated with this memory.",
409*c6d7a45dSGunnar Mills                    "items": {
410*c6d7a45dSGunnar Mills                        "$ref": "http://redfish.dmtf.org/schemas/v1/Endpoint.json#/definitions/Endpoint"
411*c6d7a45dSGunnar Mills                    },
412*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain an array of links to resources of type `Endpoint` that represent the endpoints associated with this memory.",
413*c6d7a45dSGunnar Mills                    "readonly": true,
414*c6d7a45dSGunnar Mills                    "type": "array",
415*c6d7a45dSGunnar Mills                    "versionAdded": "v1_17_0"
416*c6d7a45dSGunnar Mills                },
417*c6d7a45dSGunnar Mills                "Endpoints@odata.count": {
418*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
419*c6d7a45dSGunnar Mills                },
420*c6d7a45dSGunnar Mills                "MemoryMediaSources": {
421*c6d7a45dSGunnar Mills                    "description": "An array of memory chunks providing media for this memory.",
422*c6d7a45dSGunnar Mills                    "items": {
423*c6d7a45dSGunnar Mills                        "$ref": "http://redfish.dmtf.org/schemas/v1/MemoryChunks.json#/definitions/MemoryChunks"
424*c6d7a45dSGunnar Mills                    },
425*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain an array of links to resources of type `MemoryChunks` that represent the memory chunk instances providing media for this memory.",
426*c6d7a45dSGunnar Mills                    "readonly": true,
427*c6d7a45dSGunnar Mills                    "type": "array",
428*c6d7a45dSGunnar Mills                    "versionAdded": "v1_17_0"
429*c6d7a45dSGunnar Mills                },
430*c6d7a45dSGunnar Mills                "MemoryMediaSources@odata.count": {
431*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
432*c6d7a45dSGunnar Mills                },
433*c6d7a45dSGunnar Mills                "MemoryRegionMediaSources": {
434*c6d7a45dSGunnar Mills                    "description": "An array of memory regions providing media for this memory.",
435*c6d7a45dSGunnar Mills                    "items": {
436*c6d7a45dSGunnar Mills                        "$ref": "http://redfish.dmtf.org/schemas/v1/MemoryRegion.json#/definitions/MemoryRegion"
437*c6d7a45dSGunnar Mills                    },
438*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain an array of links to resources of type `MemoryRegion` that represent the memory region instances providing media for this memory.",
439*c6d7a45dSGunnar Mills                    "readonly": true,
440*c6d7a45dSGunnar Mills                    "type": "array",
441*c6d7a45dSGunnar Mills                    "versionAdded": "v1_18_0"
442*c6d7a45dSGunnar Mills                },
443*c6d7a45dSGunnar Mills                "MemoryRegionMediaSources@odata.count": {
444*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
445*c6d7a45dSGunnar Mills                },
446*c6d7a45dSGunnar Mills                "Oem": {
447*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
448*c6d7a45dSGunnar Mills                    "description": "The OEM extension property.",
449*c6d7a45dSGunnar 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."
450*c6d7a45dSGunnar Mills                },
451*c6d7a45dSGunnar Mills                "Processors": {
452*c6d7a45dSGunnar Mills                    "description": "An array of links to the processors associated with this memory device.",
453*c6d7a45dSGunnar Mills                    "items": {
454*c6d7a45dSGunnar Mills                        "$ref": "http://redfish.dmtf.org/schemas/v1/Processor.json#/definitions/Processor"
455*c6d7a45dSGunnar Mills                    },
456*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain an array of links to resources of type `Processor` that are associated with this memory device.",
457*c6d7a45dSGunnar Mills                    "readonly": true,
458*c6d7a45dSGunnar Mills                    "type": "array",
459*c6d7a45dSGunnar Mills                    "versionAdded": "v1_11_0"
460*c6d7a45dSGunnar Mills                },
461*c6d7a45dSGunnar Mills                "Processors@odata.count": {
462*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
463*c6d7a45dSGunnar Mills                }
464*c6d7a45dSGunnar Mills            },
465*c6d7a45dSGunnar Mills            "type": "object"
466*c6d7a45dSGunnar Mills        },
467*c6d7a45dSGunnar Mills        "Memory": {
468*c6d7a45dSGunnar Mills            "additionalProperties": false,
469*c6d7a45dSGunnar Mills            "description": "The `Memory` schema represents a memory device, such as a DIMM, and its configuration.  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.",
470*c6d7a45dSGunnar Mills            "longDescription": "This resource shall represent a memory device in a Redfish implementation.  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`.",
471*c6d7a45dSGunnar Mills            "patternProperties": {
472*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
473*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
474*c6d7a45dSGunnar Mills                    "type": [
475*c6d7a45dSGunnar Mills                        "array",
476*c6d7a45dSGunnar Mills                        "boolean",
477*c6d7a45dSGunnar Mills                        "integer",
478*c6d7a45dSGunnar Mills                        "number",
479*c6d7a45dSGunnar Mills                        "null",
480*c6d7a45dSGunnar Mills                        "object",
481*c6d7a45dSGunnar Mills                        "string"
482*c6d7a45dSGunnar Mills                    ]
483*c6d7a45dSGunnar Mills                }
484*c6d7a45dSGunnar Mills            },
485*c6d7a45dSGunnar Mills            "properties": {
486*c6d7a45dSGunnar Mills                "@odata.context": {
487*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/context"
488*c6d7a45dSGunnar Mills                },
489*c6d7a45dSGunnar Mills                "@odata.etag": {
490*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/etag"
491*c6d7a45dSGunnar Mills                },
492*c6d7a45dSGunnar Mills                "@odata.id": {
493*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/id"
494*c6d7a45dSGunnar Mills                },
495*c6d7a45dSGunnar Mills                "@odata.type": {
496*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/type"
497*c6d7a45dSGunnar Mills                },
498*c6d7a45dSGunnar Mills                "Actions": {
499*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/Actions",
500*c6d7a45dSGunnar Mills                    "description": "The available actions for this resource.",
501*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the available actions for this resource."
502*c6d7a45dSGunnar Mills                },
503*c6d7a45dSGunnar Mills                "AllocationAlignmentMiB": {
504*c6d7a45dSGunnar Mills                    "description": "The boundary that memory regions are allocated on, measured in mebibytes (MiB).",
505*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the alignment boundary on which memory regions are allocated, measured in MiB.",
506*c6d7a45dSGunnar Mills                    "readonly": true,
507*c6d7a45dSGunnar Mills                    "type": [
508*c6d7a45dSGunnar Mills                        "integer",
509*c6d7a45dSGunnar Mills                        "null"
510*c6d7a45dSGunnar Mills                    ],
511*c6d7a45dSGunnar Mills                    "units": "MiBy",
512*c6d7a45dSGunnar Mills                    "versionAdded": "v1_2_0"
513*c6d7a45dSGunnar Mills                },
514*c6d7a45dSGunnar Mills                "AllocationIncrementMiB": {
515*c6d7a45dSGunnar Mills                    "description": "The size of the smallest unit of allocation for a memory region in mebibytes (MiB).",
516*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the allocation increment for regions, measured in MiB.",
517*c6d7a45dSGunnar Mills                    "readonly": true,
518*c6d7a45dSGunnar Mills                    "type": [
519*c6d7a45dSGunnar Mills                        "integer",
520*c6d7a45dSGunnar Mills                        "null"
521*c6d7a45dSGunnar Mills                    ],
522*c6d7a45dSGunnar Mills                    "units": "MiBy",
523*c6d7a45dSGunnar Mills                    "versionAdded": "v1_2_0"
524*c6d7a45dSGunnar Mills                },
525*c6d7a45dSGunnar Mills                "AllowedSpeedsMHz": {
526*c6d7a45dSGunnar Mills                    "description": "Speeds supported by this memory device.",
527*c6d7a45dSGunnar Mills                    "items": {
528*c6d7a45dSGunnar Mills                        "type": "integer"
529*c6d7a45dSGunnar Mills                    },
530*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the speeds supported by this memory device.",
531*c6d7a45dSGunnar Mills                    "readonly": true,
532*c6d7a45dSGunnar Mills                    "type": "array",
533*c6d7a45dSGunnar Mills                    "units": "MHz"
534*c6d7a45dSGunnar Mills                },
535*c6d7a45dSGunnar Mills                "Assembly": {
536*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Assembly.json#/definitions/Assembly",
537*c6d7a45dSGunnar Mills                    "description": "The link to the assembly resource associated with this memory device.",
538*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a link to a resource of type `Assembly`.",
539*c6d7a45dSGunnar Mills                    "readonly": true,
540*c6d7a45dSGunnar Mills                    "versionAdded": "v1_4_0"
541*c6d7a45dSGunnar Mills                },
542*c6d7a45dSGunnar Mills                "BaseModuleType": {
543*c6d7a45dSGunnar Mills                    "anyOf": [
544*c6d7a45dSGunnar Mills                        {
545*c6d7a45dSGunnar Mills                            "$ref": "#/definitions/BaseModuleType"
546*c6d7a45dSGunnar Mills                        },
547*c6d7a45dSGunnar Mills                        {
548*c6d7a45dSGunnar Mills                            "type": "null"
549*c6d7a45dSGunnar Mills                        }
550*c6d7a45dSGunnar Mills                    ],
551*c6d7a45dSGunnar Mills                    "description": "The base module type of the memory device.",
552*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the base module type of the memory device.",
553*c6d7a45dSGunnar Mills                    "readonly": true
554*c6d7a45dSGunnar Mills                },
555*c6d7a45dSGunnar Mills                "BusWidthBits": {
556*c6d7a45dSGunnar Mills                    "description": "The bus width, in bits.",
557*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the bus width, in bits.",
558*c6d7a45dSGunnar Mills                    "readonly": true,
559*c6d7a45dSGunnar Mills                    "type": [
560*c6d7a45dSGunnar Mills                        "integer",
561*c6d7a45dSGunnar Mills                        "null"
562*c6d7a45dSGunnar Mills                    ]
563*c6d7a45dSGunnar Mills                },
564*c6d7a45dSGunnar Mills                "CXL": {
565*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/CXL",
566*c6d7a45dSGunnar Mills                    "description": "CXL properties for this memory device.",
567*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain CXL-specific properties for this memory device.",
568*c6d7a45dSGunnar Mills                    "versionAdded": "v1_17_0"
569*c6d7a45dSGunnar Mills                },
570*c6d7a45dSGunnar Mills                "CacheLevel": {
571*c6d7a45dSGunnar Mills                    "description": "The level of the cache memory.",
572*c6d7a45dSGunnar Mills                    "longDescription": "This value shall contain the level of the cache memory.  This property shall only be present if the `MemoryType` contains the value `Cache`.",
573*c6d7a45dSGunnar Mills                    "readonly": true,
574*c6d7a45dSGunnar Mills                    "type": "integer",
575*c6d7a45dSGunnar Mills                    "versionAdded": "v1_20_0"
576*c6d7a45dSGunnar Mills                },
577*c6d7a45dSGunnar Mills                "CacheSizeMiB": {
578*c6d7a45dSGunnar Mills                    "description": "Total size of the cache portion memory in MiB.",
579*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the total size of the cache portion memory in MiB.  If the `MemoryType` property contains the value `Cache`, the `CacheSizeMiB` property shall be absent and the `CapacityMiB` property shall be present.",
580*c6d7a45dSGunnar Mills                    "readonly": true,
581*c6d7a45dSGunnar Mills                    "type": [
582*c6d7a45dSGunnar Mills                        "integer",
583*c6d7a45dSGunnar Mills                        "null"
584*c6d7a45dSGunnar Mills                    ],
585*c6d7a45dSGunnar Mills                    "units": "MiBy",
586*c6d7a45dSGunnar Mills                    "versionAdded": "v1_4_0"
587*c6d7a45dSGunnar Mills                },
588*c6d7a45dSGunnar Mills                "CapacityMiB": {
589*c6d7a45dSGunnar Mills                    "description": "Memory capacity in mebibytes (MiB).",
590*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the memory capacity in MiB.",
591*c6d7a45dSGunnar Mills                    "readonly": true,
592*c6d7a45dSGunnar Mills                    "type": [
593*c6d7a45dSGunnar Mills                        "integer",
594*c6d7a45dSGunnar Mills                        "null"
595*c6d7a45dSGunnar Mills                    ],
596*c6d7a45dSGunnar Mills                    "units": "MiBy"
597*c6d7a45dSGunnar Mills                },
598*c6d7a45dSGunnar Mills                "Certificates": {
599*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/CertificateCollection.json#/definitions/CertificateCollection",
600*c6d7a45dSGunnar Mills                    "description": "The link to a collection of certificates for device identity and attestation.",
601*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a link to a resource collection of type `CertificateCollection` that contains certificates for device identity and attestation.",
602*c6d7a45dSGunnar Mills                    "readonly": true,
603*c6d7a45dSGunnar Mills                    "versionAdded": "v1_11_0"
604*c6d7a45dSGunnar Mills                },
605*c6d7a45dSGunnar Mills                "ConfigurationLocked": {
606*c6d7a45dSGunnar Mills                    "description": "An indication of whether the configuration of this memory device is locked and cannot be altered.",
607*c6d7a45dSGunnar Mills                    "longDescription": "This property shall indicate whether the configuration of this memory device is locked and cannot be altered.",
608*c6d7a45dSGunnar Mills                    "readonly": true,
609*c6d7a45dSGunnar Mills                    "type": [
610*c6d7a45dSGunnar Mills                        "boolean",
611*c6d7a45dSGunnar Mills                        "null"
612*c6d7a45dSGunnar Mills                    ],
613*c6d7a45dSGunnar Mills                    "versionAdded": "v1_7_0"
614*c6d7a45dSGunnar Mills                },
615*c6d7a45dSGunnar Mills                "DataWidthBits": {
616*c6d7a45dSGunnar Mills                    "description": "Data width in bits.",
617*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the data width in bits.",
618*c6d7a45dSGunnar Mills                    "readonly": true,
619*c6d7a45dSGunnar Mills                    "type": [
620*c6d7a45dSGunnar Mills                        "integer",
621*c6d7a45dSGunnar Mills                        "null"
622*c6d7a45dSGunnar Mills                    ]
623*c6d7a45dSGunnar Mills                },
624*c6d7a45dSGunnar Mills                "Description": {
625*c6d7a45dSGunnar Mills                    "anyOf": [
626*c6d7a45dSGunnar Mills                        {
627*c6d7a45dSGunnar Mills                            "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Description"
628*c6d7a45dSGunnar Mills                        },
629*c6d7a45dSGunnar Mills                        {
630*c6d7a45dSGunnar Mills                            "type": "null"
631*c6d7a45dSGunnar Mills                        }
632*c6d7a45dSGunnar Mills                    ],
633*c6d7a45dSGunnar Mills                    "readonly": true
634*c6d7a45dSGunnar Mills                },
635*c6d7a45dSGunnar Mills                "DeviceID": {
636*c6d7a45dSGunnar Mills                    "deprecated": "This property has been deprecated in favor of `ModuleProductID`.",
637*c6d7a45dSGunnar Mills                    "description": "Device ID.",
638*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the device ID of the memory device.",
639*c6d7a45dSGunnar Mills                    "readonly": true,
640*c6d7a45dSGunnar Mills                    "type": [
641*c6d7a45dSGunnar Mills                        "string",
642*c6d7a45dSGunnar Mills                        "null"
643*c6d7a45dSGunnar Mills                    ],
644*c6d7a45dSGunnar Mills                    "versionDeprecated": "v1_3_0"
645*c6d7a45dSGunnar Mills                },
646*c6d7a45dSGunnar Mills                "DeviceLocator": {
647*c6d7a45dSGunnar Mills                    "deprecated": "This property has been deprecated in favor of the `ServiceLabel` property within `Location`.",
648*c6d7a45dSGunnar Mills                    "description": "Location of the memory device in the platform.",
649*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the location of the memory device in the platform, typically marked in the silk screen.",
650*c6d7a45dSGunnar Mills                    "readonly": true,
651*c6d7a45dSGunnar Mills                    "type": [
652*c6d7a45dSGunnar Mills                        "string",
653*c6d7a45dSGunnar Mills                        "null"
654*c6d7a45dSGunnar Mills                    ],
655*c6d7a45dSGunnar Mills                    "versionDeprecated": "v1_9_0"
656*c6d7a45dSGunnar Mills                },
657*c6d7a45dSGunnar Mills                "Enabled": {
658*c6d7a45dSGunnar Mills                    "description": "An indication of whether this memory is enabled.",
659*c6d7a45dSGunnar Mills                    "longDescription": "The value of this property shall indicate if this memory is enabled.",
660*c6d7a45dSGunnar Mills                    "readonly": false,
661*c6d7a45dSGunnar Mills                    "type": "boolean",
662*c6d7a45dSGunnar Mills                    "versionAdded": "v1_12_0"
663*c6d7a45dSGunnar Mills                },
664*c6d7a45dSGunnar Mills                "EnvironmentMetrics": {
665*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/EnvironmentMetrics.json#/definitions/EnvironmentMetrics",
666*c6d7a45dSGunnar Mills                    "description": "The link to the environment metrics for this memory.",
667*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a link to a resource of type `EnvironmentMetrics` that specifies the environment metrics for this memory.",
668*c6d7a45dSGunnar Mills                    "readonly": true,
669*c6d7a45dSGunnar Mills                    "versionAdded": "v1_11_0"
670*c6d7a45dSGunnar Mills                },
671*c6d7a45dSGunnar Mills                "ErrorCorrection": {
672*c6d7a45dSGunnar Mills                    "anyOf": [
673*c6d7a45dSGunnar Mills                        {
674*c6d7a45dSGunnar Mills                            "$ref": "#/definitions/ErrorCorrection"
675*c6d7a45dSGunnar Mills                        },
676*c6d7a45dSGunnar Mills                        {
677*c6d7a45dSGunnar Mills                            "type": "null"
678*c6d7a45dSGunnar Mills                        }
679*c6d7a45dSGunnar Mills                    ],
680*c6d7a45dSGunnar Mills                    "description": "Error correction scheme supported for this memory device.",
681*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the error correction scheme supported for this memory device.",
682*c6d7a45dSGunnar Mills                    "readonly": true
683*c6d7a45dSGunnar Mills                },
684*c6d7a45dSGunnar Mills                "FirmwareApiVersion": {
685*c6d7a45dSGunnar Mills                    "description": "Version of API supported by the firmware.",
686*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the version of API supported by the firmware.",
687*c6d7a45dSGunnar Mills                    "readonly": true,
688*c6d7a45dSGunnar Mills                    "type": [
689*c6d7a45dSGunnar Mills                        "string",
690*c6d7a45dSGunnar Mills                        "null"
691*c6d7a45dSGunnar Mills                    ]
692*c6d7a45dSGunnar Mills                },
693*c6d7a45dSGunnar Mills                "FirmwareRevision": {
694*c6d7a45dSGunnar Mills                    "description": "Revision of firmware on the memory controller.",
695*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the revision of firmware on the memory controller.",
696*c6d7a45dSGunnar Mills                    "readonly": true,
697*c6d7a45dSGunnar Mills                    "type": [
698*c6d7a45dSGunnar Mills                        "string",
699*c6d7a45dSGunnar Mills                        "null"
700*c6d7a45dSGunnar Mills                    ]
701*c6d7a45dSGunnar Mills                },
702*c6d7a45dSGunnar Mills                "FunctionClasses": {
703*c6d7a45dSGunnar Mills                    "deprecated": "This property has been deprecated in favor of `OperatingMemoryModes` at the root of the resource, or `MemoryClassification` found within `RegionSet`.",
704*c6d7a45dSGunnar Mills                    "description": "Function classes by the memory device.",
705*c6d7a45dSGunnar Mills                    "items": {
706*c6d7a45dSGunnar Mills                        "type": "string"
707*c6d7a45dSGunnar Mills                    },
708*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the function classes by the memory device.",
709*c6d7a45dSGunnar Mills                    "readonly": true,
710*c6d7a45dSGunnar Mills                    "type": "array",
711*c6d7a45dSGunnar Mills                    "versionDeprecated": "v1_3_0"
712*c6d7a45dSGunnar Mills                },
713*c6d7a45dSGunnar Mills                "HealthData": {
714*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/HealthData",
715*c6d7a45dSGunnar Mills                    "description": "The health data of this memory device.",
716*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the health data of this memory device.",
717*c6d7a45dSGunnar Mills                    "versionAdded": "v1_17_0"
718*c6d7a45dSGunnar Mills                },
719*c6d7a45dSGunnar Mills                "Id": {
720*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Id",
721*c6d7a45dSGunnar Mills                    "readonly": true
722*c6d7a45dSGunnar Mills                },
723*c6d7a45dSGunnar Mills                "IsRankSpareEnabled": {
724*c6d7a45dSGunnar Mills                    "description": "An indication of whether rank spare is enabled for this memory device.",
725*c6d7a45dSGunnar Mills                    "longDescription": "This property shall indicate whether rank spare is enabled for this memory device.",
726*c6d7a45dSGunnar Mills                    "readonly": true,
727*c6d7a45dSGunnar Mills                    "type": [
728*c6d7a45dSGunnar Mills                        "boolean",
729*c6d7a45dSGunnar Mills                        "null"
730*c6d7a45dSGunnar Mills                    ]
731*c6d7a45dSGunnar Mills                },
732*c6d7a45dSGunnar Mills                "IsSpareDeviceEnabled": {
733*c6d7a45dSGunnar Mills                    "description": "An indication of whether a spare device is enabled for this memory device.",
734*c6d7a45dSGunnar Mills                    "longDescription": "This property shall indicate whether the spare device is enabled.",
735*c6d7a45dSGunnar Mills                    "readonly": true,
736*c6d7a45dSGunnar Mills                    "type": [
737*c6d7a45dSGunnar Mills                        "boolean",
738*c6d7a45dSGunnar Mills                        "null"
739*c6d7a45dSGunnar Mills                    ]
740*c6d7a45dSGunnar Mills                },
741*c6d7a45dSGunnar Mills                "Links": {
742*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/Links",
743*c6d7a45dSGunnar Mills                    "description": "The links to other resources that are related to this resource.",
744*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain links to resources that are related to but are not contained by, or subordinate to, this resource.",
745*c6d7a45dSGunnar Mills                    "versionAdded": "v1_2_0"
746*c6d7a45dSGunnar Mills                },
747*c6d7a45dSGunnar Mills                "Location": {
748*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Location",
749*c6d7a45dSGunnar Mills                    "description": "The location of the memory device.",
750*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the location information of the associated memory device.",
751*c6d7a45dSGunnar Mills                    "versionAdded": "v1_4_0"
752*c6d7a45dSGunnar Mills                },
753*c6d7a45dSGunnar Mills                "LocationIndicatorActive": {
754*c6d7a45dSGunnar Mills                    "description": "An indicator allowing an operator to physically locate this resource.",
755*c6d7a45dSGunnar Mills                    "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.",
756*c6d7a45dSGunnar Mills                    "readonly": false,
757*c6d7a45dSGunnar Mills                    "type": [
758*c6d7a45dSGunnar Mills                        "boolean",
759*c6d7a45dSGunnar Mills                        "null"
760*c6d7a45dSGunnar Mills                    ],
761*c6d7a45dSGunnar Mills                    "versionAdded": "v1_10_0"
762*c6d7a45dSGunnar Mills                },
763*c6d7a45dSGunnar Mills                "Log": {
764*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/LogService.json#/definitions/LogService",
765*c6d7a45dSGunnar Mills                    "description": "The link to the log service associated with this memory.",
766*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain a link to a resource of type `LogService`.",
767*c6d7a45dSGunnar Mills                    "readonly": true,
768*c6d7a45dSGunnar Mills                    "uriSegment": "DeviceLog",
769*c6d7a45dSGunnar Mills                    "versionAdded": "v1_13_0"
770*c6d7a45dSGunnar Mills                },
771*c6d7a45dSGunnar Mills                "LogicalSizeMiB": {
772*c6d7a45dSGunnar Mills                    "description": "Total size of the logical memory in MiB.",
773*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the total size of the logical memory in MiB.",
774*c6d7a45dSGunnar Mills                    "readonly": true,
775*c6d7a45dSGunnar Mills                    "type": [
776*c6d7a45dSGunnar Mills                        "integer",
777*c6d7a45dSGunnar Mills                        "null"
778*c6d7a45dSGunnar Mills                    ],
779*c6d7a45dSGunnar Mills                    "units": "MiBy",
780*c6d7a45dSGunnar Mills                    "versionAdded": "v1_4_0"
781*c6d7a45dSGunnar Mills                },
782*c6d7a45dSGunnar Mills                "Manufacturer": {
783*c6d7a45dSGunnar Mills                    "description": "The memory device manufacturer.",
784*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the manufacturer of the memory device.",
785*c6d7a45dSGunnar Mills                    "readonly": true,
786*c6d7a45dSGunnar Mills                    "type": [
787*c6d7a45dSGunnar Mills                        "string",
788*c6d7a45dSGunnar Mills                        "null"
789*c6d7a45dSGunnar Mills                    ]
790*c6d7a45dSGunnar Mills                },
791*c6d7a45dSGunnar Mills                "MaxTDPMilliWatts": {
792*c6d7a45dSGunnar Mills                    "description": "Set of maximum power budgets supported by the memory device in milliwatt units.",
793*c6d7a45dSGunnar Mills                    "items": {
794*c6d7a45dSGunnar Mills                        "type": "integer"
795*c6d7a45dSGunnar Mills                    },
796*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain an array of maximum power budgets supported by the memory device in milliwatt units.",
797*c6d7a45dSGunnar Mills                    "readonly": true,
798*c6d7a45dSGunnar Mills                    "type": "array",
799*c6d7a45dSGunnar Mills                    "units": "mW"
800*c6d7a45dSGunnar Mills                },
801*c6d7a45dSGunnar Mills                "Measurements": {
802*c6d7a45dSGunnar Mills                    "deprecated": "This property has been deprecated in favor of the `ComponentIntegrity` resource.",
803*c6d7a45dSGunnar Mills                    "description": "An array of DSP0274-defined measurement blocks.",
804*c6d7a45dSGunnar Mills                    "items": {
805*c6d7a45dSGunnar Mills                        "$ref": "http://redfish.dmtf.org/schemas/v1/SoftwareInventory.json#/definitions/MeasurementBlock"
806*c6d7a45dSGunnar Mills                    },
807*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain an array of DSP0274-defined measurement blocks.",
808*c6d7a45dSGunnar Mills                    "type": "array",
809*c6d7a45dSGunnar Mills                    "versionAdded": "v1_11_0",
810*c6d7a45dSGunnar Mills                    "versionDeprecated": "v1_14_0"
811*c6d7a45dSGunnar Mills                },
812*c6d7a45dSGunnar Mills                "MemoryDeviceType": {
813*c6d7a45dSGunnar Mills                    "anyOf": [
814*c6d7a45dSGunnar Mills                        {
815*c6d7a45dSGunnar Mills                            "$ref": "#/definitions/MemoryDeviceType"
816*c6d7a45dSGunnar Mills                        },
817*c6d7a45dSGunnar Mills                        {
818*c6d7a45dSGunnar Mills                            "type": "null"
819*c6d7a45dSGunnar Mills                        }
820*c6d7a45dSGunnar Mills                    ],
821*c6d7a45dSGunnar Mills                    "description": "Type details of the memory device.",
822*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the Memory Device Type as defined by SMBIOS.",
823*c6d7a45dSGunnar Mills                    "readonly": true
824*c6d7a45dSGunnar Mills                },
825*c6d7a45dSGunnar Mills                "MemoryLocation": {
826*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/MemoryLocation",
827*c6d7a45dSGunnar Mills                    "description": "Memory connection information to sockets and memory controllers.",
828*c6d7a45dSGunnar Mills                    "longDescription": "This object shall contain properties that describe the memory connection information to sockets and memory controllers."
829*c6d7a45dSGunnar Mills                },
830*c6d7a45dSGunnar Mills                "MemoryMedia": {
831*c6d7a45dSGunnar Mills                    "description": "Media of this memory device.",
832*c6d7a45dSGunnar Mills                    "items": {
833*c6d7a45dSGunnar Mills                        "$ref": "#/definitions/MemoryMedia"
834*c6d7a45dSGunnar Mills                    },
835*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the media types of this memory device.",
836*c6d7a45dSGunnar Mills                    "readonly": true,
837*c6d7a45dSGunnar Mills                    "type": "array"
838*c6d7a45dSGunnar Mills                },
839*c6d7a45dSGunnar Mills                "MemorySubsystemControllerManufacturerID": {
840*c6d7a45dSGunnar Mills                    "description": "The manufacturer ID of the memory subsystem controller of this memory device.",
841*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the two byte manufacturer ID of the memory subsystem controller of this memory device as defined by JEDEC in JEP-106.",
842*c6d7a45dSGunnar Mills                    "pattern": "^0[xX](([a-fA-F]|[0-9]){2}){2}$",
843*c6d7a45dSGunnar Mills                    "readonly": true,
844*c6d7a45dSGunnar Mills                    "type": [
845*c6d7a45dSGunnar Mills                        "string",
846*c6d7a45dSGunnar Mills                        "null"
847*c6d7a45dSGunnar Mills                    ],
848*c6d7a45dSGunnar Mills                    "versionAdded": "v1_3_0"
849*c6d7a45dSGunnar Mills                },
850*c6d7a45dSGunnar Mills                "MemorySubsystemControllerProductID": {
851*c6d7a45dSGunnar Mills                    "description": "The product ID of the memory subsystem controller of this memory device.",
852*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the two byte product ID of the memory subsystem controller of this memory device as defined by the manufacturer.",
853*c6d7a45dSGunnar Mills                    "pattern": "^0[xX](([a-fA-F]|[0-9]){2}){2}$",
854*c6d7a45dSGunnar Mills                    "readonly": true,
855*c6d7a45dSGunnar Mills                    "type": [
856*c6d7a45dSGunnar Mills                        "string",
857*c6d7a45dSGunnar Mills                        "null"
858*c6d7a45dSGunnar Mills                    ],
859*c6d7a45dSGunnar Mills                    "versionAdded": "v1_3_0"
860*c6d7a45dSGunnar Mills                },
861*c6d7a45dSGunnar Mills                "MemoryType": {
862*c6d7a45dSGunnar Mills                    "anyOf": [
863*c6d7a45dSGunnar Mills                        {
864*c6d7a45dSGunnar Mills                            "$ref": "#/definitions/MemoryType"
865*c6d7a45dSGunnar Mills                        },
866*c6d7a45dSGunnar Mills                        {
867*c6d7a45dSGunnar Mills                            "type": "null"
868*c6d7a45dSGunnar Mills                        }
869*c6d7a45dSGunnar Mills                    ],
870*c6d7a45dSGunnar Mills                    "description": "The type of memory device.",
871*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the type of memory device that this resource represents.",
872*c6d7a45dSGunnar Mills                    "readonly": true
873*c6d7a45dSGunnar Mills                },
874*c6d7a45dSGunnar Mills                "Metrics": {
875*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/MemoryMetrics.json#/definitions/MemoryMetrics",
876*c6d7a45dSGunnar Mills                    "description": "The link to the metrics associated with this memory device.",
877*c6d7a45dSGunnar Mills                    "longDescription": "The link to the metrics associated with this memory device.",
878*c6d7a45dSGunnar Mills                    "readonly": true,
879*c6d7a45dSGunnar Mills                    "uriSegment": "MemoryMetrics"
880*c6d7a45dSGunnar Mills                },
881*c6d7a45dSGunnar Mills                "Model": {
882*c6d7a45dSGunnar Mills                    "description": "The product model number of this device.",
883*c6d7a45dSGunnar Mills                    "longDescription": "This property shall indicate the model information as provided by the manufacturer of this memory.",
884*c6d7a45dSGunnar Mills                    "readonly": true,
885*c6d7a45dSGunnar Mills                    "type": [
886*c6d7a45dSGunnar Mills                        "string",
887*c6d7a45dSGunnar Mills                        "null"
888*c6d7a45dSGunnar Mills                    ],
889*c6d7a45dSGunnar Mills                    "versionAdded": "v1_11_0"
890*c6d7a45dSGunnar Mills                },
891*c6d7a45dSGunnar Mills                "ModuleManufacturerID": {
892*c6d7a45dSGunnar Mills                    "description": "The manufacturer ID of this memory device.",
893*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the two byte manufacturer ID of this memory device as defined by JEDEC in JEP-106.",
894*c6d7a45dSGunnar Mills                    "pattern": "^0[xX](([a-fA-F]|[0-9]){2}){2}$",
895*c6d7a45dSGunnar Mills                    "readonly": true,
896*c6d7a45dSGunnar Mills                    "type": [
897*c6d7a45dSGunnar Mills                        "string",
898*c6d7a45dSGunnar Mills                        "null"
899*c6d7a45dSGunnar Mills                    ],
900*c6d7a45dSGunnar Mills                    "versionAdded": "v1_3_0"
901*c6d7a45dSGunnar Mills                },
902*c6d7a45dSGunnar Mills                "ModuleProductID": {
903*c6d7a45dSGunnar Mills                    "description": "The product ID of this memory device.",
904*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the two byte product ID of this memory device as defined by the manufacturer.",
905*c6d7a45dSGunnar Mills                    "pattern": "^0[xX](([a-fA-F]|[0-9]){2}){2}$",
906*c6d7a45dSGunnar Mills                    "readonly": true,
907*c6d7a45dSGunnar Mills                    "type": [
908*c6d7a45dSGunnar Mills                        "string",
909*c6d7a45dSGunnar Mills                        "null"
910*c6d7a45dSGunnar Mills                    ],
911*c6d7a45dSGunnar Mills                    "versionAdded": "v1_3_0"
912*c6d7a45dSGunnar Mills                },
913*c6d7a45dSGunnar Mills                "Name": {
914*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Name",
915*c6d7a45dSGunnar Mills                    "readonly": true
916*c6d7a45dSGunnar Mills                },
917*c6d7a45dSGunnar Mills                "NonVolatileSizeLimitMiB": {
918*c6d7a45dSGunnar Mills                    "description": "The total non-volatile memory capacity in mebibytes (MiB).",
919*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the total non-volatile memory capacity in mebibytes (MiB).",
920*c6d7a45dSGunnar Mills                    "readonly": false,
921*c6d7a45dSGunnar Mills                    "type": "integer",
922*c6d7a45dSGunnar Mills                    "units": "MiBy",
923*c6d7a45dSGunnar Mills                    "versionAdded": "v1_17_0"
924*c6d7a45dSGunnar Mills                },
925*c6d7a45dSGunnar Mills                "NonVolatileSizeMiB": {
926*c6d7a45dSGunnar Mills                    "description": "Total size of the non-volatile portion memory in MiB.",
927*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the total size of the non-volatile portion memory in MiB.",
928*c6d7a45dSGunnar Mills                    "readonly": true,
929*c6d7a45dSGunnar Mills                    "type": [
930*c6d7a45dSGunnar Mills                        "integer",
931*c6d7a45dSGunnar Mills                        "null"
932*c6d7a45dSGunnar Mills                    ],
933*c6d7a45dSGunnar Mills                    "units": "MiBy",
934*c6d7a45dSGunnar Mills                    "versionAdded": "v1_4_0"
935*c6d7a45dSGunnar Mills                },
936*c6d7a45dSGunnar Mills                "Oem": {
937*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
938*c6d7a45dSGunnar Mills                    "description": "The OEM extension property.",
939*c6d7a45dSGunnar 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."
940*c6d7a45dSGunnar Mills                },
941*c6d7a45dSGunnar Mills                "OperatingMemoryModes": {
942*c6d7a45dSGunnar Mills                    "description": "Memory modes supported by the memory device.",
943*c6d7a45dSGunnar Mills                    "items": {
944*c6d7a45dSGunnar Mills                        "$ref": "#/definitions/OperatingMemoryModes"
945*c6d7a45dSGunnar Mills                    },
946*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the memory modes supported by the memory device.",
947*c6d7a45dSGunnar Mills                    "readonly": true,
948*c6d7a45dSGunnar Mills                    "type": "array"
949*c6d7a45dSGunnar Mills                },
950*c6d7a45dSGunnar Mills                "OperatingSpeedMhz": {
951*c6d7a45dSGunnar Mills                    "description": "Operating speed of the memory device in MHz or MT/s as appropriate.",
952*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the operating speed of the memory device in MHz or MT/s (mega-transfers per second) as reported by the memory device.  Memory devices that operate at their bus speed shall report the operating speed in MHz (bus speed), while memory devices that transfer data faster than their bus speed, such as DDR memory, shall report the operating speed in MT/s (mega-transfers/second).  The reported value shall match the conventionally reported values for the technology used by the memory device.",
953*c6d7a45dSGunnar Mills                    "readonly": true,
954*c6d7a45dSGunnar Mills                    "type": [
955*c6d7a45dSGunnar Mills                        "integer",
956*c6d7a45dSGunnar Mills                        "null"
957*c6d7a45dSGunnar Mills                    ],
958*c6d7a45dSGunnar Mills                    "units": "MHz"
959*c6d7a45dSGunnar Mills                },
960*c6d7a45dSGunnar Mills                "OperatingSpeedRangeMHz": {
961*c6d7a45dSGunnar Mills                    "anyOf": [
962*c6d7a45dSGunnar Mills                        {
963*c6d7a45dSGunnar Mills                            "$ref": "http://redfish.dmtf.org/schemas/v1/Control.json#/definitions/ControlRangeExcerpt"
964*c6d7a45dSGunnar Mills                        },
965*c6d7a45dSGunnar Mills                        {
966*c6d7a45dSGunnar Mills                            "type": "null"
967*c6d7a45dSGunnar Mills                        }
968*c6d7a45dSGunnar Mills                    ],
969*c6d7a45dSGunnar Mills                    "description": "Range of allowed operating speeds (MHz).",
970*c6d7a45dSGunnar Mills                    "excerptCopy": "ControlRangeExcerpt",
971*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the operating speed control, 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`.",
972*c6d7a45dSGunnar Mills                    "readonly": false,
973*c6d7a45dSGunnar Mills                    "versionAdded": "v1_13_0"
974*c6d7a45dSGunnar Mills                },
975*c6d7a45dSGunnar Mills                "PartNumber": {
976*c6d7a45dSGunnar Mills                    "description": "The product part number of this device.",
977*c6d7a45dSGunnar Mills                    "longDescription": "This property shall indicate the part number as provided by the manufacturer of this memory device.",
978*c6d7a45dSGunnar Mills                    "readonly": true,
979*c6d7a45dSGunnar Mills                    "type": [
980*c6d7a45dSGunnar Mills                        "string",
981*c6d7a45dSGunnar Mills                        "null"
982*c6d7a45dSGunnar Mills                    ]
983*c6d7a45dSGunnar Mills                },
984*c6d7a45dSGunnar Mills                "PersistentRegionNumberLimit": {
985*c6d7a45dSGunnar Mills                    "description": "Total number of persistent regions this memory device can support.",
986*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the total number of persistent regions this memory device can support.",
987*c6d7a45dSGunnar Mills                    "readonly": true,
988*c6d7a45dSGunnar Mills                    "type": [
989*c6d7a45dSGunnar Mills                        "integer",
990*c6d7a45dSGunnar Mills                        "null"
991*c6d7a45dSGunnar Mills                    ],
992*c6d7a45dSGunnar Mills                    "versionAdded": "v1_2_0"
993*c6d7a45dSGunnar Mills                },
994*c6d7a45dSGunnar Mills                "PersistentRegionSizeLimitMiB": {
995*c6d7a45dSGunnar Mills                    "description": "Total size of persistent regions in mebibytes (MiB).",
996*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the total size of persistent regions in MiB.",
997*c6d7a45dSGunnar Mills                    "readonly": true,
998*c6d7a45dSGunnar Mills                    "type": [
999*c6d7a45dSGunnar Mills                        "integer",
1000*c6d7a45dSGunnar Mills                        "null"
1001*c6d7a45dSGunnar Mills                    ],
1002*c6d7a45dSGunnar Mills                    "units": "MiBy"
1003*c6d7a45dSGunnar Mills                },
1004*c6d7a45dSGunnar Mills                "PersistentRegionSizeMaxMiB": {
1005*c6d7a45dSGunnar Mills                    "description": "Maximum size of a single persistent region in mebibytes (MiB).",
1006*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the maximum size of a single persistent regions in MiB.",
1007*c6d7a45dSGunnar Mills                    "readonly": true,
1008*c6d7a45dSGunnar Mills                    "type": [
1009*c6d7a45dSGunnar Mills                        "integer",
1010*c6d7a45dSGunnar Mills                        "null"
1011*c6d7a45dSGunnar Mills                    ],
1012*c6d7a45dSGunnar Mills                    "units": "MiBy",
1013*c6d7a45dSGunnar Mills                    "versionAdded": "v1_2_0"
1014*c6d7a45dSGunnar Mills                },
1015*c6d7a45dSGunnar Mills                "PoisonListMaxMediaErrorRecords": {
1016*c6d7a45dSGunnar Mills                    "description": "The maximum number of media error records this device can track in its poison list.",
1017*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the maximum number of media error records this device can track in its poison list.",
1018*c6d7a45dSGunnar Mills                    "readonly": false,
1019*c6d7a45dSGunnar Mills                    "type": "integer",
1020*c6d7a45dSGunnar Mills                    "versionAdded": "v1_17_0"
1021*c6d7a45dSGunnar Mills                },
1022*c6d7a45dSGunnar Mills                "PowerManagementICManufacturerID": {
1023*c6d7a45dSGunnar Mills                    "description": "The manufacturer ID of the Power Management Integrated Controller on this memory device.",
1024*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the two byte manufacturer ID of the Power Management Integrated Controller on this memory device as defined by JEDEC in JESD301.",
1025*c6d7a45dSGunnar Mills                    "pattern": "^0[xX](([a-fA-F]|[0-9]){2}){2}$",
1026*c6d7a45dSGunnar Mills                    "readonly": true,
1027*c6d7a45dSGunnar Mills                    "type": [
1028*c6d7a45dSGunnar Mills                        "string",
1029*c6d7a45dSGunnar Mills                        "null"
1030*c6d7a45dSGunnar Mills                    ],
1031*c6d7a45dSGunnar Mills                    "versionAdded": "v1_20_0"
1032*c6d7a45dSGunnar Mills                },
1033*c6d7a45dSGunnar Mills                "PowerManagementICRevisionID": {
1034*c6d7a45dSGunnar Mills                    "description": "The revision ID of the Power Management Integrated Controller on this memory device.",
1035*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the two byte revision ID of the Power Management Integrated Controller on this memory device as defined by JEDEC in JESD301.",
1036*c6d7a45dSGunnar Mills                    "pattern": "^0[xX](([a-fA-F]|[0-9]){2}){2}$",
1037*c6d7a45dSGunnar Mills                    "readonly": true,
1038*c6d7a45dSGunnar Mills                    "type": [
1039*c6d7a45dSGunnar Mills                        "string",
1040*c6d7a45dSGunnar Mills                        "null"
1041*c6d7a45dSGunnar Mills                    ],
1042*c6d7a45dSGunnar Mills                    "versionAdded": "v1_20_0"
1043*c6d7a45dSGunnar Mills                },
1044*c6d7a45dSGunnar Mills                "PowerManagementPolicy": {
1045*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/PowerManagementPolicy",
1046*c6d7a45dSGunnar Mills                    "description": "Power management policy information.",
1047*c6d7a45dSGunnar Mills                    "longDescription": "This object shall contain properties that describe the power management policy for this resource."
1048*c6d7a45dSGunnar Mills                },
1049*c6d7a45dSGunnar Mills                "RankCount": {
1050*c6d7a45dSGunnar Mills                    "description": "Number of ranks available in the memory device.",
1051*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the number of ranks available in the memory device.  The ranks could be used for spare or interleave.",
1052*c6d7a45dSGunnar Mills                    "readonly": true,
1053*c6d7a45dSGunnar Mills                    "type": [
1054*c6d7a45dSGunnar Mills                        "integer",
1055*c6d7a45dSGunnar Mills                        "null"
1056*c6d7a45dSGunnar Mills                    ]
1057*c6d7a45dSGunnar Mills                },
1058*c6d7a45dSGunnar Mills                "Regions": {
1059*c6d7a45dSGunnar Mills                    "description": "Memory regions information within the memory device.",
1060*c6d7a45dSGunnar Mills                    "items": {
1061*c6d7a45dSGunnar Mills                        "$ref": "#/definitions/RegionSet"
1062*c6d7a45dSGunnar Mills                    },
1063*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the memory region information within the memory device.",
1064*c6d7a45dSGunnar Mills                    "type": "array"
1065*c6d7a45dSGunnar Mills                },
1066*c6d7a45dSGunnar Mills                "SecurityCapabilities": {
1067*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/SecurityCapabilities",
1068*c6d7a45dSGunnar Mills                    "description": "Security capabilities of the memory device.",
1069*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain properties that describe the security capabilities of the memory device."
1070*c6d7a45dSGunnar Mills                },
1071*c6d7a45dSGunnar Mills                "SecurityState": {
1072*c6d7a45dSGunnar Mills                    "anyOf": [
1073*c6d7a45dSGunnar Mills                        {
1074*c6d7a45dSGunnar Mills                            "$ref": "#/definitions/SecurityStates"
1075*c6d7a45dSGunnar Mills                        },
1076*c6d7a45dSGunnar Mills                        {
1077*c6d7a45dSGunnar Mills                            "type": "null"
1078*c6d7a45dSGunnar Mills                        }
1079*c6d7a45dSGunnar Mills                    ],
1080*c6d7a45dSGunnar Mills                    "description": "The current security state of this memory device.",
1081*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the current security state of this memory device.",
1082*c6d7a45dSGunnar Mills                    "readonly": false,
1083*c6d7a45dSGunnar Mills                    "versionAdded": "v1_7_0"
1084*c6d7a45dSGunnar Mills                },
1085*c6d7a45dSGunnar Mills                "SecurityStates": {
1086*c6d7a45dSGunnar Mills                    "$ref": "#/definitions/SecurityStateInfo",
1087*c6d7a45dSGunnar Mills                    "description": "The security states of this memory device.",
1088*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the security states of this memory device.",
1089*c6d7a45dSGunnar Mills                    "versionAdded": "v1_17_0"
1090*c6d7a45dSGunnar Mills                },
1091*c6d7a45dSGunnar Mills                "SerialNumber": {
1092*c6d7a45dSGunnar Mills                    "description": "The product serial number of this device.",
1093*c6d7a45dSGunnar Mills                    "longDescription": "This property shall indicate the serial number as provided by the manufacturer of this memory device.",
1094*c6d7a45dSGunnar Mills                    "readonly": true,
1095*c6d7a45dSGunnar Mills                    "type": [
1096*c6d7a45dSGunnar Mills                        "string",
1097*c6d7a45dSGunnar Mills                        "null"
1098*c6d7a45dSGunnar Mills                    ]
1099*c6d7a45dSGunnar Mills                },
1100*c6d7a45dSGunnar Mills                "SpareDeviceCount": {
1101*c6d7a45dSGunnar Mills                    "description": "Number of unused spare devices available in the memory device.",
1102*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the number of unused spare devices available in the memory device.  If the memory device fails, the spare devices could be used.",
1103*c6d7a45dSGunnar Mills                    "readonly": true,
1104*c6d7a45dSGunnar Mills                    "type": [
1105*c6d7a45dSGunnar Mills                        "integer",
1106*c6d7a45dSGunnar Mills                        "null"
1107*c6d7a45dSGunnar Mills                    ]
1108*c6d7a45dSGunnar Mills                },
1109*c6d7a45dSGunnar Mills                "SparePartNumber": {
1110*c6d7a45dSGunnar Mills                    "description": "The spare part number of the memory.",
1111*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the spare part number of the memory.",
1112*c6d7a45dSGunnar Mills                    "readonly": true,
1113*c6d7a45dSGunnar Mills                    "type": [
1114*c6d7a45dSGunnar Mills                        "string",
1115*c6d7a45dSGunnar Mills                        "null"
1116*c6d7a45dSGunnar Mills                    ],
1117*c6d7a45dSGunnar Mills                    "versionAdded": "v1_11_0"
1118*c6d7a45dSGunnar Mills                },
1119*c6d7a45dSGunnar Mills                "Status": {
1120*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Status",
1121*c6d7a45dSGunnar Mills                    "description": "The status and health of the resource and its subordinate or dependent resources.",
1122*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain any status or health properties of the resource.",
1123*c6d7a45dSGunnar Mills                    "versionAdded": "v1_1_0"
1124*c6d7a45dSGunnar Mills                },
1125*c6d7a45dSGunnar Mills                "SubsystemDeviceID": {
1126*c6d7a45dSGunnar Mills                    "deprecated": "This property has been deprecated in favor of `MemorySubsystemControllerProductID`.",
1127*c6d7a45dSGunnar Mills                    "description": "Subsystem device ID.",
1128*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the subsystem device ID of the memory device.",
1129*c6d7a45dSGunnar Mills                    "readonly": true,
1130*c6d7a45dSGunnar Mills                    "type": [
1131*c6d7a45dSGunnar Mills                        "string",
1132*c6d7a45dSGunnar Mills                        "null"
1133*c6d7a45dSGunnar Mills                    ],
1134*c6d7a45dSGunnar Mills                    "versionDeprecated": "v1_3_0"
1135*c6d7a45dSGunnar Mills                },
1136*c6d7a45dSGunnar Mills                "SubsystemVendorID": {
1137*c6d7a45dSGunnar Mills                    "deprecated": "This property has been deprecated in favor of `MemorySubsystemControllerManufacturerID`.",
1138*c6d7a45dSGunnar Mills                    "description": "SubSystem vendor ID.",
1139*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the subsystem vendor ID of the memory device.",
1140*c6d7a45dSGunnar Mills                    "readonly": true,
1141*c6d7a45dSGunnar Mills                    "type": [
1142*c6d7a45dSGunnar Mills                        "string",
1143*c6d7a45dSGunnar Mills                        "null"
1144*c6d7a45dSGunnar Mills                    ],
1145*c6d7a45dSGunnar Mills                    "versionDeprecated": "v1_3_0"
1146*c6d7a45dSGunnar Mills                },
1147*c6d7a45dSGunnar Mills                "VendorID": {
1148*c6d7a45dSGunnar Mills                    "deprecated": "This property has been deprecated in favor of `ModuleManufacturerID`.",
1149*c6d7a45dSGunnar Mills                    "description": "Vendor ID.",
1150*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the vendor ID of the memory device.",
1151*c6d7a45dSGunnar Mills                    "readonly": true,
1152*c6d7a45dSGunnar Mills                    "type": [
1153*c6d7a45dSGunnar Mills                        "string",
1154*c6d7a45dSGunnar Mills                        "null"
1155*c6d7a45dSGunnar Mills                    ],
1156*c6d7a45dSGunnar Mills                    "versionDeprecated": "v1_3_0"
1157*c6d7a45dSGunnar Mills                },
1158*c6d7a45dSGunnar Mills                "VolatileRegionNumberLimit": {
1159*c6d7a45dSGunnar Mills                    "description": "Total number of volatile regions this memory device can support.",
1160*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the total number of volatile regions this memory device can support.",
1161*c6d7a45dSGunnar Mills                    "readonly": true,
1162*c6d7a45dSGunnar Mills                    "type": [
1163*c6d7a45dSGunnar Mills                        "integer",
1164*c6d7a45dSGunnar Mills                        "null"
1165*c6d7a45dSGunnar Mills                    ],
1166*c6d7a45dSGunnar Mills                    "versionAdded": "v1_2_0"
1167*c6d7a45dSGunnar Mills                },
1168*c6d7a45dSGunnar Mills                "VolatileRegionSizeLimitMiB": {
1169*c6d7a45dSGunnar Mills                    "description": "Total size of volatile regions in mebibytes (MiB).",
1170*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the total size of volatile regions in MiB.",
1171*c6d7a45dSGunnar Mills                    "readonly": true,
1172*c6d7a45dSGunnar Mills                    "type": [
1173*c6d7a45dSGunnar Mills                        "integer",
1174*c6d7a45dSGunnar Mills                        "null"
1175*c6d7a45dSGunnar Mills                    ],
1176*c6d7a45dSGunnar Mills                    "units": "MiBy"
1177*c6d7a45dSGunnar Mills                },
1178*c6d7a45dSGunnar Mills                "VolatileRegionSizeMaxMiB": {
1179*c6d7a45dSGunnar Mills                    "description": "Maximum size of a single volatile region in mebibytes (MiB).",
1180*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the maximum size of a single volatile regions in MiB.",
1181*c6d7a45dSGunnar Mills                    "readonly": true,
1182*c6d7a45dSGunnar Mills                    "type": [
1183*c6d7a45dSGunnar Mills                        "integer",
1184*c6d7a45dSGunnar Mills                        "null"
1185*c6d7a45dSGunnar Mills                    ],
1186*c6d7a45dSGunnar Mills                    "units": "MiBy",
1187*c6d7a45dSGunnar Mills                    "versionAdded": "v1_2_0"
1188*c6d7a45dSGunnar Mills                },
1189*c6d7a45dSGunnar Mills                "VolatileSizeLimitMiB": {
1190*c6d7a45dSGunnar Mills                    "description": "The total volatile memory capacity in mebibytes (MiB).",
1191*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the total volatile memory capacity in mebibytes (MiB).",
1192*c6d7a45dSGunnar Mills                    "readonly": false,
1193*c6d7a45dSGunnar Mills                    "type": "integer",
1194*c6d7a45dSGunnar Mills                    "units": "MiBy",
1195*c6d7a45dSGunnar Mills                    "versionAdded": "v1_17_0"
1196*c6d7a45dSGunnar Mills                },
1197*c6d7a45dSGunnar Mills                "VolatileSizeMiB": {
1198*c6d7a45dSGunnar Mills                    "description": "Total size of the volatile portion memory in MiB.",
1199*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the total size of the volatile portion memory in MiB.",
1200*c6d7a45dSGunnar Mills                    "readonly": true,
1201*c6d7a45dSGunnar Mills                    "type": [
1202*c6d7a45dSGunnar Mills                        "integer",
1203*c6d7a45dSGunnar Mills                        "null"
1204*c6d7a45dSGunnar Mills                    ],
1205*c6d7a45dSGunnar Mills                    "units": "MiBy",
1206*c6d7a45dSGunnar Mills                    "versionAdded": "v1_4_0"
1207*c6d7a45dSGunnar Mills                }
1208*c6d7a45dSGunnar Mills            },
1209*c6d7a45dSGunnar Mills            "required": [
1210*c6d7a45dSGunnar Mills                "@odata.id",
1211*c6d7a45dSGunnar Mills                "@odata.type",
1212*c6d7a45dSGunnar Mills                "Id",
1213*c6d7a45dSGunnar Mills                "Name"
1214*c6d7a45dSGunnar Mills            ],
1215*c6d7a45dSGunnar Mills            "type": "object"
1216*c6d7a45dSGunnar Mills        },
1217*c6d7a45dSGunnar Mills        "MemoryClassification": {
1218*c6d7a45dSGunnar Mills            "enum": [
1219*c6d7a45dSGunnar Mills                "Volatile",
1220*c6d7a45dSGunnar Mills                "ByteAccessiblePersistent",
1221*c6d7a45dSGunnar Mills                "Block"
1222*c6d7a45dSGunnar Mills            ],
1223*c6d7a45dSGunnar Mills            "enumDescriptions": {
1224*c6d7a45dSGunnar Mills                "Block": "Block-accessible memory.",
1225*c6d7a45dSGunnar Mills                "ByteAccessiblePersistent": "Byte-accessible persistent memory.",
1226*c6d7a45dSGunnar Mills                "Volatile": "Volatile memory."
1227*c6d7a45dSGunnar Mills            },
1228*c6d7a45dSGunnar Mills            "type": "string"
1229*c6d7a45dSGunnar Mills        },
1230*c6d7a45dSGunnar Mills        "MemoryDeviceType": {
1231*c6d7a45dSGunnar Mills            "enum": [
1232*c6d7a45dSGunnar Mills                "DDR",
1233*c6d7a45dSGunnar Mills                "DDR2",
1234*c6d7a45dSGunnar Mills                "DDR3",
1235*c6d7a45dSGunnar Mills                "DDR4",
1236*c6d7a45dSGunnar Mills                "DDR4_SDRAM",
1237*c6d7a45dSGunnar Mills                "DDR4E_SDRAM",
1238*c6d7a45dSGunnar Mills                "LPDDR4_SDRAM",
1239*c6d7a45dSGunnar Mills                "DDR3_SDRAM",
1240*c6d7a45dSGunnar Mills                "LPDDR3_SDRAM",
1241*c6d7a45dSGunnar Mills                "DDR2_SDRAM",
1242*c6d7a45dSGunnar Mills                "DDR2_SDRAM_FB_DIMM",
1243*c6d7a45dSGunnar Mills                "DDR2_SDRAM_FB_DIMM_PROBE",
1244*c6d7a45dSGunnar Mills                "DDR_SGRAM",
1245*c6d7a45dSGunnar Mills                "DDR_SDRAM",
1246*c6d7a45dSGunnar Mills                "ROM",
1247*c6d7a45dSGunnar Mills                "SDRAM",
1248*c6d7a45dSGunnar Mills                "EDO",
1249*c6d7a45dSGunnar Mills                "FastPageMode",
1250*c6d7a45dSGunnar Mills                "PipelinedNibble",
1251*c6d7a45dSGunnar Mills                "Logical",
1252*c6d7a45dSGunnar Mills                "HBM",
1253*c6d7a45dSGunnar Mills                "HBM2",
1254*c6d7a45dSGunnar Mills                "HBM2E",
1255*c6d7a45dSGunnar Mills                "HBM3",
1256*c6d7a45dSGunnar Mills                "GDDR",
1257*c6d7a45dSGunnar Mills                "GDDR2",
1258*c6d7a45dSGunnar Mills                "GDDR3",
1259*c6d7a45dSGunnar Mills                "GDDR4",
1260*c6d7a45dSGunnar Mills                "GDDR5",
1261*c6d7a45dSGunnar Mills                "GDDR5X",
1262*c6d7a45dSGunnar Mills                "GDDR6",
1263*c6d7a45dSGunnar Mills                "DDR5",
1264*c6d7a45dSGunnar Mills                "OEM",
1265*c6d7a45dSGunnar Mills                "LPDDR5_SDRAM",
1266*c6d7a45dSGunnar Mills                "DDR5_MRDIMM"
1267*c6d7a45dSGunnar Mills            ],
1268*c6d7a45dSGunnar Mills            "enumDescriptions": {
1269*c6d7a45dSGunnar Mills                "DDR": "DDR.",
1270*c6d7a45dSGunnar Mills                "DDR2": "DDR2.",
1271*c6d7a45dSGunnar Mills                "DDR2_SDRAM": "DDR2 SDRAM.",
1272*c6d7a45dSGunnar Mills                "DDR2_SDRAM_FB_DIMM": "DDR2 SDRAM FB_DIMM.",
1273*c6d7a45dSGunnar Mills                "DDR2_SDRAM_FB_DIMM_PROBE": "DDR2 SDRAM FB_DIMM PROBE.",
1274*c6d7a45dSGunnar Mills                "DDR3": "DDR3.",
1275*c6d7a45dSGunnar Mills                "DDR3_SDRAM": "DDR3 SDRAM.",
1276*c6d7a45dSGunnar Mills                "DDR4": "DDR4.",
1277*c6d7a45dSGunnar Mills                "DDR4E_SDRAM": "DDR4E SDRAM.",
1278*c6d7a45dSGunnar Mills                "DDR4_SDRAM": "DDR4 SDRAM.",
1279*c6d7a45dSGunnar Mills                "DDR5": "Double data rate type five synchronous dynamic random-access memory.",
1280*c6d7a45dSGunnar Mills                "DDR5_MRDIMM": "DDR5 MRDIMM.",
1281*c6d7a45dSGunnar Mills                "DDR_SDRAM": "DDR SDRAM.",
1282*c6d7a45dSGunnar Mills                "DDR_SGRAM": "DDR SGRAM.",
1283*c6d7a45dSGunnar Mills                "EDO": "EDO.",
1284*c6d7a45dSGunnar Mills                "FastPageMode": "Fast Page Mode.",
1285*c6d7a45dSGunnar Mills                "GDDR": "Synchronous graphics random-access memory.",
1286*c6d7a45dSGunnar Mills                "GDDR2": "Double data rate type two synchronous graphics random-access memory.",
1287*c6d7a45dSGunnar Mills                "GDDR3": "Double data rate type three synchronous graphics random-access memory.",
1288*c6d7a45dSGunnar Mills                "GDDR4": "Double data rate type four synchronous graphics random-access memory.",
1289*c6d7a45dSGunnar Mills                "GDDR5": "Double data rate type five synchronous graphics random-access memory.",
1290*c6d7a45dSGunnar Mills                "GDDR5X": "Double data rate type five X synchronous graphics random-access memory.",
1291*c6d7a45dSGunnar Mills                "GDDR6": "Double data rate type six synchronous graphics random-access memory.",
1292*c6d7a45dSGunnar Mills                "HBM": "High Bandwidth Memory.",
1293*c6d7a45dSGunnar Mills                "HBM2": "The second generation of High Bandwidth Memory.",
1294*c6d7a45dSGunnar Mills                "HBM2E": "An updated version of the second generation of High Bandwidth Memory.",
1295*c6d7a45dSGunnar Mills                "HBM3": "The third generation of High Bandwidth Memory.",
1296*c6d7a45dSGunnar Mills                "LPDDR3_SDRAM": "LPDDR3 SDRAM.",
1297*c6d7a45dSGunnar Mills                "LPDDR4_SDRAM": "LPDDR4 SDRAM.",
1298*c6d7a45dSGunnar Mills                "LPDDR5_SDRAM": "LPDDR5 SDRAM.",
1299*c6d7a45dSGunnar Mills                "Logical": "Logical device, such as when the memory is fabric-attached.",
1300*c6d7a45dSGunnar Mills                "OEM": "OEM-defined.",
1301*c6d7a45dSGunnar Mills                "PipelinedNibble": "Pipelined Nibble.",
1302*c6d7a45dSGunnar Mills                "ROM": "ROM.",
1303*c6d7a45dSGunnar Mills                "SDRAM": "SDRAM."
1304*c6d7a45dSGunnar Mills            },
1305*c6d7a45dSGunnar Mills            "enumVersionAdded": {
1306*c6d7a45dSGunnar Mills                "DDR5": "v1_11_0",
1307*c6d7a45dSGunnar Mills                "DDR5_MRDIMM": "v1_21_0",
1308*c6d7a45dSGunnar Mills                "GDDR": "v1_11_0",
1309*c6d7a45dSGunnar Mills                "GDDR2": "v1_11_0",
1310*c6d7a45dSGunnar Mills                "GDDR3": "v1_11_0",
1311*c6d7a45dSGunnar Mills                "GDDR4": "v1_11_0",
1312*c6d7a45dSGunnar Mills                "GDDR5": "v1_11_0",
1313*c6d7a45dSGunnar Mills                "GDDR5X": "v1_11_0",
1314*c6d7a45dSGunnar Mills                "GDDR6": "v1_11_0",
1315*c6d7a45dSGunnar Mills                "HBM": "v1_7_0",
1316*c6d7a45dSGunnar Mills                "HBM2": "v1_7_0",
1317*c6d7a45dSGunnar Mills                "HBM2E": "v1_17_0",
1318*c6d7a45dSGunnar Mills                "HBM3": "v1_11_0",
1319*c6d7a45dSGunnar Mills                "LPDDR5_SDRAM": "v1_19_0",
1320*c6d7a45dSGunnar Mills                "Logical": "v1_4_0",
1321*c6d7a45dSGunnar Mills                "OEM": "v1_11_0"
1322*c6d7a45dSGunnar Mills            },
1323*c6d7a45dSGunnar Mills            "type": "string"
1324*c6d7a45dSGunnar Mills        },
1325*c6d7a45dSGunnar Mills        "MemoryLocation": {
1326*c6d7a45dSGunnar Mills            "additionalProperties": false,
1327*c6d7a45dSGunnar Mills            "description": "Memory connection information to sockets and memory controllers.",
1328*c6d7a45dSGunnar Mills            "longDescription": "This type shall contain properties that describe the memory connection information to sockets and memory controllers.",
1329*c6d7a45dSGunnar Mills            "patternProperties": {
1330*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
1331*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
1332*c6d7a45dSGunnar Mills                    "type": [
1333*c6d7a45dSGunnar Mills                        "array",
1334*c6d7a45dSGunnar Mills                        "boolean",
1335*c6d7a45dSGunnar Mills                        "integer",
1336*c6d7a45dSGunnar Mills                        "number",
1337*c6d7a45dSGunnar Mills                        "null",
1338*c6d7a45dSGunnar Mills                        "object",
1339*c6d7a45dSGunnar Mills                        "string"
1340*c6d7a45dSGunnar Mills                    ]
1341*c6d7a45dSGunnar Mills                }
1342*c6d7a45dSGunnar Mills            },
1343*c6d7a45dSGunnar Mills            "properties": {
1344*c6d7a45dSGunnar Mills                "Channel": {
1345*c6d7a45dSGunnar Mills                    "description": "The channel number to which the memory device is connected.",
1346*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the channel number to which the memory device is connected.",
1347*c6d7a45dSGunnar Mills                    "readonly": true,
1348*c6d7a45dSGunnar Mills                    "type": [
1349*c6d7a45dSGunnar Mills                        "integer",
1350*c6d7a45dSGunnar Mills                        "null"
1351*c6d7a45dSGunnar Mills                    ]
1352*c6d7a45dSGunnar Mills                },
1353*c6d7a45dSGunnar Mills                "MemoryController": {
1354*c6d7a45dSGunnar Mills                    "description": "The memory controller number to which the memory device is connected.",
1355*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the memory controller number to which the memory device is connected.",
1356*c6d7a45dSGunnar Mills                    "readonly": true,
1357*c6d7a45dSGunnar Mills                    "type": [
1358*c6d7a45dSGunnar Mills                        "integer",
1359*c6d7a45dSGunnar Mills                        "null"
1360*c6d7a45dSGunnar Mills                    ]
1361*c6d7a45dSGunnar Mills                },
1362*c6d7a45dSGunnar Mills                "Slot": {
1363*c6d7a45dSGunnar Mills                    "description": "The slot number to which the memory device is connected.",
1364*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the slot number to which the memory device is connected.",
1365*c6d7a45dSGunnar Mills                    "readonly": true,
1366*c6d7a45dSGunnar Mills                    "type": [
1367*c6d7a45dSGunnar Mills                        "integer",
1368*c6d7a45dSGunnar Mills                        "null"
1369*c6d7a45dSGunnar Mills                    ]
1370*c6d7a45dSGunnar Mills                },
1371*c6d7a45dSGunnar Mills                "Socket": {
1372*c6d7a45dSGunnar Mills                    "description": "The socket number to which the memory device is connected.",
1373*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the socket number to which the memory device is connected.",
1374*c6d7a45dSGunnar Mills                    "readonly": true,
1375*c6d7a45dSGunnar Mills                    "type": [
1376*c6d7a45dSGunnar Mills                        "integer",
1377*c6d7a45dSGunnar Mills                        "null"
1378*c6d7a45dSGunnar Mills                    ]
1379*c6d7a45dSGunnar Mills                }
1380*c6d7a45dSGunnar Mills            },
1381*c6d7a45dSGunnar Mills            "type": "object"
1382*c6d7a45dSGunnar Mills        },
1383*c6d7a45dSGunnar Mills        "MemoryMedia": {
1384*c6d7a45dSGunnar Mills            "enum": [
1385*c6d7a45dSGunnar Mills                "DRAM",
1386*c6d7a45dSGunnar Mills                "NAND",
1387*c6d7a45dSGunnar Mills                "Intel3DXPoint",
1388*c6d7a45dSGunnar Mills                "Proprietary"
1389*c6d7a45dSGunnar Mills            ],
1390*c6d7a45dSGunnar Mills            "enumDescriptions": {
1391*c6d7a45dSGunnar Mills                "DRAM": "DRAM media.",
1392*c6d7a45dSGunnar Mills                "Intel3DXPoint": "Intel 3D XPoint media.",
1393*c6d7a45dSGunnar Mills                "NAND": "NAND media.",
1394*c6d7a45dSGunnar Mills                "Proprietary": "Proprietary media."
1395*c6d7a45dSGunnar Mills            },
1396*c6d7a45dSGunnar Mills            "enumVersionAdded": {
1397*c6d7a45dSGunnar Mills                "Intel3DXPoint": "v1_7_0"
1398*c6d7a45dSGunnar Mills            },
1399*c6d7a45dSGunnar Mills            "type": "string"
1400*c6d7a45dSGunnar Mills        },
1401*c6d7a45dSGunnar Mills        "MemoryType": {
1402*c6d7a45dSGunnar Mills            "enum": [
1403*c6d7a45dSGunnar Mills                "DRAM",
1404*c6d7a45dSGunnar Mills                "NVDIMM_N",
1405*c6d7a45dSGunnar Mills                "NVDIMM_F",
1406*c6d7a45dSGunnar Mills                "NVDIMM_P",
1407*c6d7a45dSGunnar Mills                "IntelOptane",
1408*c6d7a45dSGunnar Mills                "Cache"
1409*c6d7a45dSGunnar Mills            ],
1410*c6d7a45dSGunnar Mills            "enumDescriptions": {
1411*c6d7a45dSGunnar Mills                "Cache": "Cache.",
1412*c6d7a45dSGunnar Mills                "DRAM": "The memory device is composed of volatile memory.",
1413*c6d7a45dSGunnar Mills                "IntelOptane": "The memory device is an Intel Optane Persistent Memory Module.",
1414*c6d7a45dSGunnar Mills                "NVDIMM_F": "The memory device is composed of non-volatile memory.",
1415*c6d7a45dSGunnar Mills                "NVDIMM_N": "The memory device is composed of volatile memory backed by non-volatile memory.",
1416*c6d7a45dSGunnar Mills                "NVDIMM_P": "The memory device is composed of a combination of non-volatile and volatile memory."
1417*c6d7a45dSGunnar Mills            },
1418*c6d7a45dSGunnar Mills            "enumLongDescriptions": {
1419*c6d7a45dSGunnar Mills                "Cache": "This value shall represent cache memory.",
1420*c6d7a45dSGunnar Mills                "DRAM": "This value shall represent a volatile DRAM memory device.",
1421*c6d7a45dSGunnar Mills                "IntelOptane": "This value shall represent an Intel Optane Persistent Memory Module.",
1422*c6d7a45dSGunnar Mills                "NVDIMM_F": "This value shall represent an NVDIMM_F memory device as defined by JEDEC.",
1423*c6d7a45dSGunnar Mills                "NVDIMM_N": "This value shall represent an NVDIMM_N memory device as defined by JEDEC.",
1424*c6d7a45dSGunnar Mills                "NVDIMM_P": "This value shall represent an NVDIMM_P memory device as defined by JEDEC."
1425*c6d7a45dSGunnar Mills            },
1426*c6d7a45dSGunnar Mills            "enumVersionAdded": {
1427*c6d7a45dSGunnar Mills                "Cache": "v1_20_0",
1428*c6d7a45dSGunnar Mills                "IntelOptane": "v1_6_0"
1429*c6d7a45dSGunnar Mills            },
1430*c6d7a45dSGunnar Mills            "type": "string"
1431*c6d7a45dSGunnar Mills        },
1432*c6d7a45dSGunnar Mills        "OemActions": {
1433*c6d7a45dSGunnar Mills            "additionalProperties": true,
1434*c6d7a45dSGunnar Mills            "description": "The available OEM-specific actions for this resource.",
1435*c6d7a45dSGunnar Mills            "longDescription": "This type shall contain the available OEM-specific actions for this resource.",
1436*c6d7a45dSGunnar Mills            "patternProperties": {
1437*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
1438*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
1439*c6d7a45dSGunnar Mills                    "type": [
1440*c6d7a45dSGunnar Mills                        "array",
1441*c6d7a45dSGunnar Mills                        "boolean",
1442*c6d7a45dSGunnar Mills                        "integer",
1443*c6d7a45dSGunnar Mills                        "number",
1444*c6d7a45dSGunnar Mills                        "null",
1445*c6d7a45dSGunnar Mills                        "object",
1446*c6d7a45dSGunnar Mills                        "string"
1447*c6d7a45dSGunnar Mills                    ]
1448*c6d7a45dSGunnar Mills                }
1449*c6d7a45dSGunnar Mills            },
1450*c6d7a45dSGunnar Mills            "properties": {},
1451*c6d7a45dSGunnar Mills            "type": "object"
1452*c6d7a45dSGunnar Mills        },
1453*c6d7a45dSGunnar Mills        "OperatingMemoryModes": {
1454*c6d7a45dSGunnar Mills            "enum": [
1455*c6d7a45dSGunnar Mills                "Volatile",
1456*c6d7a45dSGunnar Mills                "PMEM",
1457*c6d7a45dSGunnar Mills                "Block"
1458*c6d7a45dSGunnar Mills            ],
1459*c6d7a45dSGunnar Mills            "enumDescriptions": {
1460*c6d7a45dSGunnar Mills                "Block": "Block-accessible system memory.",
1461*c6d7a45dSGunnar Mills                "PMEM": "Persistent memory, byte-accessible through system address space.",
1462*c6d7a45dSGunnar Mills                "Volatile": "Volatile memory."
1463*c6d7a45dSGunnar Mills            },
1464*c6d7a45dSGunnar Mills            "type": "string"
1465*c6d7a45dSGunnar Mills        },
1466*c6d7a45dSGunnar Mills        "OverwriteUnit": {
1467*c6d7a45dSGunnar Mills            "additionalProperties": false,
1468*c6d7a45dSGunnar Mills            "description": "This contains the action for securely erasing given regions using the NIST SP800-88 Purge: Overwrite.",
1469*c6d7a45dSGunnar Mills            "longDescription": "This action shall securely erase the supplied region provided the supplied passphrase matches that of the given region using the NIST SP800-88 Purge: Overwrite.  Use the `SecureEraseUnit` method to perform NIST SP800-88 Purge: Cryptographic Erase.",
1470*c6d7a45dSGunnar Mills            "parameters": {
1471*c6d7a45dSGunnar Mills                "Passphrase": {
1472*c6d7a45dSGunnar Mills                    "description": "Passphrase for doing the operation.",
1473*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the passphrase used in this action.",
1474*c6d7a45dSGunnar Mills                    "requiredParameter": true,
1475*c6d7a45dSGunnar Mills                    "type": "string"
1476*c6d7a45dSGunnar Mills                },
1477*c6d7a45dSGunnar Mills                "RegionId": {
1478*c6d7a45dSGunnar Mills                    "description": "The memory region ID to which to apply this action.",
1479*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the memory region ID to which to apply this action.",
1480*c6d7a45dSGunnar Mills                    "requiredParameter": true,
1481*c6d7a45dSGunnar Mills                    "type": "string"
1482*c6d7a45dSGunnar Mills                }
1483*c6d7a45dSGunnar Mills            },
1484*c6d7a45dSGunnar Mills            "patternProperties": {
1485*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
1486*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
1487*c6d7a45dSGunnar Mills                    "type": [
1488*c6d7a45dSGunnar Mills                        "array",
1489*c6d7a45dSGunnar Mills                        "boolean",
1490*c6d7a45dSGunnar Mills                        "integer",
1491*c6d7a45dSGunnar Mills                        "number",
1492*c6d7a45dSGunnar Mills                        "null",
1493*c6d7a45dSGunnar Mills                        "object",
1494*c6d7a45dSGunnar Mills                        "string"
1495*c6d7a45dSGunnar Mills                    ]
1496*c6d7a45dSGunnar Mills                }
1497*c6d7a45dSGunnar Mills            },
1498*c6d7a45dSGunnar Mills            "properties": {
1499*c6d7a45dSGunnar Mills                "target": {
1500*c6d7a45dSGunnar Mills                    "description": "Link to invoke action",
1501*c6d7a45dSGunnar Mills                    "format": "uri-reference",
1502*c6d7a45dSGunnar Mills                    "type": "string"
1503*c6d7a45dSGunnar Mills                },
1504*c6d7a45dSGunnar Mills                "title": {
1505*c6d7a45dSGunnar Mills                    "description": "Friendly action name",
1506*c6d7a45dSGunnar Mills                    "type": "string"
1507*c6d7a45dSGunnar Mills                }
1508*c6d7a45dSGunnar Mills            },
1509*c6d7a45dSGunnar Mills            "type": "object",
1510*c6d7a45dSGunnar Mills            "versionAdded": "v1_6_0"
1511*c6d7a45dSGunnar Mills        },
1512*c6d7a45dSGunnar Mills        "PowerManagementPolicy": {
1513*c6d7a45dSGunnar Mills            "additionalProperties": false,
1514*c6d7a45dSGunnar Mills            "description": "Power management policy information.",
1515*c6d7a45dSGunnar Mills            "longDescription": "This type shall contain properties that describe the power management policy for this resource.",
1516*c6d7a45dSGunnar Mills            "patternProperties": {
1517*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
1518*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
1519*c6d7a45dSGunnar Mills                    "type": [
1520*c6d7a45dSGunnar Mills                        "array",
1521*c6d7a45dSGunnar Mills                        "boolean",
1522*c6d7a45dSGunnar Mills                        "integer",
1523*c6d7a45dSGunnar Mills                        "number",
1524*c6d7a45dSGunnar Mills                        "null",
1525*c6d7a45dSGunnar Mills                        "object",
1526*c6d7a45dSGunnar Mills                        "string"
1527*c6d7a45dSGunnar Mills                    ]
1528*c6d7a45dSGunnar Mills                }
1529*c6d7a45dSGunnar Mills            },
1530*c6d7a45dSGunnar Mills            "properties": {
1531*c6d7a45dSGunnar Mills                "AveragePowerBudgetMilliWatts": {
1532*c6d7a45dSGunnar Mills                    "description": "Average power budget, in milliwatt units.",
1533*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the average power budget, in milliwatt units.",
1534*c6d7a45dSGunnar Mills                    "readonly": true,
1535*c6d7a45dSGunnar Mills                    "type": [
1536*c6d7a45dSGunnar Mills                        "integer",
1537*c6d7a45dSGunnar Mills                        "null"
1538*c6d7a45dSGunnar Mills                    ],
1539*c6d7a45dSGunnar Mills                    "units": "mW"
1540*c6d7a45dSGunnar Mills                },
1541*c6d7a45dSGunnar Mills                "MaxTDPMilliWatts": {
1542*c6d7a45dSGunnar Mills                    "description": "Maximum TDP in milliwatt units.",
1543*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the maximum TDP in milliwatt units.",
1544*c6d7a45dSGunnar Mills                    "readonly": true,
1545*c6d7a45dSGunnar Mills                    "type": [
1546*c6d7a45dSGunnar Mills                        "integer",
1547*c6d7a45dSGunnar Mills                        "null"
1548*c6d7a45dSGunnar Mills                    ],
1549*c6d7a45dSGunnar Mills                    "units": "mW"
1550*c6d7a45dSGunnar Mills                },
1551*c6d7a45dSGunnar Mills                "PeakPowerBudgetMilliWatts": {
1552*c6d7a45dSGunnar Mills                    "description": "Peak power budget, in milliwatt units.",
1553*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the peak power budget, in milliwatt units.",
1554*c6d7a45dSGunnar Mills                    "readonly": true,
1555*c6d7a45dSGunnar Mills                    "type": [
1556*c6d7a45dSGunnar Mills                        "integer",
1557*c6d7a45dSGunnar Mills                        "null"
1558*c6d7a45dSGunnar Mills                    ],
1559*c6d7a45dSGunnar Mills                    "units": "mW"
1560*c6d7a45dSGunnar Mills                },
1561*c6d7a45dSGunnar Mills                "PolicyEnabled": {
1562*c6d7a45dSGunnar Mills                    "description": "An indication of whether the power management policy is enabled.",
1563*c6d7a45dSGunnar Mills                    "longDescription": "This property shall indicate whether the power management policy is enabled.",
1564*c6d7a45dSGunnar Mills                    "readonly": true,
1565*c6d7a45dSGunnar Mills                    "type": [
1566*c6d7a45dSGunnar Mills                        "boolean",
1567*c6d7a45dSGunnar Mills                        "null"
1568*c6d7a45dSGunnar Mills                    ]
1569*c6d7a45dSGunnar Mills                }
1570*c6d7a45dSGunnar Mills            },
1571*c6d7a45dSGunnar Mills            "type": "object"
1572*c6d7a45dSGunnar Mills        },
1573*c6d7a45dSGunnar Mills        "RegionSet": {
1574*c6d7a45dSGunnar Mills            "additionalProperties": false,
1575*c6d7a45dSGunnar Mills            "description": "Memory region information within a memory device.",
1576*c6d7a45dSGunnar Mills            "longDescription": "This type shall describe the memory region information within a memory device.",
1577*c6d7a45dSGunnar Mills            "patternProperties": {
1578*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
1579*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
1580*c6d7a45dSGunnar Mills                    "type": [
1581*c6d7a45dSGunnar Mills                        "array",
1582*c6d7a45dSGunnar Mills                        "boolean",
1583*c6d7a45dSGunnar Mills                        "integer",
1584*c6d7a45dSGunnar Mills                        "number",
1585*c6d7a45dSGunnar Mills                        "null",
1586*c6d7a45dSGunnar Mills                        "object",
1587*c6d7a45dSGunnar Mills                        "string"
1588*c6d7a45dSGunnar Mills                    ]
1589*c6d7a45dSGunnar Mills                }
1590*c6d7a45dSGunnar Mills            },
1591*c6d7a45dSGunnar Mills            "properties": {
1592*c6d7a45dSGunnar Mills                "MasterPassphraseEnabled": {
1593*c6d7a45dSGunnar Mills                    "description": "An indication of whether the master passphrase is enabled for this region.",
1594*c6d7a45dSGunnar Mills                    "longDescription": "This property shall indicate whether the master passphrase is enabled for this region.",
1595*c6d7a45dSGunnar Mills                    "readonly": true,
1596*c6d7a45dSGunnar Mills                    "type": [
1597*c6d7a45dSGunnar Mills                        "boolean",
1598*c6d7a45dSGunnar Mills                        "null"
1599*c6d7a45dSGunnar Mills                    ],
1600*c6d7a45dSGunnar Mills                    "versionAdded": "v1_17_0"
1601*c6d7a45dSGunnar Mills                },
1602*c6d7a45dSGunnar Mills                "MemoryClassification": {
1603*c6d7a45dSGunnar Mills                    "anyOf": [
1604*c6d7a45dSGunnar Mills                        {
1605*c6d7a45dSGunnar Mills                            "$ref": "#/definitions/MemoryClassification"
1606*c6d7a45dSGunnar Mills                        },
1607*c6d7a45dSGunnar Mills                        {
1608*c6d7a45dSGunnar Mills                            "type": "null"
1609*c6d7a45dSGunnar Mills                        }
1610*c6d7a45dSGunnar Mills                    ],
1611*c6d7a45dSGunnar Mills                    "description": "The classification of memory that the memory region occupies.",
1612*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the classification of memory that the memory region occupies.",
1613*c6d7a45dSGunnar Mills                    "readonly": true
1614*c6d7a45dSGunnar Mills                },
1615*c6d7a45dSGunnar Mills                "OffsetMiB": {
1616*c6d7a45dSGunnar Mills                    "description": "Offset within the memory that corresponds to the start of this memory region in mebibytes (MiB).",
1617*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the offset within the memory that corresponds to the start of this memory region in MiB.",
1618*c6d7a45dSGunnar Mills                    "readonly": true,
1619*c6d7a45dSGunnar Mills                    "type": [
1620*c6d7a45dSGunnar Mills                        "integer",
1621*c6d7a45dSGunnar Mills                        "null"
1622*c6d7a45dSGunnar Mills                    ],
1623*c6d7a45dSGunnar Mills                    "units": "MiBy"
1624*c6d7a45dSGunnar Mills                },
1625*c6d7a45dSGunnar Mills                "PassphraseEnabled": {
1626*c6d7a45dSGunnar Mills                    "description": "An indication of whether the passphrase is enabled for this region.",
1627*c6d7a45dSGunnar Mills                    "longDescription": "This property shall indicate whether the passphrase is enabled for this region.",
1628*c6d7a45dSGunnar Mills                    "readonly": true,
1629*c6d7a45dSGunnar Mills                    "type": [
1630*c6d7a45dSGunnar Mills                        "boolean",
1631*c6d7a45dSGunnar Mills                        "null"
1632*c6d7a45dSGunnar Mills                    ],
1633*c6d7a45dSGunnar Mills                    "versionAdded": "v1_5_0"
1634*c6d7a45dSGunnar Mills                },
1635*c6d7a45dSGunnar Mills                "PassphraseState": {
1636*c6d7a45dSGunnar Mills                    "deprecated": "This property has been deprecated in favor of `PassphraseEnabled` found within `RegionSet`.",
1637*c6d7a45dSGunnar Mills                    "description": "An indication of whether the state of the passphrase for this region is enabled.",
1638*c6d7a45dSGunnar Mills                    "longDescription": "This property shall indicate whether the state of the passphrase for this region is enabled.",
1639*c6d7a45dSGunnar Mills                    "readonly": true,
1640*c6d7a45dSGunnar Mills                    "type": [
1641*c6d7a45dSGunnar Mills                        "boolean",
1642*c6d7a45dSGunnar Mills                        "null"
1643*c6d7a45dSGunnar Mills                    ],
1644*c6d7a45dSGunnar Mills                    "versionDeprecated": "v1_5_0"
1645*c6d7a45dSGunnar Mills                },
1646*c6d7a45dSGunnar Mills                "RegionId": {
1647*c6d7a45dSGunnar Mills                    "description": "Unique region ID representing a specific region within the memory device.",
1648*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the unique region ID representing a specific region within the memory device.",
1649*c6d7a45dSGunnar Mills                    "readonly": true,
1650*c6d7a45dSGunnar Mills                    "type": [
1651*c6d7a45dSGunnar Mills                        "string",
1652*c6d7a45dSGunnar Mills                        "null"
1653*c6d7a45dSGunnar Mills                    ]
1654*c6d7a45dSGunnar Mills                },
1655*c6d7a45dSGunnar Mills                "SizeMiB": {
1656*c6d7a45dSGunnar Mills                    "description": "Size of this memory region in mebibytes (MiB).",
1657*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the size of this memory region in MiB.",
1658*c6d7a45dSGunnar Mills                    "readonly": true,
1659*c6d7a45dSGunnar Mills                    "type": [
1660*c6d7a45dSGunnar Mills                        "integer",
1661*c6d7a45dSGunnar Mills                        "null"
1662*c6d7a45dSGunnar Mills                    ],
1663*c6d7a45dSGunnar Mills                    "units": "MiBy"
1664*c6d7a45dSGunnar Mills                }
1665*c6d7a45dSGunnar Mills            },
1666*c6d7a45dSGunnar Mills            "type": "object"
1667*c6d7a45dSGunnar Mills        },
1668*c6d7a45dSGunnar Mills        "Reset": {
1669*c6d7a45dSGunnar Mills            "additionalProperties": false,
1670*c6d7a45dSGunnar Mills            "description": "This action resets this memory device.",
1671*c6d7a45dSGunnar Mills            "longDescription": "This action shall reset this memory device.",
1672*c6d7a45dSGunnar Mills            "parameters": {
1673*c6d7a45dSGunnar Mills                "ResetType": {
1674*c6d7a45dSGunnar Mills                    "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/ResetType",
1675*c6d7a45dSGunnar Mills                    "description": "The type of reset.",
1676*c6d7a45dSGunnar Mills                    "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."
1677*c6d7a45dSGunnar Mills                }
1678*c6d7a45dSGunnar Mills            },
1679*c6d7a45dSGunnar Mills            "patternProperties": {
1680*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
1681*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
1682*c6d7a45dSGunnar Mills                    "type": [
1683*c6d7a45dSGunnar Mills                        "array",
1684*c6d7a45dSGunnar Mills                        "boolean",
1685*c6d7a45dSGunnar Mills                        "integer",
1686*c6d7a45dSGunnar Mills                        "number",
1687*c6d7a45dSGunnar Mills                        "null",
1688*c6d7a45dSGunnar Mills                        "object",
1689*c6d7a45dSGunnar Mills                        "string"
1690*c6d7a45dSGunnar Mills                    ]
1691*c6d7a45dSGunnar Mills                }
1692*c6d7a45dSGunnar Mills            },
1693*c6d7a45dSGunnar Mills            "properties": {
1694*c6d7a45dSGunnar Mills                "target": {
1695*c6d7a45dSGunnar Mills                    "description": "Link to invoke action",
1696*c6d7a45dSGunnar Mills                    "format": "uri-reference",
1697*c6d7a45dSGunnar Mills                    "type": "string"
1698*c6d7a45dSGunnar Mills                },
1699*c6d7a45dSGunnar Mills                "title": {
1700*c6d7a45dSGunnar Mills                    "description": "Friendly action name",
1701*c6d7a45dSGunnar Mills                    "type": "string"
1702*c6d7a45dSGunnar Mills                }
1703*c6d7a45dSGunnar Mills            },
1704*c6d7a45dSGunnar Mills            "type": "object",
1705*c6d7a45dSGunnar Mills            "versionAdded": "v1_8_0"
1706*c6d7a45dSGunnar Mills        },
1707*c6d7a45dSGunnar Mills        "ResetToDefaults": {
1708*c6d7a45dSGunnar Mills            "additionalProperties": false,
1709*c6d7a45dSGunnar Mills            "description": "The action resets the values of writable properties to factory defaults.",
1710*c6d7a45dSGunnar Mills            "longDescription": "This action shall reset the values of writable properties in this resource to their default values as specified by the manufacturer.",
1711*c6d7a45dSGunnar Mills            "parameters": {},
1712*c6d7a45dSGunnar Mills            "patternProperties": {
1713*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
1714*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
1715*c6d7a45dSGunnar Mills                    "type": [
1716*c6d7a45dSGunnar Mills                        "array",
1717*c6d7a45dSGunnar Mills                        "boolean",
1718*c6d7a45dSGunnar Mills                        "integer",
1719*c6d7a45dSGunnar Mills                        "number",
1720*c6d7a45dSGunnar Mills                        "null",
1721*c6d7a45dSGunnar Mills                        "object",
1722*c6d7a45dSGunnar Mills                        "string"
1723*c6d7a45dSGunnar Mills                    ]
1724*c6d7a45dSGunnar Mills                }
1725*c6d7a45dSGunnar Mills            },
1726*c6d7a45dSGunnar Mills            "properties": {
1727*c6d7a45dSGunnar Mills                "target": {
1728*c6d7a45dSGunnar Mills                    "description": "Link to invoke action",
1729*c6d7a45dSGunnar Mills                    "format": "uri-reference",
1730*c6d7a45dSGunnar Mills                    "type": "string"
1731*c6d7a45dSGunnar Mills                },
1732*c6d7a45dSGunnar Mills                "title": {
1733*c6d7a45dSGunnar Mills                    "description": "Friendly action name",
1734*c6d7a45dSGunnar Mills                    "type": "string"
1735*c6d7a45dSGunnar Mills                }
1736*c6d7a45dSGunnar Mills            },
1737*c6d7a45dSGunnar Mills            "type": "object",
1738*c6d7a45dSGunnar Mills            "versionAdded": "v1_16_0"
1739*c6d7a45dSGunnar Mills        },
1740*c6d7a45dSGunnar Mills        "ScanMedia": {
1741*c6d7a45dSGunnar Mills            "additionalProperties": false,
1742*c6d7a45dSGunnar Mills            "description": "Scans the media of the memory device.",
1743*c6d7a45dSGunnar Mills            "longDescription": "This action shall scan the media of the memory device.",
1744*c6d7a45dSGunnar Mills            "parameters": {
1745*c6d7a45dSGunnar Mills                "Length": {
1746*c6d7a45dSGunnar Mills                    "description": "The length of the target region to scan in bytes from the physical address.",
1747*c6d7a45dSGunnar Mills                    "longDescription": "This parameter shall contain the length of the target region to scan in bytes from the PhysicalAddress parameter.",
1748*c6d7a45dSGunnar Mills                    "requiredParameter": true,
1749*c6d7a45dSGunnar Mills                    "type": "integer"
1750*c6d7a45dSGunnar Mills                },
1751*c6d7a45dSGunnar Mills                "NoEventLog": {
1752*c6d7a45dSGunnar Mills                    "description": "Indicates whether events related to the media scan are not logged.",
1753*c6d7a45dSGunnar Mills                    "longDescription": "This parameter shall indicate whether events related to the media scan are not logged.  If not provided by the client, the value shall be assumed to be `false`.",
1754*c6d7a45dSGunnar Mills                    "type": "boolean"
1755*c6d7a45dSGunnar Mills                },
1756*c6d7a45dSGunnar Mills                "PhysicalAddress": {
1757*c6d7a45dSGunnar Mills                    "description": "The starting device physical address to scan as a hex-encoded string.",
1758*c6d7a45dSGunnar Mills                    "longDescription": "This parameter shall contain the starting device physical address to scan as a hex-encoded string.",
1759*c6d7a45dSGunnar Mills                    "pattern": "^0x[0-9a-fA-F]+$",
1760*c6d7a45dSGunnar Mills                    "requiredParameter": true,
1761*c6d7a45dSGunnar Mills                    "type": "string"
1762*c6d7a45dSGunnar Mills                }
1763*c6d7a45dSGunnar Mills            },
1764*c6d7a45dSGunnar Mills            "patternProperties": {
1765*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
1766*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
1767*c6d7a45dSGunnar Mills                    "type": [
1768*c6d7a45dSGunnar Mills                        "array",
1769*c6d7a45dSGunnar Mills                        "boolean",
1770*c6d7a45dSGunnar Mills                        "integer",
1771*c6d7a45dSGunnar Mills                        "number",
1772*c6d7a45dSGunnar Mills                        "null",
1773*c6d7a45dSGunnar Mills                        "object",
1774*c6d7a45dSGunnar Mills                        "string"
1775*c6d7a45dSGunnar Mills                    ]
1776*c6d7a45dSGunnar Mills                }
1777*c6d7a45dSGunnar Mills            },
1778*c6d7a45dSGunnar Mills            "properties": {
1779*c6d7a45dSGunnar Mills                "target": {
1780*c6d7a45dSGunnar Mills                    "description": "Link to invoke action",
1781*c6d7a45dSGunnar Mills                    "format": "uri-reference",
1782*c6d7a45dSGunnar Mills                    "type": "string"
1783*c6d7a45dSGunnar Mills                },
1784*c6d7a45dSGunnar Mills                "title": {
1785*c6d7a45dSGunnar Mills                    "description": "Friendly action name",
1786*c6d7a45dSGunnar Mills                    "type": "string"
1787*c6d7a45dSGunnar Mills                }
1788*c6d7a45dSGunnar Mills            },
1789*c6d7a45dSGunnar Mills            "type": "object",
1790*c6d7a45dSGunnar Mills            "versionAdded": "v1_17_0"
1791*c6d7a45dSGunnar Mills        },
1792*c6d7a45dSGunnar Mills        "SecureEraseUnit": {
1793*c6d7a45dSGunnar Mills            "additionalProperties": false,
1794*c6d7a45dSGunnar Mills            "description": "This contains the action for securely erasing given regions using the NIST SP800-88 Purge: Cryptographic Erase.",
1795*c6d7a45dSGunnar Mills            "longDescription": "This action shall securely erase the supplied region provided the supplied passphrase matches that of the given region using the NIST SP800-88 Purge: Cryptographic Erase.  Use the `OverwriteUnit` method to perform NIST SP800-88 Purge: Overwrite.",
1796*c6d7a45dSGunnar Mills            "parameters": {
1797*c6d7a45dSGunnar Mills                "Passphrase": {
1798*c6d7a45dSGunnar Mills                    "description": "Passphrase for doing the operation.",
1799*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the passphrase used in this action.",
1800*c6d7a45dSGunnar Mills                    "requiredParameter": true,
1801*c6d7a45dSGunnar Mills                    "type": "string"
1802*c6d7a45dSGunnar Mills                },
1803*c6d7a45dSGunnar Mills                "RegionId": {
1804*c6d7a45dSGunnar Mills                    "description": "The memory region ID to which to apply this action.",
1805*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the memory region ID to which to apply this action.",
1806*c6d7a45dSGunnar Mills                    "requiredParameter": true,
1807*c6d7a45dSGunnar Mills                    "type": "string"
1808*c6d7a45dSGunnar Mills                }
1809*c6d7a45dSGunnar Mills            },
1810*c6d7a45dSGunnar Mills            "patternProperties": {
1811*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
1812*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
1813*c6d7a45dSGunnar Mills                    "type": [
1814*c6d7a45dSGunnar Mills                        "array",
1815*c6d7a45dSGunnar Mills                        "boolean",
1816*c6d7a45dSGunnar Mills                        "integer",
1817*c6d7a45dSGunnar Mills                        "number",
1818*c6d7a45dSGunnar Mills                        "null",
1819*c6d7a45dSGunnar Mills                        "object",
1820*c6d7a45dSGunnar Mills                        "string"
1821*c6d7a45dSGunnar Mills                    ]
1822*c6d7a45dSGunnar Mills                }
1823*c6d7a45dSGunnar Mills            },
1824*c6d7a45dSGunnar Mills            "properties": {
1825*c6d7a45dSGunnar Mills                "target": {
1826*c6d7a45dSGunnar Mills                    "description": "Link to invoke action",
1827*c6d7a45dSGunnar Mills                    "format": "uri-reference",
1828*c6d7a45dSGunnar Mills                    "type": "string"
1829*c6d7a45dSGunnar Mills                },
1830*c6d7a45dSGunnar Mills                "title": {
1831*c6d7a45dSGunnar Mills                    "description": "Friendly action name",
1832*c6d7a45dSGunnar Mills                    "type": "string"
1833*c6d7a45dSGunnar Mills                }
1834*c6d7a45dSGunnar Mills            },
1835*c6d7a45dSGunnar Mills            "type": "object"
1836*c6d7a45dSGunnar Mills        },
1837*c6d7a45dSGunnar Mills        "SecurityCapabilities": {
1838*c6d7a45dSGunnar Mills            "additionalProperties": false,
1839*c6d7a45dSGunnar Mills            "description": "This type contains security capabilities of a memory device.",
1840*c6d7a45dSGunnar Mills            "longDescription": "This type shall contain properties that describe the security capabilities of a memory device.",
1841*c6d7a45dSGunnar Mills            "patternProperties": {
1842*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
1843*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
1844*c6d7a45dSGunnar Mills                    "type": [
1845*c6d7a45dSGunnar Mills                        "array",
1846*c6d7a45dSGunnar Mills                        "boolean",
1847*c6d7a45dSGunnar Mills                        "integer",
1848*c6d7a45dSGunnar Mills                        "number",
1849*c6d7a45dSGunnar Mills                        "null",
1850*c6d7a45dSGunnar Mills                        "object",
1851*c6d7a45dSGunnar Mills                        "string"
1852*c6d7a45dSGunnar Mills                    ]
1853*c6d7a45dSGunnar Mills                }
1854*c6d7a45dSGunnar Mills            },
1855*c6d7a45dSGunnar Mills            "properties": {
1856*c6d7a45dSGunnar Mills                "ConfigurationLockCapable": {
1857*c6d7a45dSGunnar Mills                    "description": "An indication of whether this memory device supports the locking, or freezing, of the configuration.",
1858*c6d7a45dSGunnar Mills                    "longDescription": "This property shall indicate whether this memory device supports the locking, or freezing, of the configuration.",
1859*c6d7a45dSGunnar Mills                    "readonly": true,
1860*c6d7a45dSGunnar Mills                    "type": [
1861*c6d7a45dSGunnar Mills                        "boolean",
1862*c6d7a45dSGunnar Mills                        "null"
1863*c6d7a45dSGunnar Mills                    ],
1864*c6d7a45dSGunnar Mills                    "versionAdded": "v1_7_0"
1865*c6d7a45dSGunnar Mills                },
1866*c6d7a45dSGunnar Mills                "DataLockCapable": {
1867*c6d7a45dSGunnar Mills                    "description": "An indication of whether this memory device supports data locking.",
1868*c6d7a45dSGunnar Mills                    "longDescription": "This property shall indicate whether this memory device supports the locking of data access.",
1869*c6d7a45dSGunnar Mills                    "readonly": true,
1870*c6d7a45dSGunnar Mills                    "type": [
1871*c6d7a45dSGunnar Mills                        "boolean",
1872*c6d7a45dSGunnar Mills                        "null"
1873*c6d7a45dSGunnar Mills                    ],
1874*c6d7a45dSGunnar Mills                    "versionAdded": "v1_7_0"
1875*c6d7a45dSGunnar Mills                },
1876*c6d7a45dSGunnar Mills                "MaxPassphraseCount": {
1877*c6d7a45dSGunnar Mills                    "description": "Maximum number of passphrases supported for this memory device.",
1878*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the maximum number of passphrases supported for this memory device.",
1879*c6d7a45dSGunnar Mills                    "readonly": true,
1880*c6d7a45dSGunnar Mills                    "type": [
1881*c6d7a45dSGunnar Mills                        "integer",
1882*c6d7a45dSGunnar Mills                        "null"
1883*c6d7a45dSGunnar Mills                    ]
1884*c6d7a45dSGunnar Mills                },
1885*c6d7a45dSGunnar Mills                "PassphraseCapable": {
1886*c6d7a45dSGunnar Mills                    "description": "An indication of whether the memory device is passphrase capable.",
1887*c6d7a45dSGunnar Mills                    "longDescription": "This property shall indicate whether the memory device is passphrase capable.",
1888*c6d7a45dSGunnar Mills                    "readonly": true,
1889*c6d7a45dSGunnar Mills                    "type": [
1890*c6d7a45dSGunnar Mills                        "boolean",
1891*c6d7a45dSGunnar Mills                        "null"
1892*c6d7a45dSGunnar Mills                    ]
1893*c6d7a45dSGunnar Mills                },
1894*c6d7a45dSGunnar Mills                "PassphraseLockLimit": {
1895*c6d7a45dSGunnar Mills                    "description": "The maximum number of incorrect passphrase attempts allowed before memory device is locked.",
1896*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the maximum number of incorrect passphrase access attempts allowed before access to data is locked.  If 0, the number of attempts is infinite.",
1897*c6d7a45dSGunnar Mills                    "readonly": true,
1898*c6d7a45dSGunnar Mills                    "type": [
1899*c6d7a45dSGunnar Mills                        "integer",
1900*c6d7a45dSGunnar Mills                        "null"
1901*c6d7a45dSGunnar Mills                    ],
1902*c6d7a45dSGunnar Mills                    "versionAdded": "v1_7_0"
1903*c6d7a45dSGunnar Mills                },
1904*c6d7a45dSGunnar Mills                "SecurityStates": {
1905*c6d7a45dSGunnar Mills                    "deprecated": "This property has been deprecated in favor of using the individual `PassphraseCapable`, `DataLockCapable`, and `ConfigurationLockCapable` properties.",
1906*c6d7a45dSGunnar Mills                    "description": "Security states supported by the memory device.",
1907*c6d7a45dSGunnar Mills                    "items": {
1908*c6d7a45dSGunnar Mills                        "$ref": "#/definitions/SecurityStates"
1909*c6d7a45dSGunnar Mills                    },
1910*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the security states supported by the memory device.",
1911*c6d7a45dSGunnar Mills                    "readonly": true,
1912*c6d7a45dSGunnar Mills                    "type": "array",
1913*c6d7a45dSGunnar Mills                    "versionDeprecated": "v1_7_0"
1914*c6d7a45dSGunnar Mills                }
1915*c6d7a45dSGunnar Mills            },
1916*c6d7a45dSGunnar Mills            "type": "object"
1917*c6d7a45dSGunnar Mills        },
1918*c6d7a45dSGunnar Mills        "SecurityStateInfo": {
1919*c6d7a45dSGunnar Mills            "additionalProperties": false,
1920*c6d7a45dSGunnar Mills            "description": "The security states of a memory device.",
1921*c6d7a45dSGunnar Mills            "longDescription": "This type shall contain the security states of a memory device.",
1922*c6d7a45dSGunnar Mills            "patternProperties": {
1923*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
1924*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
1925*c6d7a45dSGunnar Mills                    "type": [
1926*c6d7a45dSGunnar Mills                        "array",
1927*c6d7a45dSGunnar Mills                        "boolean",
1928*c6d7a45dSGunnar Mills                        "integer",
1929*c6d7a45dSGunnar Mills                        "number",
1930*c6d7a45dSGunnar Mills                        "null",
1931*c6d7a45dSGunnar Mills                        "object",
1932*c6d7a45dSGunnar Mills                        "string"
1933*c6d7a45dSGunnar Mills                    ]
1934*c6d7a45dSGunnar Mills                }
1935*c6d7a45dSGunnar Mills            },
1936*c6d7a45dSGunnar Mills            "properties": {
1937*c6d7a45dSGunnar Mills                "MasterPassphraseAttemptCountReached": {
1938*c6d7a45dSGunnar Mills                    "description": "An indication of whether an incorrect master passphrase attempt count has been reached.",
1939*c6d7a45dSGunnar Mills                    "longDescription": "This property shall indicate whether an incorrect master passphrase attempt count has been reached.",
1940*c6d7a45dSGunnar Mills                    "readonly": true,
1941*c6d7a45dSGunnar Mills                    "type": [
1942*c6d7a45dSGunnar Mills                        "boolean",
1943*c6d7a45dSGunnar Mills                        "null"
1944*c6d7a45dSGunnar Mills                    ],
1945*c6d7a45dSGunnar Mills                    "versionAdded": "v1_17_0"
1946*c6d7a45dSGunnar Mills                },
1947*c6d7a45dSGunnar Mills                "UserPassphraseAttemptCountReached": {
1948*c6d7a45dSGunnar Mills                    "description": "An indication of whether an incorrect user passphrase attempt count has been reached.",
1949*c6d7a45dSGunnar Mills                    "longDescription": "This property shall indicate whether an incorrect user passphrase attempt count has been reached.",
1950*c6d7a45dSGunnar Mills                    "readonly": true,
1951*c6d7a45dSGunnar Mills                    "type": [
1952*c6d7a45dSGunnar Mills                        "boolean",
1953*c6d7a45dSGunnar Mills                        "null"
1954*c6d7a45dSGunnar Mills                    ],
1955*c6d7a45dSGunnar Mills                    "versionAdded": "v1_17_0"
1956*c6d7a45dSGunnar Mills                }
1957*c6d7a45dSGunnar Mills            },
1958*c6d7a45dSGunnar Mills            "type": "object"
1959*c6d7a45dSGunnar Mills        },
1960*c6d7a45dSGunnar Mills        "SecurityStates": {
1961*c6d7a45dSGunnar Mills            "enum": [
1962*c6d7a45dSGunnar Mills                "Enabled",
1963*c6d7a45dSGunnar Mills                "Disabled",
1964*c6d7a45dSGunnar Mills                "Unlocked",
1965*c6d7a45dSGunnar Mills                "Locked",
1966*c6d7a45dSGunnar Mills                "Frozen",
1967*c6d7a45dSGunnar Mills                "Passphraselimit"
1968*c6d7a45dSGunnar Mills            ],
1969*c6d7a45dSGunnar Mills            "enumDeprecated": {
1970*c6d7a45dSGunnar Mills                "Frozen": "This value has been deprecated in favor of using the `ConfigurationLocked` value to indicate that the configuration has been frozen.",
1971*c6d7a45dSGunnar Mills                "Unlocked": "This value has been deprecated in favor of `Enabled` to indicate normal security operation."
1972*c6d7a45dSGunnar Mills            },
1973*c6d7a45dSGunnar Mills            "enumDescriptions": {
1974*c6d7a45dSGunnar Mills                "Disabled": "Secure mode is disabled.",
1975*c6d7a45dSGunnar Mills                "Enabled": "Secure mode is enabled and access to the data is allowed.",
1976*c6d7a45dSGunnar Mills                "Frozen": "Secure state is frozen and cannot be modified until reset.",
1977*c6d7a45dSGunnar Mills                "Locked": "Secure mode is enabled and access to the data is locked.",
1978*c6d7a45dSGunnar Mills                "Passphraselimit": "Number of attempts to unlock the memory exceeded limit.",
1979*c6d7a45dSGunnar Mills                "Unlocked": "Secure mode is enabled and access to the data is unlocked."
1980*c6d7a45dSGunnar Mills            },
1981*c6d7a45dSGunnar Mills            "enumVersionDeprecated": {
1982*c6d7a45dSGunnar Mills                "Frozen": "v1_7_0",
1983*c6d7a45dSGunnar Mills                "Unlocked": "v1_7_0"
1984*c6d7a45dSGunnar Mills            },
1985*c6d7a45dSGunnar Mills            "type": "string"
1986*c6d7a45dSGunnar Mills        },
1987*c6d7a45dSGunnar Mills        "SetMasterPassphrase": {
1988*c6d7a45dSGunnar Mills            "additionalProperties": false,
1989*c6d7a45dSGunnar Mills            "description": "Sets the master passphrase for the given region.",
1990*c6d7a45dSGunnar Mills            "longDescription": "This action shall set the supplied master passphrase to the supplied region.",
1991*c6d7a45dSGunnar Mills            "parameters": {
1992*c6d7a45dSGunnar Mills                "Passphrase": {
1993*c6d7a45dSGunnar Mills                    "description": "The master passphrase to set for the specified region.",
1994*c6d7a45dSGunnar Mills                    "longDescription": "This parameter shall contain the master passphrase to set for the specified region.",
1995*c6d7a45dSGunnar Mills                    "requiredParameter": true,
1996*c6d7a45dSGunnar Mills                    "type": "string"
1997*c6d7a45dSGunnar Mills                },
1998*c6d7a45dSGunnar Mills                "RegionId": {
1999*c6d7a45dSGunnar Mills                    "description": "The memory region ID to which to apply the master passphrase.",
2000*c6d7a45dSGunnar Mills                    "longDescription": "This parameter shall contain the memory region ID to which to apply the master passphrase.",
2001*c6d7a45dSGunnar Mills                    "requiredParameter": true,
2002*c6d7a45dSGunnar Mills                    "type": "string"
2003*c6d7a45dSGunnar Mills                }
2004*c6d7a45dSGunnar Mills            },
2005*c6d7a45dSGunnar Mills            "patternProperties": {
2006*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
2007*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
2008*c6d7a45dSGunnar Mills                    "type": [
2009*c6d7a45dSGunnar Mills                        "array",
2010*c6d7a45dSGunnar Mills                        "boolean",
2011*c6d7a45dSGunnar Mills                        "integer",
2012*c6d7a45dSGunnar Mills                        "number",
2013*c6d7a45dSGunnar Mills                        "null",
2014*c6d7a45dSGunnar Mills                        "object",
2015*c6d7a45dSGunnar Mills                        "string"
2016*c6d7a45dSGunnar Mills                    ]
2017*c6d7a45dSGunnar Mills                }
2018*c6d7a45dSGunnar Mills            },
2019*c6d7a45dSGunnar Mills            "properties": {
2020*c6d7a45dSGunnar Mills                "target": {
2021*c6d7a45dSGunnar Mills                    "description": "Link to invoke action",
2022*c6d7a45dSGunnar Mills                    "format": "uri-reference",
2023*c6d7a45dSGunnar Mills                    "type": "string"
2024*c6d7a45dSGunnar Mills                },
2025*c6d7a45dSGunnar Mills                "title": {
2026*c6d7a45dSGunnar Mills                    "description": "Friendly action name",
2027*c6d7a45dSGunnar Mills                    "type": "string"
2028*c6d7a45dSGunnar Mills                }
2029*c6d7a45dSGunnar Mills            },
2030*c6d7a45dSGunnar Mills            "type": "object",
2031*c6d7a45dSGunnar Mills            "versionAdded": "v1_17_0"
2032*c6d7a45dSGunnar Mills        },
2033*c6d7a45dSGunnar Mills        "SetPassphrase": {
2034*c6d7a45dSGunnar Mills            "additionalProperties": false,
2035*c6d7a45dSGunnar Mills            "description": "Set passphrase for the given regions.",
2036*c6d7a45dSGunnar Mills            "longDescription": "This action shall apply the supplied passphrase to the supplied region.",
2037*c6d7a45dSGunnar Mills            "parameters": {
2038*c6d7a45dSGunnar Mills                "Passphrase": {
2039*c6d7a45dSGunnar Mills                    "description": "Passphrase for doing the operation.",
2040*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the passphrase used in this action.",
2041*c6d7a45dSGunnar Mills                    "requiredParameter": true,
2042*c6d7a45dSGunnar Mills                    "type": "string"
2043*c6d7a45dSGunnar Mills                },
2044*c6d7a45dSGunnar Mills                "RegionId": {
2045*c6d7a45dSGunnar Mills                    "description": "The memory region ID to which to apply this action.",
2046*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the memory region ID to which to apply this action.",
2047*c6d7a45dSGunnar Mills                    "requiredParameter": true,
2048*c6d7a45dSGunnar Mills                    "type": "string"
2049*c6d7a45dSGunnar Mills                }
2050*c6d7a45dSGunnar Mills            },
2051*c6d7a45dSGunnar Mills            "patternProperties": {
2052*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
2053*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
2054*c6d7a45dSGunnar Mills                    "type": [
2055*c6d7a45dSGunnar Mills                        "array",
2056*c6d7a45dSGunnar Mills                        "boolean",
2057*c6d7a45dSGunnar Mills                        "integer",
2058*c6d7a45dSGunnar Mills                        "number",
2059*c6d7a45dSGunnar Mills                        "null",
2060*c6d7a45dSGunnar Mills                        "object",
2061*c6d7a45dSGunnar Mills                        "string"
2062*c6d7a45dSGunnar Mills                    ]
2063*c6d7a45dSGunnar Mills                }
2064*c6d7a45dSGunnar Mills            },
2065*c6d7a45dSGunnar Mills            "properties": {
2066*c6d7a45dSGunnar Mills                "target": {
2067*c6d7a45dSGunnar Mills                    "description": "Link to invoke action",
2068*c6d7a45dSGunnar Mills                    "format": "uri-reference",
2069*c6d7a45dSGunnar Mills                    "type": "string"
2070*c6d7a45dSGunnar Mills                },
2071*c6d7a45dSGunnar Mills                "title": {
2072*c6d7a45dSGunnar Mills                    "description": "Friendly action name",
2073*c6d7a45dSGunnar Mills                    "type": "string"
2074*c6d7a45dSGunnar Mills                }
2075*c6d7a45dSGunnar Mills            },
2076*c6d7a45dSGunnar Mills            "type": "object"
2077*c6d7a45dSGunnar Mills        },
2078*c6d7a45dSGunnar Mills        "UnlockUnit": {
2079*c6d7a45dSGunnar Mills            "additionalProperties": false,
2080*c6d7a45dSGunnar Mills            "description": "This contains the action for unlocking given regions.",
2081*c6d7a45dSGunnar Mills            "longDescription": "This action shall apply the supplied passphrase to the supplied region for the purpose of unlocking the given regions.",
2082*c6d7a45dSGunnar Mills            "parameters": {
2083*c6d7a45dSGunnar Mills                "Passphrase": {
2084*c6d7a45dSGunnar Mills                    "description": "The passphrase required to complete the operation.",
2085*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the passphrase required to complete this action.",
2086*c6d7a45dSGunnar Mills                    "requiredParameter": true,
2087*c6d7a45dSGunnar Mills                    "type": "string"
2088*c6d7a45dSGunnar Mills                },
2089*c6d7a45dSGunnar Mills                "RegionId": {
2090*c6d7a45dSGunnar Mills                    "description": "The memory region ID to which to apply this action.",
2091*c6d7a45dSGunnar Mills                    "longDescription": "This property shall contain the memory region ID to which to apply this action.",
2092*c6d7a45dSGunnar Mills                    "requiredParameter": true,
2093*c6d7a45dSGunnar Mills                    "type": "string"
2094*c6d7a45dSGunnar Mills                }
2095*c6d7a45dSGunnar Mills            },
2096*c6d7a45dSGunnar Mills            "patternProperties": {
2097*c6d7a45dSGunnar Mills                "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
2098*c6d7a45dSGunnar Mills                    "description": "This property shall specify a valid odata or Redfish property.",
2099*c6d7a45dSGunnar Mills                    "type": [
2100*c6d7a45dSGunnar Mills                        "array",
2101*c6d7a45dSGunnar Mills                        "boolean",
2102*c6d7a45dSGunnar Mills                        "integer",
2103*c6d7a45dSGunnar Mills                        "number",
2104*c6d7a45dSGunnar Mills                        "null",
2105*c6d7a45dSGunnar Mills                        "object",
2106*c6d7a45dSGunnar Mills                        "string"
2107*c6d7a45dSGunnar Mills                    ]
2108*c6d7a45dSGunnar Mills                }
2109*c6d7a45dSGunnar Mills            },
2110*c6d7a45dSGunnar Mills            "properties": {
2111*c6d7a45dSGunnar Mills                "target": {
2112*c6d7a45dSGunnar Mills                    "description": "Link to invoke action",
2113*c6d7a45dSGunnar Mills                    "format": "uri-reference",
2114*c6d7a45dSGunnar Mills                    "type": "string"
2115*c6d7a45dSGunnar Mills                },
2116*c6d7a45dSGunnar Mills                "title": {
2117*c6d7a45dSGunnar Mills                    "description": "Friendly action name",
2118*c6d7a45dSGunnar Mills                    "type": "string"
2119*c6d7a45dSGunnar Mills                }
2120*c6d7a45dSGunnar Mills            },
2121*c6d7a45dSGunnar Mills            "type": "object"
2122*c6d7a45dSGunnar Mills        }
2123*c6d7a45dSGunnar Mills    },
2124*c6d7a45dSGunnar Mills    "language": "en",
2125*c6d7a45dSGunnar Mills    "owningEntity": "DMTF",
2126*c6d7a45dSGunnar Mills    "release": "2025.2",
2127*c6d7a45dSGunnar Mills    "title": "#Memory.v1_21_0.Memory"
2128*c6d7a45dSGunnar Mills}