blob: ca94cd490e7a4689e88c14b9d48bd7e7a73bd1bb [file] [log] [blame]
Ed Tanous118b1c72018-09-13 13:45:51 -07001{
Ed Tanouse9cc1bc2023-09-21 11:15:30 -07002 "$id": "http://redfish.dmtf.org/schemas/v1/Drive.v1_17_1.json",
Ed Tanous118b1c72018-09-13 13:45:51 -07003 "$ref": "#/definitions/Drive",
Ed Tanous530520e2019-01-02 13:41:37 -08004 "$schema": "http://redfish.dmtf.org/schemas/v1/redfish-schema-v1.json",
Ed Tanousf263e092023-05-22 09:56:29 -07005 "copyright": "Copyright 2014-2023 DMTF. For the full DMTF copyright policy, see http://www.dmtf.org/about/policies/copyright",
Ed Tanous118b1c72018-09-13 13:45:51 -07006 "definitions": {
7 "Actions": {
8 "additionalProperties": false,
Gunnar Millsa778c022020-05-12 12:20:36 -05009 "description": "The available actions for this resource.",
10 "longDescription": "This type shall contain the available actions for this resource.",
Ed Tanous118b1c72018-09-13 13:45:51 -070011 "patternProperties": {
Ed Tanouscb103132019-10-08 11:34:22 -070012 "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
Ed Tanous118b1c72018-09-13 13:45:51 -070013 "description": "This property shall specify a valid odata or Redfish property.",
14 "type": [
15 "array",
16 "boolean",
Ed Tanous530520e2019-01-02 13:41:37 -080017 "integer",
Ed Tanous118b1c72018-09-13 13:45:51 -070018 "number",
19 "null",
20 "object",
21 "string"
22 ]
23 }
24 },
25 "properties": {
Ed Tanouscb103132019-10-08 11:34:22 -070026 "#Drive.Reset": {
27 "$ref": "#/definitions/Reset"
28 },
Ed Tanous118b1c72018-09-13 13:45:51 -070029 "#Drive.SecureErase": {
30 "$ref": "#/definitions/SecureErase"
31 },
32 "Oem": {
Ed Tanous530520e2019-01-02 13:41:37 -080033 "$ref": "#/definitions/OemActions",
Gunnar Millsa778c022020-05-12 12:20:36 -050034 "description": "The available OEM-specific actions for this resource.",
35 "longDescription": "This property shall contain the available OEM-specific actions for this resource."
Ed Tanous118b1c72018-09-13 13:45:51 -070036 }
37 },
38 "type": "object"
39 },
Ed Tanoused761212022-09-23 15:03:29 -070040 "DataSanitizationType": {
41 "enum": [
42 "BlockErase",
43 "CryptographicErase",
44 "Overwrite"
45 ],
46 "enumDescriptions": {
47 "BlockErase": "Delete all logical block addresses, including those that are not currently mapping to active addresses, but leaving the data on the drive.",
48 "CryptographicErase": "Erase the target data's encryption key leaving only the ciphertext on the drive. For more information, see NIST800-88 and ISO/IEC 27040.",
49 "Overwrite": "Overwrite data by writing an implementation specific pattern onto all sectors of the drive."
50 },
51 "enumLongDescriptions": {
52 "BlockErase": "This value shall indicate sanitization is performed by deleting all logical block addresses, including those that are not currently mapping to active addresses, but leaving the data on the drive.",
53 "CryptographicErase": "This value shall indicate sanitization is performed by erasing the target data's encryption key leaving only the ciphertext on the drive. For more information, see NIST800-88 and ISO/IEC 27040.",
54 "Overwrite": "This value shall indicate sanitization is performed by overwriting data by writing an implementation specific pattern onto all sectors of the drive."
55 },
56 "type": "string"
57 },
Ed Tanous118b1c72018-09-13 13:45:51 -070058 "Drive": {
59 "additionalProperties": false,
Ed Tanousf263e092023-05-22 09:56:29 -070060 "description": "The Drive schema represents a single physical drive for a system, including links to associated volumes. 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.",
61 "longDescription": "This resource shall represent a drive or other physical storage medium for 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`.",
Ed Tanous118b1c72018-09-13 13:45:51 -070062 "patternProperties": {
Ed Tanouscb103132019-10-08 11:34:22 -070063 "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
Ed Tanous118b1c72018-09-13 13:45:51 -070064 "description": "This property shall specify a valid odata or Redfish property.",
65 "type": [
66 "array",
67 "boolean",
Ed Tanous530520e2019-01-02 13:41:37 -080068 "integer",
Ed Tanous118b1c72018-09-13 13:45:51 -070069 "number",
70 "null",
71 "object",
72 "string"
73 ]
74 }
75 },
76 "properties": {
77 "@odata.context": {
Ed Tanouscb103132019-10-08 11:34:22 -070078 "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/context"
Ed Tanous118b1c72018-09-13 13:45:51 -070079 },
80 "@odata.etag": {
Ed Tanouscb103132019-10-08 11:34:22 -070081 "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/etag"
Ed Tanous118b1c72018-09-13 13:45:51 -070082 },
83 "@odata.id": {
Ed Tanouscb103132019-10-08 11:34:22 -070084 "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/id"
Ed Tanous118b1c72018-09-13 13:45:51 -070085 },
86 "@odata.type": {
Ed Tanouscb103132019-10-08 11:34:22 -070087 "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/type"
Ed Tanous118b1c72018-09-13 13:45:51 -070088 },
89 "Actions": {
90 "$ref": "#/definitions/Actions",
Gunnar Millsa778c022020-05-12 12:20:36 -050091 "description": "The available actions for this resource.",
92 "longDescription": "This property shall contain the available actions for this resource."
Ed Tanous118b1c72018-09-13 13:45:51 -070093 },
94 "Assembly": {
95 "$ref": "http://redfish.dmtf.org/schemas/v1/Assembly.json#/definitions/Assembly",
Ed Tanouscb103132019-10-08 11:34:22 -070096 "description": "The link to the assembly associated with this drive.",
Gunnar Millsa778c022020-05-12 12:20:36 -050097 "longDescription": "This property shall contain a link to a resource of type Assembly.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -060098 "readonly": true,
99 "versionAdded": "v1_3_0"
Ed Tanous118b1c72018-09-13 13:45:51 -0700100 },
101 "AssetTag": {
Ed Tanouscb103132019-10-08 11:34:22 -0700102 "description": "The user-assigned asset tag for this drive.",
103 "longDescription": "This property shall track the drive for inventory purposes.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700104 "readonly": false,
105 "type": [
106 "string",
107 "null"
108 ]
109 },
110 "BlockSizeBytes": {
Ed Tanouscb103132019-10-08 11:34:22 -0700111 "description": "The size, in bytes, of the smallest addressable unit, or block.",
112 "longDescription": "This property shall contain size of the smallest addressable unit of the associated drive.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700113 "readonly": true,
114 "type": [
Ed Tanous530520e2019-01-02 13:41:37 -0800115 "integer",
Ed Tanous118b1c72018-09-13 13:45:51 -0700116 "null"
117 ],
118 "units": "By"
119 },
120 "CapableSpeedGbs": {
Ed Tanouscb103132019-10-08 11:34:22 -0700121 "description": "The speed, in gigabit per second (Gbit/s), at which this drive can communicate to a storage controller in ideal conditions.",
122 "longDescription": "This property shall contain fastest capable bus speed, in gigabit per second (Gbit/s), of the associated drive.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700123 "readonly": true,
124 "type": [
125 "number",
126 "null"
127 ],
128 "units": "Gbit/s"
129 },
130 "CapacityBytes": {
Ed Tanouscb103132019-10-08 11:34:22 -0700131 "description": "The size, in bytes, of this drive.",
132 "longDescription": "This property shall contain the raw size, in bytes, of the associated drive.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700133 "readonly": true,
134 "type": [
Ed Tanous530520e2019-01-02 13:41:37 -0800135 "integer",
Ed Tanous118b1c72018-09-13 13:45:51 -0700136 "null"
137 ],
138 "units": "By"
139 },
Gunnar Mills262d7d42021-01-20 16:28:41 -0600140 "Certificates": {
141 "$ref": "http://redfish.dmtf.org/schemas/v1/CertificateCollection.json#/definitions/CertificateCollection",
142 "description": "The link to a collection of certificates for device identity and attestation.",
143 "longDescription": "This property shall contain a link to a resource collection of type CertificateCollection that contains certificates for device identity and attestation.",
144 "readonly": true,
145 "versionAdded": "v1_12_0"
146 },
Ed Tanous118b1c72018-09-13 13:45:51 -0700147 "Description": {
148 "anyOf": [
149 {
150 "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Description"
151 },
152 {
153 "type": "null"
154 }
155 ],
156 "readonly": true
157 },
Ed Tanousa8d8f9d2023-01-26 13:57:00 -0800158 "DriveFormFactor": {
159 "anyOf": [
160 {
161 "$ref": "#/definitions/FormFactor"
162 },
163 {
164 "type": "null"
165 }
166 ],
167 "description": "The form factor of the drive inserted in this slot.",
168 "longDescription": "This property shall contain the form factor of the drive inserted in this slot.",
169 "readonly": true,
170 "versionAdded": "v1_16_0"
171 },
Ed Tanous118b1c72018-09-13 13:45:51 -0700172 "EncryptionAbility": {
173 "anyOf": [
174 {
175 "$ref": "#/definitions/EncryptionAbility"
176 },
177 {
178 "type": "null"
179 }
180 ],
Ed Tanouscb103132019-10-08 11:34:22 -0700181 "description": "The encryption ability of this drive.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700182 "longDescription": "This property shall contain the encryption ability for the associated drive.",
183 "readonly": true
184 },
185 "EncryptionStatus": {
186 "anyOf": [
187 {
188 "$ref": "#/definitions/EncryptionStatus"
189 },
190 {
191 "type": "null"
192 }
193 ],
Ed Tanouscb103132019-10-08 11:34:22 -0700194 "description": "The status of the encryption of this drive.",
195 "longDescription": "This property shall contain the encryption status for the associated drive.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700196 "readonly": true
197 },
Gunnar Mills262d7d42021-01-20 16:28:41 -0600198 "EnvironmentMetrics": {
199 "$ref": "http://redfish.dmtf.org/schemas/v1/EnvironmentMetrics.json#/definitions/EnvironmentMetrics",
200 "description": "The link to the environment metrics for this drive.",
201 "longDescription": "This property shall contain a link to a resource of type EnvironmentMetrics that specifies the environment metrics for this drive.",
202 "readonly": true,
203 "versionAdded": "v1_12_0"
204 },
Ed Tanous118b1c72018-09-13 13:45:51 -0700205 "FailurePredicted": {
Ed Tanouscb103132019-10-08 11:34:22 -0700206 "description": "An indication of whether this drive currently predicts a failure in the near future.",
207 "longDescription": "This property shall indicate whether this drive currently predicts a manufacturer-defined failure.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700208 "readonly": true,
209 "type": [
210 "boolean",
211 "null"
212 ]
213 },
Ed Tanousf263e092023-05-22 09:56:29 -0700214 "FirmwareVersion": {
215 "description": "The firmware version for this drive.",
216 "longDescription": "This property shall contain the firmware version as defined by the manufacturer for this drive.",
217 "readonly": true,
218 "type": [
219 "string",
220 "null"
221 ],
222 "versionAdded": "v1_17_0"
223 },
Ed Tanous530520e2019-01-02 13:41:37 -0800224 "HotspareReplacementMode": {
225 "anyOf": [
226 {
227 "$ref": "#/definitions/HotspareReplacementModeType"
228 },
229 {
230 "type": "null"
231 }
232 ],
Ed Tanouscb103132019-10-08 11:34:22 -0700233 "description": "The replacement mode for the hot spare drive.",
234 "longDescription": "This property shall indicate whether a commissioned hot spare continues to serve as a hot spare after the failed drive is replaced.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600235 "readonly": false,
236 "versionAdded": "v1_5_0"
Ed Tanous530520e2019-01-02 13:41:37 -0800237 },
Ed Tanous118b1c72018-09-13 13:45:51 -0700238 "HotspareType": {
239 "anyOf": [
240 {
241 "$ref": "#/definitions/HotspareType"
242 },
243 {
244 "type": "null"
245 }
246 ],
Gunnar Mills9d424662021-09-22 21:56:16 -0500247 "description": "The type of hot spare that this drive serves as.",
Ed Tanouscb103132019-10-08 11:34:22 -0700248 "longDescription": "This property shall contain the hot spare type for the associated drive. If the drive currently serves as a hot spare, its Status.State field shall be 'StandbySpare' and 'Enabled' when it is part of a volume.",
Gunnar Mills9d424662021-09-22 21:56:16 -0500249 "readonly": false
Ed Tanous118b1c72018-09-13 13:45:51 -0700250 },
251 "Id": {
252 "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Id",
253 "readonly": true
254 },
255 "Identifiers": {
Ed Tanouscb103132019-10-08 11:34:22 -0700256 "description": "The durable names for the drive.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700257 "items": {
258 "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Identifier"
259 },
260 "longDescription": "This property shall contain a list of all known durable names for the associated drive.",
261 "type": "array"
262 },
263 "IndicatorLED": {
264 "anyOf": [
265 {
266 "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/IndicatorLED"
267 },
268 {
269 "type": "null"
270 }
271 ],
Asmitha Karunanithic8ccb772020-09-22 10:56:46 -0500272 "deprecated": "This property has been deprecated in favor of the LocationIndicatorActive property.",
Ed Tanouscb103132019-10-08 11:34:22 -0700273 "description": "The state of the indicator LED, that identifies the drive.",
274 "longDescription": "This property shall contain the state for the indicator light associated with this drive.",
Asmitha Karunanithic8ccb772020-09-22 10:56:46 -0500275 "readonly": false,
276 "versionDeprecated": "v1_11_0"
Ed Tanous118b1c72018-09-13 13:45:51 -0700277 },
278 "Links": {
279 "$ref": "#/definitions/Links",
Gunnar Millsa778c022020-05-12 12:20:36 -0500280 "description": "The links to other resources that are related to this resource.",
Gunnar Mills844b4152020-06-22 12:44:09 -0500281 "longDescription": "This property shall contain links to resources that are related to but are not contained by, or subordinate to, this resource."
Ed Tanous118b1c72018-09-13 13:45:51 -0700282 },
283 "Location": {
Ed Tanouscb103132019-10-08 11:34:22 -0700284 "deprecated": "This property has been deprecated in favor of the singular property PhysicalLocation found in Drive.v1_4_0.",
285 "description": "The location of the drive.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700286 "items": {
287 "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Location"
288 },
289 "longDescription": "This property shall contain location information of the associated drive.",
Ed Tanouscb103132019-10-08 11:34:22 -0700290 "type": "array",
291 "versionDeprecated": "v1_4_0"
Ed Tanous118b1c72018-09-13 13:45:51 -0700292 },
Asmitha Karunanithic8ccb772020-09-22 10:56:46 -0500293 "LocationIndicatorActive": {
294 "description": "An indicator allowing an operator to physically locate this resource.",
295 "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.",
296 "readonly": false,
297 "type": [
298 "boolean",
299 "null"
300 ],
301 "versionAdded": "v1_11_0"
302 },
Ed Tanous118b1c72018-09-13 13:45:51 -0700303 "Manufacturer": {
Ed Tanouscb103132019-10-08 11:34:22 -0700304 "description": "The manufacturer of this drive.",
Gunnar Mills10f270b2021-05-19 15:34:06 -0500305 "longDescription": "This property shall contain the name of the organization responsible for producing the drive. This organization may be the entity from whom the drive is purchased, but this is not necessarily true.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700306 "readonly": true,
307 "type": [
308 "string",
309 "null"
310 ]
311 },
Gunnar Mills262d7d42021-01-20 16:28:41 -0600312 "Measurements": {
Sui Chen141d9432022-02-03 22:01:27 -0800313 "deprecated": "This property has been deprecated in favor of the ComponentIntegrity resource.",
Gunnar Mills262d7d42021-01-20 16:28:41 -0600314 "description": "An array of DSP0274-defined measurement blocks.",
315 "items": {
316 "$ref": "http://redfish.dmtf.org/schemas/v1/SoftwareInventory.json#/definitions/MeasurementBlock"
317 },
318 "longDescription": "This property shall contain an array of DSP0274-defined measurement blocks.",
319 "type": "array",
Sui Chen141d9432022-02-03 22:01:27 -0800320 "versionAdded": "v1_12_0",
321 "versionDeprecated": "v1_14_0"
Gunnar Mills262d7d42021-01-20 16:28:41 -0600322 },
Ed Tanous118b1c72018-09-13 13:45:51 -0700323 "MediaType": {
324 "anyOf": [
325 {
326 "$ref": "#/definitions/MediaType"
327 },
328 {
329 "type": "null"
330 }
331 ],
332 "description": "The type of media contained in this drive.",
333 "longDescription": "This property shall contain the type of media contained in the associated drive.",
334 "readonly": true
335 },
Ed Tanousf263e092023-05-22 09:56:29 -0700336 "Metrics": {
337 "anyOf": [
338 {
339 "$ref": "http://redfish.dmtf.org/schemas/v1/DriveMetrics.json#/definitions/DriveMetrics"
340 },
341 {
342 "type": "null"
343 }
344 ],
345 "description": "The link to the metrics associated with this drive.",
346 "longDescription": "This property shall contain a link to the metrics associated with this drive.",
347 "readonly": true,
348 "versionAdded": "v1_17_0"
349 },
Ed Tanous118b1c72018-09-13 13:45:51 -0700350 "Model": {
Ed Tanouscb103132019-10-08 11:34:22 -0700351 "description": "The model number for the drive.",
352 "longDescription": "This property shall contain the name by which the manufacturer generally refers to the drive.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700353 "readonly": true,
354 "type": [
355 "string",
356 "null"
357 ]
358 },
Gunnar Mills09b9d452020-02-11 13:27:39 -0600359 "Multipath": {
360 "description": "An indication of whether the drive is accessible from multiple paths.",
361 "longDescription": "This property shall indicate whether the drive is accessible by an initiator from multiple paths allowing for failover capabilities upon a path failure.",
362 "readonly": true,
363 "type": [
364 "boolean",
365 "null"
366 ],
367 "versionAdded": "v1_9_0"
368 },
Ed Tanous118b1c72018-09-13 13:45:51 -0700369 "Name": {
370 "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Name",
371 "readonly": true
372 },
373 "NegotiatedSpeedGbs": {
Ed Tanouscb103132019-10-08 11:34:22 -0700374 "description": "The speed, in gigabit per second (Gbit/s), at which this drive currently communicates to the storage controller.",
375 "longDescription": "This property shall contain current bus speed, in gigabit per second (Gbit/s), of the associated drive.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700376 "readonly": true,
377 "type": [
378 "number",
379 "null"
380 ],
381 "units": "Gbit/s"
382 },
383 "Oem": {
384 "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
Ed Tanouscb103132019-10-08 11:34:22 -0700385 "description": "The OEM extension property.",
386 "longDescription": "This property shall contain the OEM extensions. All values for properties that this object contains shall conform to the Redfish Specification-described requirements."
Ed Tanous118b1c72018-09-13 13:45:51 -0700387 },
388 "Operations": {
389 "description": "The operations currently running on the Drive.",
390 "items": {
391 "$ref": "#/definitions/Operations"
392 },
393 "longDescription": "This property shall contain a list of all operations currently running on the Drive.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600394 "type": "array",
395 "versionAdded": "v1_1_0"
Ed Tanous118b1c72018-09-13 13:45:51 -0700396 },
397 "PartNumber": {
398 "description": "The part number for this drive.",
Ed Tanouscb103132019-10-08 11:34:22 -0700399 "longDescription": "This property shall contain the part number assigned by the organization that is responsible for producing or manufacturing the drive.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700400 "readonly": true,
401 "type": [
402 "string",
403 "null"
404 ]
405 },
406 "PhysicalLocation": {
407 "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Location",
Ed Tanouscb103132019-10-08 11:34:22 -0700408 "description": "The location of the drive.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600409 "longDescription": "This property shall contain location information of the associated drive.",
410 "versionAdded": "v1_4_0"
Ed Tanous118b1c72018-09-13 13:45:51 -0700411 },
412 "PredictedMediaLifeLeftPercent": {
Ed Tanouscb103132019-10-08 11:34:22 -0700413 "description": "The percentage of reads and writes that are predicted to be available for the media.",
Ed Tanouse9cc1bc2023-09-21 11:15:30 -0700414 "longDescription": "This property shall contain an indicator of the percentage, typically `0` to `100`, of life remaining in the drive's media.",
415 "minimum": 0,
Ed Tanous118b1c72018-09-13 13:45:51 -0700416 "readonly": true,
417 "type": [
418 "number",
419 "null"
Ed Tanous530520e2019-01-02 13:41:37 -0800420 ],
421 "units": "%"
Ed Tanous118b1c72018-09-13 13:45:51 -0700422 },
423 "Protocol": {
424 "anyOf": [
425 {
426 "$ref": "http://redfish.dmtf.org/schemas/v1/Protocol.json#/definitions/Protocol"
427 },
428 {
429 "type": "null"
430 }
431 ],
Ed Tanouscb103132019-10-08 11:34:22 -0700432 "description": "The protocol that this drive currently uses to communicate to the storage controller.",
433 "longDescription": "This property shall contain the protocol that the associated drive currently uses to communicate to the storage controller for this system.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700434 "readonly": true
435 },
Gunnar Mills844b4152020-06-22 12:44:09 -0500436 "ReadyToRemove": {
437 "description": "An indication of whether the drive is prepared by the system for removal.",
438 "longDescription": "This property shall indicate whether the system is prepared for the removal of this drive.",
439 "readonly": false,
440 "type": [
441 "boolean",
442 "null"
443 ],
444 "versionAdded": "v1_10_0"
445 },
Ed Tanous118b1c72018-09-13 13:45:51 -0700446 "Revision": {
Ed Tanousf263e092023-05-22 09:56:29 -0700447 "description": "The revision of this drive. For SCSI-based drives, this is the version of the drive from the 'Inquiry' command, which can be the firmware or hardware version. For other types of drives, this is the hardware version.",
448 "longDescription": "This property shall contain the manufacturer-defined revision for the associated drive. For SCSI-based drives, this is the version of the drive from the 'Inquiry' command, which can be the firmware or hardware version. For other types of drives, this is the hardware version.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700449 "readonly": true,
450 "type": [
451 "string",
452 "null"
453 ]
454 },
455 "RotationSpeedRPM": {
Ed Tanouscb103132019-10-08 11:34:22 -0700456 "description": "The rotation speed of this drive, in revolutions per minute (RPM).",
457 "longDescription": "This property shall contain the rotation speed, in revolutions per minute (RPM), of the associated drive.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700458 "readonly": true,
459 "type": [
460 "number",
461 "null"
462 ],
Sui Chen141d9432022-02-03 22:01:27 -0800463 "units": "{rev}/min"
Ed Tanous118b1c72018-09-13 13:45:51 -0700464 },
465 "SKU": {
Ed Tanouscb103132019-10-08 11:34:22 -0700466 "description": "The SKU for this drive.",
467 "longDescription": "This property shall contain the stock-keeping unit (SKU) number for this drive.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700468 "readonly": true,
469 "type": [
470 "string",
471 "null"
472 ]
473 },
474 "SerialNumber": {
475 "description": "The serial number for this drive.",
Ed Tanouscb103132019-10-08 11:34:22 -0700476 "longDescription": "This property shall contain the manufacturer-allocated number that identifies the drive.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700477 "readonly": true,
478 "type": [
479 "string",
480 "null"
481 ]
482 },
Ed Tanousa8d8f9d2023-01-26 13:57:00 -0800483 "SlotCapableProtocols": {
484 "description": "The drive protocols capable in this slot.",
485 "items": {
486 "anyOf": [
487 {
488 "$ref": "http://redfish.dmtf.org/schemas/v1/Protocol.json#/definitions/Protocol"
489 },
490 {
491 "type": "null"
492 }
493 ]
494 },
495 "longDescription": "This property shall contain the drive protocols capable in this slot. The value of this property depends upon the connector in this slot, the storage controllers connected to this slot, the configuration of the system, and other constraints that determine if a particular protocol is capable at a given time.",
496 "readonly": true,
497 "type": "array",
498 "versionAdded": "v1_16_0"
499 },
500 "SlotFormFactor": {
501 "anyOf": [
502 {
503 "$ref": "#/definitions/FormFactor"
504 },
505 {
506 "type": "null"
507 }
508 ],
509 "description": "The form factor of the slot.",
510 "longDescription": "This property shall contain the form factor of the slot.",
511 "readonly": true,
512 "versionAdded": "v1_16_0"
513 },
Ed Tanous118b1c72018-09-13 13:45:51 -0700514 "Status": {
Ed Tanous530520e2019-01-02 13:41:37 -0800515 "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Status",
Gunnar Millsa778c022020-05-12 12:20:36 -0500516 "description": "The status and health of the resource and its subordinate or dependent resources.",
517 "longDescription": "This property shall contain any status or health properties of the resource."
Ed Tanous118b1c72018-09-13 13:45:51 -0700518 },
519 "StatusIndicator": {
520 "anyOf": [
521 {
522 "$ref": "#/definitions/StatusIndicator"
523 },
524 {
525 "type": "null"
526 }
527 ],
Ed Tanouscb103132019-10-08 11:34:22 -0700528 "description": "The state of the status indicator, which communicates status information about this drive.",
529 "longDescription": "This property shall contain the status indicator state for the status indicator associated with this drive. The Redfish.AllowableValues annotation specifies the valid values for this property.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700530 "readonly": false
Ed Tanouscb103132019-10-08 11:34:22 -0700531 },
532 "WriteCacheEnabled": {
533 "description": "An indication of whether the drive write cache is enabled.",
534 "longDescription": "This property shall indicate whether the drive write cache is enabled.",
535 "readonly": false,
536 "type": [
537 "boolean",
538 "null"
539 ],
540 "versionAdded": "v1_7_0"
Ed Tanous118b1c72018-09-13 13:45:51 -0700541 }
542 },
543 "required": [
Ed Tanous530520e2019-01-02 13:41:37 -0800544 "@odata.id",
545 "@odata.type",
Ed Tanous118b1c72018-09-13 13:45:51 -0700546 "Id",
547 "Name"
548 ],
549 "type": "object"
550 },
551 "EncryptionAbility": {
552 "enum": [
553 "None",
554 "SelfEncryptingDrive",
555 "Other"
556 ],
557 "enumDescriptions": {
Ed Tanouscb103132019-10-08 11:34:22 -0700558 "None": "The drive is not capable of self-encryption.",
559 "Other": "The drive is capable of self-encryption through some other means.",
560 "SelfEncryptingDrive": "The drive is capable of self-encryption per the Trusted Computing Group's Self Encrypting Drive Standard."
Ed Tanous118b1c72018-09-13 13:45:51 -0700561 },
562 "type": "string"
563 },
564 "EncryptionStatus": {
565 "enum": [
566 "Unecrypted",
567 "Unlocked",
568 "Locked",
569 "Foreign",
570 "Unencrypted"
571 ],
572 "enumDeprecated": {
Ed Tanouscb103132019-10-08 11:34:22 -0700573 "Unecrypted": "This value has been deprecated in favor of Unencrypted."
Ed Tanous118b1c72018-09-13 13:45:51 -0700574 },
575 "enumDescriptions": {
576 "Foreign": "The drive is currently encrypted, the data is not accessible to the user, and the system requires user intervention to expose the data.",
Ed Tanouscb103132019-10-08 11:34:22 -0700577 "Locked": "The drive is currently encrypted and the data is not accessible to the user. However, the system can unlock the drive automatically.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700578 "Unecrypted": "The drive is not currently encrypted.",
579 "Unencrypted": "The drive is not currently encrypted.",
Ed Tanouscb103132019-10-08 11:34:22 -0700580 "Unlocked": "The drive is currently encrypted but the data is accessible to the user in unencrypted form."
Ed Tanous118b1c72018-09-13 13:45:51 -0700581 },
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600582 "enumVersionAdded": {
583 "Unencrypted": "v1_1_0"
584 },
585 "enumVersionDeprecated": {
586 "Unecrypted": "v1_1_0"
587 },
Ed Tanous118b1c72018-09-13 13:45:51 -0700588 "type": "string"
589 },
Ed Tanousa8d8f9d2023-01-26 13:57:00 -0800590 "FormFactor": {
591 "enum": [
592 "Drive3_5",
593 "Drive2_5",
594 "EDSFF_1U_Long",
595 "EDSFF_1U_Short",
596 "EDSFF_E3_Short",
597 "EDSFF_E3_Long",
598 "M2_2230",
599 "M2_2242",
600 "M2_2260",
601 "M2_2280",
602 "M2_22110",
603 "U2",
604 "PCIeSlotFullLength",
605 "PCIeSlotLowProfile",
606 "PCIeHalfLength",
607 "OEM"
608 ],
609 "enumDescriptions": {
610 "Drive2_5": "A 2.5 inch drive.",
611 "Drive3_5": "A 3.5 inch drive.",
612 "EDSFF_1U_Long": "An EDSFF 1U Long (E1.L) drive.",
613 "EDSFF_1U_Short": "An EDSFF 1U Short (E1.S) drive.",
614 "EDSFF_E3_Long": "An EDSFF E3 Long (E3.L) drive.",
615 "EDSFF_E3_Short": "An EDSFF E3 Short (E3.S) drive.",
616 "M2_22110": "An M.2 22110 drive.",
617 "M2_2230": "An M.2 2230 drive.",
618 "M2_2242": "An M.2 2242 drive.",
619 "M2_2260": "An M.2 2260 drive.",
620 "M2_2280": "An M.2 2280 drive.",
621 "OEM": "An OEM-defined form factor.",
622 "PCIeHalfLength": "A half length PCIe add in card.",
623 "PCIeSlotFullLength": "A full length PCIe add in card.",
624 "PCIeSlotLowProfile": "A low profile PCIe add in card.",
625 "U2": "A U.2 drive."
626 },
627 "enumLongDescriptions": {
628 "Drive2_5": "This value shall indicate the drive is approximately 2.5 inches in width and no more than 0.8 inches in height and is not a U.2 drive.",
629 "Drive3_5": "This value shall indicate the drive is approximately 3.5 inches in width and no more than 1.1 inches in height.",
630 "EDSFF_1U_Long": "This value shall indicate the drive corresponds to the SFF-TA-1007 Specification.",
631 "EDSFF_1U_Short": "This value shall indicate the drive corresponds to the SFF-TA-1006 Specification.",
632 "EDSFF_E3_Long": "This value shall indicate the drive corresponds to the SFF-TA-1008 Specification and is approximately 142.2mm in length.",
633 "EDSFF_E3_Short": "This value shall indicate the drive corresponds to the SFF-TA-1008 Specification and is approximately 112.75mm in length.",
634 "M2_22110": "This value shall indicate the drive corresponds to the PCI Express M.2 Specification and is approximately 22mm in width and 110mm in length.",
635 "M2_2230": "This value shall indicate the drive corresponds to the PCI Express M.2 Specification and is approximately 22mm in width and 30mm in length.",
636 "M2_2242": "This value shall indicate the drive corresponds to the PCI Express M.2 Specification and is approximately 22mm in width and 42mm in length.",
637 "M2_2260": "This value shall indicate the drive corresponds to the PCI Express M.2 Specification and is approximately 22mm in width and 60mm in length.",
638 "M2_2280": "This value shall indicate the drive corresponds to the PCI Express M.2 Specification and is approximately 22mm in width and 80mm in length.",
639 "OEM": "This value shall indicate the drive is an OEM-defined form factor.",
640 "PCIeHalfLength": "This value shall indicate the drive is an add in card less than 7 inches in length.",
641 "PCIeSlotFullLength": "This value shall indicate the drive is an add in card greater than 7 inches in length.",
642 "PCIeSlotLowProfile": "This value shall indicate the drive is an add in card less than 2.5 inches in height.",
643 "U2": "This value shall indicate the drive corresponds to the PCI Express SFF-8639 Module Specification."
644 },
645 "type": "string"
646 },
Ed Tanous530520e2019-01-02 13:41:37 -0800647 "HotspareReplacementModeType": {
648 "enum": [
649 "Revertible",
650 "NonRevertible"
651 ],
652 "enumDescriptions": {
Ed Tanouscb103132019-10-08 11:34:22 -0700653 "NonRevertible": "The hot spare drive that is commissioned due to a drive failure remains as a data drive and does not revert to a hot spare if the failed drive is replaced.",
654 "Revertible": "The hot spare drive that is commissioned due to a drive failure reverts to a hot spare after the failed drive is replaced and rebuilt."
Ed Tanous530520e2019-01-02 13:41:37 -0800655 },
656 "type": "string"
657 },
Ed Tanous118b1c72018-09-13 13:45:51 -0700658 "HotspareType": {
659 "enum": [
660 "None",
661 "Global",
662 "Chassis",
663 "Dedicated"
664 ],
665 "enumDescriptions": {
Gunnar Mills9d424662021-09-22 21:56:16 -0500666 "Chassis": "The drive is serving as a hot spare for all other drives in this storage domain that are contained in the same chassis.",
667 "Dedicated": "The drive is serving as a hot spare for a user-defined set of drives or volumes. Clients cannot specify this value when modifying the HotspareType property. This value is reported as a result of configuring the spare drives within a volume.",
668 "Global": "The drive is serving as a hot spare for all other drives in this storage domain.",
669 "None": "The drive is not a hot spare."
Ed Tanous118b1c72018-09-13 13:45:51 -0700670 },
671 "type": "string"
672 },
673 "Links": {
674 "additionalProperties": false,
Gunnar Millsa778c022020-05-12 12:20:36 -0500675 "description": "The links to other resources that are related to this resource.",
676 "longDescription": "This Redfish Specification-described type shall contain links to resources that are related to but are not contained by, or subordinate to, this resource.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700677 "patternProperties": {
Ed Tanouscb103132019-10-08 11:34:22 -0700678 "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
Ed Tanous118b1c72018-09-13 13:45:51 -0700679 "description": "This property shall specify a valid odata or Redfish property.",
680 "type": [
681 "array",
682 "boolean",
Ed Tanous530520e2019-01-02 13:41:37 -0800683 "integer",
Ed Tanous118b1c72018-09-13 13:45:51 -0700684 "number",
685 "null",
686 "object",
687 "string"
688 ]
689 }
690 },
691 "properties": {
Ed Tanousa8d8f9d2023-01-26 13:57:00 -0800692 "ActiveSoftwareImage": {
693 "$ref": "http://redfish.dmtf.org/schemas/v1/SoftwareInventory.json#/definitions/SoftwareInventory",
694 "description": "The link to the software inventory that represents the active drive firmware image.",
695 "longDescription": "This property shall contain a link a resource of type SoftwareInventory that represents the active drive firmware image.",
696 "readonly": false,
697 "versionAdded": "v1_16_0"
698 },
Ed Tanous118b1c72018-09-13 13:45:51 -0700699 "Chassis": {
700 "$ref": "http://redfish.dmtf.org/schemas/v1/Chassis.json#/definitions/Chassis",
Ed Tanouscb103132019-10-08 11:34:22 -0700701 "description": "The link to the chassis that contains this drive.",
Gunnar Millsa778c022020-05-12 12:20:36 -0500702 "longDescription": "This property shall contain a link to a resource of type Chassis that represents the physical container associated with this drive.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600703 "readonly": true,
704 "versionAdded": "v1_2_0"
Ed Tanous118b1c72018-09-13 13:45:51 -0700705 },
706 "Endpoints": {
Ed Tanouscb103132019-10-08 11:34:22 -0700707 "description": "An array of links to the endpoints that connect to this drive.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700708 "items": {
709 "$ref": "http://redfish.dmtf.org/schemas/v1/Endpoint.json#/definitions/Endpoint"
710 },
Gunnar Millsa778c022020-05-12 12:20:36 -0500711 "longDescription": "This property shall contain an array of links to resources of type Endpoint with which this drive is associated.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700712 "readonly": true,
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600713 "type": "array",
714 "versionAdded": "v1_1_0"
Ed Tanous118b1c72018-09-13 13:45:51 -0700715 },
716 "Endpoints@odata.count": {
Ed Tanouscb103132019-10-08 11:34:22 -0700717 "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
Ed Tanous118b1c72018-09-13 13:45:51 -0700718 },
Sui Chen141d9432022-02-03 22:01:27 -0800719 "NetworkDeviceFunctions": {
720 "description": "An array of links to the network device functions that provide network connectivity for this drive.",
721 "items": {
722 "$ref": "http://redfish.dmtf.org/schemas/v1/NetworkDeviceFunction.json#/definitions/NetworkDeviceFunction"
723 },
724 "longDescription": "This property shall contain the array of links to resources of type NetworkDeviceFunction. This property should only be present for drives with network connectivity, such as Ethernet attached drives.",
725 "readonly": true,
726 "type": "array",
727 "versionAdded": "v1_14_0"
728 },
729 "NetworkDeviceFunctions@odata.count": {
730 "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
731 },
Ed Tanous118b1c72018-09-13 13:45:51 -0700732 "Oem": {
733 "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/Oem",
Ed Tanouscb103132019-10-08 11:34:22 -0700734 "description": "The OEM extension property.",
735 "longDescription": "This property shall contain the OEM extensions. All values for properties contained in this object shall conform to the Redfish Specification-described requirements."
736 },
737 "PCIeFunctions": {
738 "description": "An array of links to the PCIe functions that the drive produces.",
739 "items": {
740 "$ref": "http://redfish.dmtf.org/schemas/v1/PCIeFunction.json#/definitions/PCIeFunction"
741 },
Gunnar Millsa778c022020-05-12 12:20:36 -0500742 "longDescription": "This property shall link to a resource of type PCIeFunction that represents the PCIe functions associated with this resource.",
Ed Tanouscb103132019-10-08 11:34:22 -0700743 "type": "array",
744 "versionAdded": "v1_6_0"
745 },
746 "PCIeFunctions@odata.count": {
747 "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
Ed Tanous118b1c72018-09-13 13:45:51 -0700748 },
Ed Tanousa8d8f9d2023-01-26 13:57:00 -0800749 "SoftwareImages": {
750 "description": "The images that are associated with this drive.",
751 "items": {
752 "$ref": "http://redfish.dmtf.org/schemas/v1/SoftwareInventory.json#/definitions/SoftwareInventory"
753 },
754 "longDescription": "This property shall contain an array of links to resources of type SoftwareInventory that represent the firmware images that apply to this drive.",
755 "readonly": true,
756 "type": "array",
757 "versionAdded": "v1_16_0"
758 },
759 "SoftwareImages@odata.count": {
760 "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
761 },
Gunnar Mills9d424662021-09-22 21:56:16 -0500762 "Storage": {
763 "$ref": "http://redfish.dmtf.org/schemas/v1/Storage.json#/definitions/Storage",
764 "description": "A link to the storage subsystem to which this drive belongs.",
765 "longDescription": "This property shall contain a link to a resource of type Storage that represents the storage subsystem to which this drive belongs.",
766 "readonly": true,
767 "versionAdded": "v1_13_0"
768 },
Gunnar Mills6f44b752020-02-06 16:50:51 -0600769 "StoragePools": {
770 "description": "An array of links to the storage pools to which this drive belongs.",
771 "items": {
772 "$ref": "http://redfish.dmtf.org/schemas/swordfish/v1/StoragePool.json#/definitions/StoragePool"
773 },
774 "longDescription": "This property shall contain an array of links of type StoragePool to which this drive belongs.",
775 "readonly": true,
776 "type": "array",
777 "versionAdded": "v1_8_0"
778 },
779 "StoragePools@odata.count": {
780 "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
781 },
Ed Tanous118b1c72018-09-13 13:45:51 -0700782 "Volumes": {
Ed Tanouscb103132019-10-08 11:34:22 -0700783 "description": "An array of links to the volumes that this drive either wholly or only partially contains.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700784 "items": {
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600785 "$ref": "http://redfish.dmtf.org/schemas/swordfish/v1/Volume.json#/definitions/Volume"
Ed Tanous118b1c72018-09-13 13:45:51 -0700786 },
Gunnar Millsa778c022020-05-12 12:20:36 -0500787 "longDescription": "This property shall contain an array of links to resources of type Volume with which this drive is associated. This property shall include all volume resources of which this drive is a member and all volumes for which this drive acts as a spare if the hot spare type is `Dedicated`.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700788 "readonly": true,
789 "type": "array"
790 },
791 "Volumes@odata.count": {
Ed Tanouscb103132019-10-08 11:34:22 -0700792 "$ref": "http://redfish.dmtf.org/schemas/v1/odata-v4.json#/definitions/count"
Ed Tanous118b1c72018-09-13 13:45:51 -0700793 }
794 },
795 "type": "object"
796 },
797 "MediaType": {
798 "enum": [
799 "HDD",
800 "SSD",
801 "SMR"
802 ],
803 "enumDescriptions": {
804 "HDD": "The drive media type is traditional magnetic platters.",
805 "SMR": "The drive media type is shingled magnetic recording.",
806 "SSD": "The drive media type is solid state or flash memory."
807 },
808 "type": "string"
809 },
810 "OemActions": {
811 "additionalProperties": true,
Gunnar Millsa778c022020-05-12 12:20:36 -0500812 "description": "The available OEM-specific actions for this resource.",
813 "longDescription": "This type shall contain the available OEM-specific actions for this resource.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700814 "patternProperties": {
Ed Tanouscb103132019-10-08 11:34:22 -0700815 "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
Ed Tanous118b1c72018-09-13 13:45:51 -0700816 "description": "This property shall specify a valid odata or Redfish property.",
817 "type": [
818 "array",
819 "boolean",
Ed Tanous530520e2019-01-02 13:41:37 -0800820 "integer",
Ed Tanous118b1c72018-09-13 13:45:51 -0700821 "number",
822 "null",
823 "object",
824 "string"
825 ]
826 }
827 },
828 "properties": {},
829 "type": "object"
830 },
831 "Operations": {
832 "additionalProperties": false,
Gunnar Millsa778c022020-05-12 12:20:36 -0500833 "description": "An operation currently running on this resource.",
834 "longDescription": "This type shall describe a currently running operation on the resource.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700835 "patternProperties": {
Ed Tanouscb103132019-10-08 11:34:22 -0700836 "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
Ed Tanous118b1c72018-09-13 13:45:51 -0700837 "description": "This property shall specify a valid odata or Redfish property.",
838 "type": [
839 "array",
840 "boolean",
Ed Tanous530520e2019-01-02 13:41:37 -0800841 "integer",
Ed Tanous118b1c72018-09-13 13:45:51 -0700842 "number",
843 "null",
844 "object",
845 "string"
846 ]
847 }
848 },
849 "properties": {
850 "AssociatedTask": {
851 "$ref": "http://redfish.dmtf.org/schemas/v1/Task.json#/definitions/Task",
Ed Tanouscb103132019-10-08 11:34:22 -0700852 "description": "The link to the task associated with the operation, if any.",
Gunnar Millsa778c022020-05-12 12:20:36 -0500853 "longDescription": "This property shall contain a link to a resource of type Task that represents the task associated with the operation.",
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600854 "readonly": true,
855 "versionAdded": "v1_1_0"
Ed Tanous118b1c72018-09-13 13:45:51 -0700856 },
Ed Tanousf263e092023-05-22 09:56:29 -0700857 "Operation": {
858 "anyOf": [
859 {
860 "$ref": "http://redfish.dmtf.org/schemas/swordfish/v1/Volume.json#/definitions/OperationType"
861 },
862 {
863 "type": "null"
864 }
865 ],
866 "description": "The type of the operation.",
867 "longDescription": "This property shall contain the type of the operation.",
868 "readonly": true,
869 "versionAdded": "v1_17_0"
870 },
Ed Tanous118b1c72018-09-13 13:45:51 -0700871 "OperationName": {
Ed Tanousf263e092023-05-22 09:56:29 -0700872 "deprecated": "This property is deprecated in favor of the Operation property using the OperationType enumeration defined in the Volume schema.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700873 "description": "The name of the operation.",
Ed Tanouscb103132019-10-08 11:34:22 -0700874 "longDescription": "This property shall contain a string of the name of the operation.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700875 "readonly": true,
876 "type": [
877 "string",
878 "null"
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600879 ],
Ed Tanousf263e092023-05-22 09:56:29 -0700880 "versionAdded": "v1_1_0",
881 "versionDeprecated": "v1_17_0"
Ed Tanous118b1c72018-09-13 13:45:51 -0700882 },
883 "PercentageComplete": {
884 "description": "The percentage of the operation that has been completed.",
Ed Tanouse9cc1bc2023-09-21 11:15:30 -0700885 "longDescription": "This property shall contain an integer of the percentage, `0` to `100`, of the operation that has been completed.",
886 "maximum": 100,
887 "minimum": 0,
Ed Tanous118b1c72018-09-13 13:45:51 -0700888 "readonly": true,
889 "type": [
Ed Tanous530520e2019-01-02 13:41:37 -0800890 "integer",
Ed Tanous118b1c72018-09-13 13:45:51 -0700891 "null"
Ed Tanous530520e2019-01-02 13:41:37 -0800892 ],
Marri Devender Raod45d2d02019-01-21 10:11:34 -0600893 "units": "%",
894 "versionAdded": "v1_1_0"
Ed Tanous118b1c72018-09-13 13:45:51 -0700895 }
896 },
897 "type": "object"
898 },
Ed Tanouscb103132019-10-08 11:34:22 -0700899 "Reset": {
Ed Tanous118b1c72018-09-13 13:45:51 -0700900 "additionalProperties": false,
Ed Tanouscb103132019-10-08 11:34:22 -0700901 "description": "This action resets this drive.",
902 "longDescription": "This action shall reset this drive.",
903 "parameters": {
904 "ResetType": {
905 "$ref": "http://redfish.dmtf.org/schemas/v1/Resource.json#/definitions/ResetType",
906 "description": "The type of reset.",
Gunnar Mills844b4152020-06-22 12:44:09 -0500907 "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."
Ed Tanouscb103132019-10-08 11:34:22 -0700908 }
909 },
Ed Tanous118b1c72018-09-13 13:45:51 -0700910 "patternProperties": {
Ed Tanouscb103132019-10-08 11:34:22 -0700911 "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
Ed Tanous118b1c72018-09-13 13:45:51 -0700912 "description": "This property shall specify a valid odata or Redfish property.",
913 "type": [
914 "array",
915 "boolean",
Ed Tanous530520e2019-01-02 13:41:37 -0800916 "integer",
Ed Tanous118b1c72018-09-13 13:45:51 -0700917 "number",
918 "null",
919 "object",
920 "string"
921 ]
922 }
923 },
924 "properties": {
925 "target": {
926 "description": "Link to invoke action",
Ed Tanouscb103132019-10-08 11:34:22 -0700927 "format": "uri-reference",
928 "type": "string"
929 },
930 "title": {
931 "description": "Friendly action name",
932 "type": "string"
933 }
934 },
935 "type": "object",
936 "versionAdded": "v1_7_0"
937 },
938 "SecureErase": {
939 "additionalProperties": false,
940 "description": "This action securely erases the contents of the drive.",
941 "longDescription": "This action shall securely erase the drive.",
Ed Tanoused761212022-09-23 15:03:29 -0700942 "parameters": {
943 "OverwritePasses": {
944 "description": "The number of times to overwrite the drive if performing an overwrite type of sanitization.",
945 "longDescription": "This parameter shall contain the number of times to overwrite the drive if the SanitizationType parameter contains the value `Overwrite`. This parameter shall be ignored if the SanitizationType parameter does not contain the value `Overwrite`. If the client does not provide this parameter, the service shall perform an implementation specific number of passes.",
946 "type": "integer",
947 "versionAdded": "v1_15_0"
948 },
949 "SanitizationType": {
950 "$ref": "#/definitions/DataSanitizationType",
951 "description": "The type of data sanitization to perform.",
952 "longDescription": "This parameter shall contain the type of data sanitization to perform for the secure erase request. The service can accept a request without the parameter and perform an implementation specific default secure erase.",
953 "versionAdded": "v1_15_0"
954 }
955 },
Ed Tanouscb103132019-10-08 11:34:22 -0700956 "patternProperties": {
957 "^([a-zA-Z_][a-zA-Z0-9_]*)?@(odata|Redfish|Message)\\.[a-zA-Z_][a-zA-Z0-9_]*$": {
958 "description": "This property shall specify a valid odata or Redfish property.",
959 "type": [
960 "array",
961 "boolean",
962 "integer",
963 "number",
964 "null",
965 "object",
966 "string"
967 ]
968 }
969 },
970 "properties": {
971 "target": {
972 "description": "Link to invoke action",
973 "format": "uri-reference",
Ed Tanous118b1c72018-09-13 13:45:51 -0700974 "type": "string"
975 },
976 "title": {
977 "description": "Friendly action name",
978 "type": "string"
979 }
980 },
981 "type": "object"
982 },
983 "StatusIndicator": {
984 "enum": [
985 "OK",
986 "Fail",
987 "Rebuild",
988 "PredictiveFailureAnalysis",
989 "Hotspare",
990 "InACriticalArray",
991 "InAFailedArray"
992 ],
993 "enumDescriptions": {
994 "Fail": "The drive has failed.",
Ed Tanouscb103132019-10-08 11:34:22 -0700995 "Hotspare": "The drive has been marked to automatically rebuild and replace a failed drive.",
996 "InACriticalArray": "The array to which this drive belongs has been degraded.",
997 "InAFailedArray": "The array to which this drive belongs has failed.",
Ed Tanous118b1c72018-09-13 13:45:51 -0700998 "OK": "The drive is OK.",
Ed Tanouscb103132019-10-08 11:34:22 -0700999 "PredictiveFailureAnalysis": "The drive still works but is predicted to fail soon.",
Ed Tanous118b1c72018-09-13 13:45:51 -07001000 "Rebuild": "The drive is being rebuilt."
1001 },
1002 "type": "string"
1003 }
1004 },
1005 "owningEntity": "DMTF",
Ed Tanousf263e092023-05-22 09:56:29 -07001006 "release": "2023.1",
Ed Tanouse9cc1bc2023-09-21 11:15:30 -07001007 "title": "#Drive.v1_17_1.Drive"
Ed Tanous118b1c72018-09-13 13:45:51 -07001008}