{
    "@Redfish.Copyright": "Copyright 2020-2026 DMTF. All rights reserved.",
    "@odata.type": "#MessageRegistry.v1_7_0.MessageRegistry",
    "Id": "StorageDevice.1.6.0",
    "Name": "Storage Device Message Registry",
    "Language": "en",
    "Description": "This registry defines the messages for storage devices.",
    "RegistryPrefix": "StorageDevice",
    "RegistryVersion": "1.6.0",
    "OwningEntity": "DMTF",
    "Release": "2026.1",
    "Messages": {
        "ControllerOK": {
            "Description": "The storage controller health has changed to OK.",
            "LongDescription": "This message shall indicate that the storage controller health has changed to OK.",
            "Message": "The health of the storage controller located in '%1' has changed to OK.",
            "Example": "The health of the storage controller located in 'PCIe Slot 1' has changed to OK.",
            "Severity": "OK",
            "MessageSeverity": "OK",
            "NumberOfArgs": 1,
            "ParamTypes": [
                "string"
            ],
            "ArgDescriptions": [
                "The location of the storage controller."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain the storage controller location."
            ],
            "Resolution": "None.",
            "ClearingLogic": {
                "ClearsIf": "SameOriginOfCondition",
                "ClearsMessage": [
                    "ControllerFailure",
                    "ControllerDegraded"
                ]
            }
        },
        "ControllerFailure": {
            "Description": "A storage controller failure was detected.",
            "LongDescription": "This message shall indicate that a storage controller failure condition was detected due to a hardware, communication, or firmware failure.",
            "Message": "A failure condition for the storage controller located in '%1' was detected.",
            "Example": "A failure condition for the storage controller located in 'PCIe Slot 1' was detected.",
            "Severity": "Critical",
            "MessageSeverity": "Critical",
            "NumberOfArgs": 1,
            "ParamTypes": [
                "string"
            ],
            "ArgDescriptions": [
                "The location of the storage controller."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain the storage controller location."
            ],
            "Resolution": "Reseat the storage controller in the PCI slot.  Update the controller to the latest firmware version.  If the issue persists, replace the controller.",
            "ClearingLogic": {
                "ClearsIf": "SameOriginOfCondition",
                "ClearsMessage": [
                    "ControllerDegraded"
                ]
            }
        },
        "DriveOK": {
            "Description": "The health of a drive has changed to OK.",
            "LongDescription": "This message shall indicate a drive health has changed to OK.",
            "Message": "The health of the drive located in '%1' has changed to OK.",
            "Example": "The health of the drive located in 'PCIe Slot 1' has changed to OK.",
            "Severity": "OK",
            "MessageSeverity": "OK",
            "NumberOfArgs": 1,
            "ParamTypes": [
                "string"
            ],
            "ArgDescriptions": [
                "The location of the drive."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain the drive location."
            ],
            "Resolution": "None.",
            "ClearingLogic": {
                "ClearsIf": "SameOriginOfCondition",
                "ClearsMessage": [
                    "DrivePredictiveFailure",
                    "DriveFailure"
                ]
            }
        },
        "DrivePredictedMediaLifeLow": {
            "Description": "The drive media predicted life left is low.",
            "LongDescription": "This message shall indicate a drive media predicted life left level is below a user or vendor-defined threshold.",
            "Message": "The drive located at `%1` has a predicted media life left of %2 percent and is below the specified threhsold of %3 percent.",
            "Example": "The drive located at 'Bay 1' has a predicted media life left of 10 percent and is below the specified threhsold of 20 percent.",
            "Severity": "Warning",
            "MessageSeverity": "Warning",
            "VersionAdded": "1.3.0",
            "NumberOfArgs": 3,
            "ParamTypes": [
                "string",
                "number",
                "number"
            ],
            "ArgDescriptions": [
                "The location of the drive.",
                "The percent of predicted media life left.",
                "The alert threshold."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain the drive location.",
                "This argument shall contain the value of PredictedMediaLifeLeft for this drive.",
                "This argument shall contain the value of the threshold that triggered this message."
            ],
            "Resolution": "Replace the drive before the predicted media life left reaches 0%."
        },
        "DrivePredictiveFailure": {
            "Description": "A predictive drive failure condition was detected.",
            "LongDescription": "This message shall indicate a drive predictive failure condition was detected.",
            "Message": "A predictive failure condition for the drive located in '%1' was detected.",
            "Example": "A predictive failure condition for the drive located in 'Bay 1' was detected.",
            "Severity": "Warning",
            "MessageSeverity": "Warning",
            "NumberOfArgs": 1,
            "ParamTypes": [
                "string"
            ],
            "ArgDescriptions": [
                "The location of the drive."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain the drive location."
            ],
            "Resolution": "If this drive is not part of a fault-tolerant volume, first back up all data, then replace the drive and restore all data afterward.  If this drive is part of a fault-tolerant volume, replace this drive as soon as possible as long as the volume health is OK."
        },
        "DrivePredictiveFailureCleared": {
            "Description": "A previously detected predictive failure condition on a drive was cleared.",
            "LongDescription": "This message shall indicate a predictive failure condition on a drive was cleared, but any other failure conditions remain.",
            "Message": "A predictive failure condition for the drive located in '%1' was cleared.",
            "Example": "A predictive failure condition for the drive located in 'Bay 1' was cleared.",
            "Severity": "OK",
            "MessageSeverity": "OK",
            "NumberOfArgs": 1,
            "ParamTypes": [
                "string"
            ],
            "ArgDescriptions": [
                "The location of the drive."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain the drive location."
            ],
            "Resolution": "None.",
            "ClearingLogic": {
                "ClearsIf": "SameOriginOfCondition",
                "ClearsMessage": [
                    "DrivePredictiveFailure"
                ]
            }
        },
        "DriveFailure": {
            "Description": "A drive failure condition was detected.",
            "LongDescription": "This message shall indicate a drive failure condition was detected due to a drive not installed correctly or failed.",
            "Message": "A failure condition for the drive located in '%1' was detected.",
            "Example": "A failure condition for the drive located in 'Bay 1' was detected.",
            "Severity": "Critical",
            "MessageSeverity": "Critical",
            "NumberOfArgs": 1,
            "ParamTypes": [
                "string"
            ],
            "ArgDescriptions": [
                "The location of the drive."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain the drive location."
            ],
            "Resolution": "Ensure all cables are properly and securely connected.  Ensure all drives are fully seated.  Replace the defective cables, drive, or both.",
            "ClearingLogic": {
                "ClearsIf": "SameOriginOfCondition",
                "ClearsMessage": [
                    "DrivePredictiveFailure"
                ]
            }
        },
        "DriveFailureCleared": {
            "Description": "A previously detected failure condition on a drive was cleared.",
            "LongDescription": "This message shall indicate a failure condition on a drive was cleared, but any predictive failure or other conditions remain.",
            "Message": "A failure condition for the drive located in '%1' was cleared.",
            "Example": "A failure condition for the drive located in 'Bay 1' was cleared.",
            "Severity": "OK",
            "MessageSeverity": "OK",
            "NumberOfArgs": 1,
            "ParamTypes": [
                "string"
            ],
            "ArgDescriptions": [
                "The location of the drive."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain the drive location."
            ],
            "Resolution": "None.",
            "ClearingLogic": {
                "ClearsIf": "SameOriginOfCondition",
                "ClearsMessage": [
                    "DriveFailure"
                ]
            }
        },
        "DriveInserted": {
            "Description": "A drive was inserted.",
            "LongDescription": "This message shall indicate a drive was inserted.",
            "Message": "The drive located in '%1' was inserted.",
            "Example": "The drive located in 'Bay 1' was inserted.",
            "Severity": "OK",
            "MessageSeverity": "OK",
            "NumberOfArgs": 1,
            "ParamTypes": [
                "string"
            ],
            "ArgDescriptions": [
                "The location of the drive."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain the drive location."
            ],
            "Resolution": "If the drive is not properly displayed, attempt to refresh the cached data.",
            "ClearingLogic": {
                "ClearsIf": "SameOriginOfCondition",
                "ClearsMessage": [
                    "DriveRemoved",
                    "DrivePredictiveFailure",
                    "DrivePredictedMediaLifeLow",
                    "DriveFailure",
                    "DriveMissing"
                ]
            }
        },
        "DriveRemoved": {
            "Description": "A drive was removed.",
            "LongDescription": "This message shall indicate a drive was removed.",
            "Message": "The drive located in '%1' was removed.",
            "Example": "The drive located in 'Bay 1' was removed.",
            "Severity": "Critical",
            "MessageSeverity": "Critical",
            "NumberOfArgs": 1,
            "ParamTypes": [
                "string"
            ],
            "ArgDescriptions": [
                "The location of the drive."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain the drive location."
            ],
            "Resolution": "If the drive is still displayed, attempt to refresh the cached data.",
            "ClearingLogic": {
                "ClearsIf": "SameOriginOfCondition",
                "ClearsMessage": [
                    "DriveInserted",
                    "DrivePredictiveFailure",
                    "DrivePredictedMediaLifeLow",
                    "DriveFailure",
                    "DriveOffline"
                ]
            }
        },
        "VolumeOK": {
            "Description": "A volume health has changed to OK.",
            "LongDescription": "This message shall indicate a volume health has changed to OK.",
            "Message": "The health of volume '%1' that is attached to the storage controller located in '%2' has changed to OK.",
            "Example": "The health of volume 'Volume1' that is attached to the storage controller located in 'PCIe Slot 1' has changed to OK.",
            "Severity": "OK",
            "MessageSeverity": "OK",
            "NumberOfArgs": 2,
            "ParamTypes": [
                "string",
                "string"
            ],
            "ArgDescriptions": [
                "The identifier of the volume.",
                "The location of the storage controller."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain an identifier for the volume.  The identifier may contain `Id`, `Name`, `Identifiers`, `LogicalUnitNumber`, or other data used to uniquely identify the volume.",
                "This argument shall contain the storage controller location."
            ],
            "Resolution": "None.",
            "ClearingLogic": {
                "ClearsIf": "SameOriginOfCondition",
                "ClearsMessage": [
                    "VolumeFailure",
                    "VolumeDegraded"
                ]
            }
        },
        "VolumeDegraded": {
            "Description": "The storage controller has detected a degraded volume condition.",
            "LongDescription": "This message shall indicate a volume degraded condition was detected due to one or more drives not installed correctly, missing, or failed.",
            "Message": "The volume '%1' attached to the storage controller located in '%2' is degraded.",
            "Example": "The volume 'Volume1' attached to the storage controller located in 'PCIe Slot 1' is degraded.",
            "Severity": "Warning",
            "MessageSeverity": "Warning",
            "NumberOfArgs": 2,
            "ParamTypes": [
                "string",
                "string"
            ],
            "ArgDescriptions": [
                "The identifier of the volume.",
                "The location of the storage controller."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain an identifier for the volume.  The identifier may contain `Id`, `Name`, `Identifiers`, `LogicalUnitNumber`, or other data used to uniquely identify the volume.",
                "This argument shall contain the storage controller location."
            ],
            "Resolution": "Ensure all cables are properly and securely connected.  Replace failed drives."
        },
        "VolumeRebuilding": {
            "Description": "The storage controller is in the process of rebuilding the volume as part of a repair process.  Performance might be degraded while the rebuild is in progress.",
            "LongDescription": "This message shall indicate that the storage controller is in the process of rebuilding the volume as part of a repair process.  Performance might be degraded while the rebuild is in progress.",
            "Message": "The volume '%1' attached to the storage controller located in '%2' is being rebuilt.",
            "Example": "The volume 'Volume1' attached to the storage controller located in 'PCIe Slot 1' is being rebuilt.",
            "Severity": "Warning",
            "MessageSeverity": "Warning",
            "VersionAdded": "1.5.0",
            "NumberOfArgs": 2,
            "ParamTypes": [
                "string",
                "string"
            ],
            "ArgDescriptions": [
                "The identifier of the volume.",
                "The location of the storage controller."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain an identifier for the volume.  The identifier may contain `Id`, `Name`, `Identifiers`, `LogicalUnitNumber`, or other data used to uniquely identify the volume.",
                "This argument shall contain the storage controller location."
            ],
            "Resolution": "Wait for the volume rebuild to complete."
        },
        "VolumeReconfiguring": {
            "Description": "The storage controller is in the process of reconfiguring the volume as part of adding new drives or changing RAID levels.  Performance might be degraded while the reconfiguration is in progress.",
            "LongDescription": "This message shall indicate that the storage controller is in the process of reconfiguring the volume as part of adding new drives or changing RAID levels.  Performance might be degraded while the reconfiguration is in progress.",
            "Message": "The volume '%1' attached to the storage controller located in '%2' is being reconfigured.",
            "Example": "The volume 'Volume1' attached to the storage controller located in 'PCIe Slot 1' is being reconfigured.",
            "Severity": "Warning",
            "MessageSeverity": "Warning",
            "VersionAdded": "1.5.0",
            "NumberOfArgs": 2,
            "ParamTypes": [
                "string",
                "string"
            ],
            "ArgDescriptions": [
                "The identifier of the volume.",
                "The location of the storage controller."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain an identifier for the volume.  The identifier may contain `Id`, `Name`, `Identifiers`, `LogicalUnitNumber`, or other data used to uniquely identify the volume.",
                "This argument shall contain the storage controller location."
            ],
            "Resolution": "Wait for the volume reconfiguration to complete."
        },
        "VolumeFailure": {
            "Description": "The storage controller has detected a failed volume condition.",
            "LongDescription": "This message shall indicate a volume failure condition was detected due to one or more drives not installed correctly, missing, or failed.",
            "Message": "The volume '%1' attached to the storage controller located in '%2' has failed.",
            "Example": "The volume 'Volume1' attached to the storage controller located in 'PCIe Slot 1' has failed.",
            "Severity": "Critical",
            "MessageSeverity": "Critical",
            "NumberOfArgs": 2,
            "ParamTypes": [
                "string",
                "string"
            ],
            "ArgDescriptions": [
                "The identifier of the volume.",
                "The location of the storage controller."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain an identifier for the volume.  The identifier may contain `Id`, `Name`, `Identifiers`, `LogicalUnitNumber`, or other data used to uniquely identify the volume.",
                "This argument shall contain the storage controller location."
            ],
            "Resolution": "Ensure all cables are properly and securely connected.  Ensure all drives are fully seated and operational."
        },
        "WriteCacheProtected": {
            "Description": "A storage controller write cache state is in protected mode.",
            "LongDescription": "This message shall indicate a controller write cache state is in protected mode.",
            "Message": "The write cache state on the storage controller located in '%1' is in protected mode.",
            "Example": "The write cache state on the storage controller located in 'PCIe Slot 1' is in protected mode.",
            "Severity": "OK",
            "MessageSeverity": "OK",
            "NumberOfArgs": 1,
            "ParamTypes": [
                "string"
            ],
            "ArgDescriptions": [
                "The location of the storage controller."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain the storage controller location."
            ],
            "Resolution": "None.",
            "ClearingLogic": {
                "ClearsIf": "SameOriginOfCondition",
                "ClearsMessage": [
                    "WriteCacheTemporarilyDegraded",
                    "WriteCacheDegraded"
                ]
            }
        },
        "WriteCacheTemporarilyDegraded": {
            "Description": "The write cache state is temporarily degraded.",
            "LongDescription": "This message shall indicate write cache state temporarily degraded due to battery charging or data recovery rebuild operation pending.",
            "Message": "The write cache state on the storage controller located in '%1' is temporarily degraded.",
            "Example": "The write cache state on the storage controller located in 'PCIe Slot 1' is temporarily degraded.",
            "Severity": "Warning",
            "MessageSeverity": "Warning",
            "NumberOfArgs": 1,
            "ParamTypes": [
                "string"
            ],
            "ArgDescriptions": [
                "The location of the storage controller."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain the storage controller location."
            ],
            "Resolution": "Check the controller to determine the cause of write cache temporarily degraded state, such as a battery is charging or a data recovery rebuild operation is pending.  Wait for the condition causing the temporarily degraded state to resolve itself.",
            "ClearingLogic": {
                "ClearsIf": "SameOriginOfCondition",
                "ClearsMessage": [
                    "WriteCacheDegraded"
                ]
            }
        },
        "WriteCacheDegraded": {
            "Description": "The write cache state is degraded.",
            "LongDescription": "This message shall indicate the write cache state degraded due to a missing battery or hardware failure.",
            "Message": "The write cache state on the storage controller located in '%1' is degraded.",
            "Example": "The write cache state on the storage controller located in 'PCIe Slot 1' is degraded.",
            "Severity": "Critical",
            "MessageSeverity": "Critical",
            "NumberOfArgs": 1,
            "ParamTypes": [
                "string"
            ],
            "ArgDescriptions": [
                "The location of the storage controller."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain the storage controller location."
            ],
            "Resolution": "Check the controller to determine the cause of write cache degraded state, such as a missing battery or hardware failure.  This condition typically requires manual intervention to resolve.",
            "ClearingLogic": {
                "ClearsIf": "SameOriginOfCondition",
                "ClearsMessage": [
                    "WriteCacheTemporarilyDegraded"
                ]
            }
        },
        "WriteCacheDataLoss": {
            "Description": "The write cache is reporting loss of data in posted-writes memory.",
            "LongDescription": "This message shall indicate the write cache is reporting loss of data in posted-writes cache memory due to loss of battery power when the server lost power or a hardware error.",
            "Message": "The write cache on the storage controller located in '%1' has data loss.",
            "Example": "The write cache on the storage controller located in 'PCIe Slot 1' has data loss.",
            "Severity": "Critical",
            "MessageSeverity": "Critical",
            "NumberOfArgs": 1,
            "ParamTypes": [
                "string"
            ],
            "ArgDescriptions": [
                "The location of the storage controller."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain the storage controller location."
            ],
            "Resolution": "Check the controller resource properties to determine the cause of the write cache data loss."
        },
        "BatteryOK": {
            "Description": "The health of a battery has changed to OK.",
            "LongDescription": "This message shall indicate a battery health has changed to OK.",
            "Message": "The health of the battery located in '%1' has changed to OK.",
            "Example": "The health of the battery located in 'Chassis 1' has changed to OK.",
            "Severity": "OK",
            "MessageSeverity": "OK",
            "VersionAdded": "1.1.0",
            "NumberOfArgs": 1,
            "ParamTypes": [
                "string"
            ],
            "ArgDescriptions": [
                "The location of the battery."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain the battery location."
            ],
            "Resolution": "None.",
            "ClearingLogic": {
                "ClearsIf": "SameOriginOfCondition",
                "ClearsMessage": [
                    "BatteryCharging",
                    "BatteryMissing",
                    "BatteryFailure"
                ]
            }
        },
        "BatteryCharging": {
            "Description": "A battery charging condition was detected.",
            "LongDescription": "This message shall indicate a battery is below the required capacity and is charging.",
            "Message": "A charging condition for the battery located in '%1' was detected.",
            "Example": "A charging condition for the battery located in 'Chassis 1' was detected.",
            "Severity": "Warning",
            "MessageSeverity": "Warning",
            "VersionAdded": "1.1.0",
            "NumberOfArgs": 1,
            "ParamTypes": [
                "string"
            ],
            "ArgDescriptions": [
                "The location of the battery."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain the battery location."
            ],
            "Resolution": "None.  There may be reduced performance and features while the battery is charging.",
            "ClearingLogic": {
                "ClearsIf": "SameOriginOfCondition",
                "ClearsMessage": [
                    "BatteryMissing",
                    "BatteryFailure"
                ]
            }
        },
        "BatteryMissing": {
            "Description": "A battery missing condition was detected.",
            "LongDescription": "This message shall indicate a battery that is required by the configuration is missing.",
            "Message": "The battery located in '%1' is missing.",
            "Example": "The battery located in 'Chassis 1' is missing.",
            "Severity": "Critical",
            "MessageSeverity": "Critical",
            "VersionAdded": "1.1.0",
            "NumberOfArgs": 1,
            "ParamTypes": [
                "string"
            ],
            "ArgDescriptions": [
                "The location of the battery."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain the battery location."
            ],
            "Resolution": "Attach the battery.  Ensure all cables are properly and securely connected.",
            "ClearingLogic": {
                "ClearsIf": "SameOriginOfCondition",
                "ClearsMessage": [
                    "BatteryCharging",
                    "BatteryFailure"
                ]
            }
        },
        "BatteryFailure": {
            "Description": "A battery failure condition was detected.",
            "LongDescription": "This message shall indicate a battery failure condition was detected.",
            "Message": "A failure condition for the battery located in '%1' was detected.",
            "Example": "A failure condition for the battery located in 'Chassis 1' was detected.",
            "Severity": "Critical",
            "MessageSeverity": "Critical",
            "VersionAdded": "1.1.0",
            "NumberOfArgs": 1,
            "ParamTypes": [
                "string"
            ],
            "ArgDescriptions": [
                "The location of the battery."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain the battery location."
            ],
            "Resolution": "Ensure all cables are properly and securely connected.  Replace the failed battery.",
            "ClearingLogic": {
                "ClearsIf": "SameOriginOfCondition",
                "ClearsMessage": [
                    "BatteryCharging",
                    "BatteryMissing"
                ]
            }
        },
        "ControllerDegraded": {
            "Description": "A storage controller degraded condition was detected.",
            "LongDescription": "This message shall indicate that a storage controller degraded condition was detected.",
            "Message": "A degraded condition for the storage controller located in '%1' was detected due to reason '%2'.",
            "Example": "A degraded condition for the storage controller located in 'PCIe Slot 1' was detected due to reason 'Magic smoke escaping'.",
            "Severity": "Warning",
            "MessageSeverity": "Warning",
            "VersionAdded": "1.1.0",
            "NumberOfArgs": 2,
            "ParamTypes": [
                "string",
                "string"
            ],
            "ArgDescriptions": [
                "The location of the storage controller.",
                "The reason for the degraded controller."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain the storage controller location.",
                "This argument shall contain the reason for the degraded controller."
            ],
            "Resolution": "Reseat the storage controller in the PCI slot.  Update the controller to the latest firmware version.  If the issue persists, replace the controller.",
            "ClearingLogic": {
                "ClearsIf": "SameOriginOfCondition",
                "ClearsMessage": [
                    "ControllerFailure"
                ]
            }
        },
        "ControllerPreviousError": {
            "Description": "A storage controller error was detected prior to reboot.",
            "LongDescription": "This message shall indicate that an unreported storage controller error condition was detected prior to reboot.",
            "Message": "A previous error condition for the storage controller located in '%1' was detected due to '%2'.",
            "Example": "A previous error condition for the storage controller located in 'PCIe Slot 1' was detected due to 'Magic smoke escaping'.",
            "Severity": "Warning",
            "MessageSeverity": "Warning",
            "VersionAdded": "1.1.0",
            "NumberOfArgs": 2,
            "ParamTypes": [
                "string",
                "string"
            ],
            "ArgDescriptions": [
                "The location of the storage controller.",
                "The reason for error."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain the storage controller location.",
                "This argument shall contain the reason for failure."
            ],
            "Resolution": "Update the controller to the latest firmware version.  If the issue persists, replace the controller."
        },
        "ControllerPasswordAccepted": {
            "Description": "The storage controller password was entered.",
            "LongDescription": "This message shall indicate that the storage controller password was accepted.  Normally this is used by storage controllers that require a controller password during boot to unlock encrypted volumes or drives.",
            "Message": "A password was entered for the storage controller located in '%1'.",
            "Example": "A password was entered for the storage controller located in 'PCIe Slot 1'.",
            "Severity": "OK",
            "MessageSeverity": "OK",
            "VersionAdded": "1.1.0",
            "NumberOfArgs": 1,
            "ParamTypes": [
                "string"
            ],
            "ArgDescriptions": [
                "The location of the storage controller."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain the storage controller location."
            ],
            "Resolution": "None.",
            "ClearingLogic": {
                "ClearsIf": "SameOriginOfCondition",
                "ClearsMessage": [
                    "ControllerPasswordRequired"
                ]
            }
        },
        "ControllerPasswordRequired": {
            "Description": "The storage controller requires a password.",
            "LongDescription": "This message shall indicate that the storage controller requires a password.  Normally this is used by storage controllers that require a controller password during boot to unlock encrypted volumes or drives.",
            "Message": "The storage controller located in '%1' requires a password.",
            "Example": "The storage controller located in 'PCIe Slot 1' requires a password.",
            "Severity": "Critical",
            "MessageSeverity": "Critical",
            "VersionAdded": "1.1.0",
            "NumberOfArgs": 1,
            "ParamTypes": [
                "string"
            ],
            "ArgDescriptions": [
                "The location of the storage controller."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain the storage controller location."
            ],
            "Resolution": "Enter the controller password."
        },
        "ControllerPortOK": {
            "Description": "The health of a controller port has changed to OK.",
            "LongDescription": "This message shall indicate a controller port health has changed to OK.",
            "Message": "The health of the controller port located in '%1' has changed to OK.",
            "Example": "The health of the controller port located in 'PCIe Slot 1' has changed to OK.",
            "Severity": "OK",
            "MessageSeverity": "OK",
            "VersionAdded": "1.1.0",
            "NumberOfArgs": 1,
            "ParamTypes": [
                "string"
            ],
            "ArgDescriptions": [
                "The location of the controller port."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain the controller port location."
            ],
            "Resolution": "None.",
            "ClearingLogic": {
                "ClearsIf": "SameOriginOfCondition",
                "ClearsMessage": [
                    "ControllerPortFailure",
                    "ControllerPortDegraded"
                ]
            }
        },
        "ControllerPortDegraded": {
            "Description": "A controller port degraded condition was detected.",
            "LongDescription": "This message shall indicate a controller port degraded condition was detected.",
            "Message": "A degraded condition for the controller port located in '%1' was detected due to reason '%2'.",
            "Example": "A degraded condition for the controller port located in 'PCIe Slot 1' was detected due to reason 'Magic smoke escaping'.",
            "Severity": "Warning",
            "MessageSeverity": "Warning",
            "VersionAdded": "1.1.0",
            "NumberOfArgs": 2,
            "ParamTypes": [
                "string",
                "string"
            ],
            "ArgDescriptions": [
                "The location of the controller port.",
                "The reason for the degraded controller port."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain the controller port location.",
                "This argument shall contain the reason for the degraded controller port."
            ],
            "Resolution": "Ensure all cables are properly and securely connected.  Replace faulty cables."
        },
        "ControllerPortFailure": {
            "Description": "A controller port failure condition was detected.",
            "LongDescription": "This message shall indicate a controller port failure condition was detected.",
            "Message": "A failure condition for the controller port located in '%1' was detected.",
            "Example": "A failure condition for the controller port located in 'PCIe Slot 1' was detected.",
            "Severity": "Critical",
            "MessageSeverity": "Critical",
            "VersionAdded": "1.1.0",
            "NumberOfArgs": 1,
            "ParamTypes": [
                "string"
            ],
            "ArgDescriptions": [
                "The location of the controller port."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain the controller port location."
            ],
            "Resolution": "Ensure all cables are properly and securely connected.  Replace faulty cables.",
            "ClearingLogic": {
                "ClearsIf": "SameOriginOfCondition",
                "ClearsMessage": [
                    "ControllerPortDegraded"
                ]
            }
        },
        "DriveMissing": {
            "Description": "A drive missing condition was detected.",
            "LongDescription": "This message shall indicate a drive that is required by the configuration is missing.  This message shall exist any time a volume is degraded or failed due to a missing drive.",
            "Message": "A missing condition for the drive located in '%1' was detected.",
            "Example": "A missing condition for the drive located in 'Bay 1' was detected.",
            "Severity": "Critical",
            "MessageSeverity": "Critical",
            "VersionAdded": "1.1.0",
            "NumberOfArgs": 1,
            "ParamTypes": [
                "string"
            ],
            "ArgDescriptions": [
                "The location of the drive."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain the drive location."
            ],
            "Resolution": "Ensure all cables are properly and securely connected.  Ensure all drives are fully seated.  Replace the defective cables, drive, or both.  Delete the volume if it is no longer needed."
        },
        "DriveMissingCleared": {
            "Description": "A previous drive missing condition was cleared.",
            "LongDescription": "This message shall indicate a previous drive missing condition was cleared.",
            "Message": "A missing condition for the drive located in '%1' was cleared.",
            "Example": "A missing condition for the drive located in 'Bay 1' was cleared.",
            "Severity": "OK",
            "MessageSeverity": "OK",
            "VersionAdded": "1.1.0",
            "NumberOfArgs": 1,
            "ParamTypes": [
                "string"
            ],
            "ArgDescriptions": [
                "The location of the drive."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain the drive location."
            ],
            "Resolution": "None.",
            "ClearingLogic": {
                "ClearsIf": "SameOriginOfCondition",
                "ClearsMessage": [
                    "DriveMissing"
                ]
            }
        },
        "DriveOffline": {
            "Description": "A drive offline condition was detected.",
            "LongDescription": "This message shall indicate a drive offline condition was detected.  This may occur when a drive is unconfigured, encrypted by a foreign controller, offline during a background operation, or unsupported.",
            "Message": "An offline condition for the drive located in '%1' was detected.",
            "Example": "An offline condition for the drive located in 'Bay 1' was detected.",
            "Severity": "Critical",
            "MessageSeverity": "Critical",
            "VersionAdded": "1.1.0",
            "NumberOfArgs": 1,
            "ParamTypes": [
                "string"
            ],
            "ArgDescriptions": [
                "The location of the drive."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain the drive location."
            ],
            "Resolution": "If the drive is unconfigured or needs an import, configure the drive.  If the drive operation is in progress, wait for the operation to complete.  If the drive is not supported, replace it."
        },
        "DriveOfflineCleared": {
            "Description": "A drive offline condition was cleared.",
            "LongDescription": "This message shall indicate a drive offline condition was cleared.",
            "Message": "An offline condition for the drive located in '%1' was cleared.",
            "Example": "An offline condition for the drive located in 'Bay 1' was cleared.",
            "Severity": "OK",
            "MessageSeverity": "OK",
            "VersionAdded": "1.1.0",
            "NumberOfArgs": 1,
            "ParamTypes": [
                "string"
            ],
            "ArgDescriptions": [
                "The location of the drive."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain the drive location."
            ],
            "Resolution": "None.",
            "ClearingLogic": {
                "ClearsIf": "SameOriginOfCondition",
                "ClearsMessage": [
                    "DriveOffline"
                ]
            }
        },
        "VolumeOffline": {
            "Description": "The storage controller has detected an offline volume condition.",
            "LongDescription": "This message shall indicate a volume offline condition was detected.  This may occur if the volume configuration is not supported or needs to be imported.",
            "Message": "The volume '%1' attached to the storage controller located in '%2' is offline.",
            "Example": "The volume 'Volume1' attached to the storage controller located in 'PCIe Slot 1' is offline.",
            "Severity": "Critical",
            "MessageSeverity": "Critical",
            "VersionAdded": "1.2.0",
            "NumberOfArgs": 2,
            "ParamTypes": [
                "string",
                "string"
            ],
            "ArgDescriptions": [
                "The identifier of the volume.",
                "The location of the storage controller."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain an identifier for the volume.  The identifier may contain `Id`, `Name`, `Identifiers`, `LogicalUnitNumber`, or other data used to uniquely identify the volume.",
                "This argument shall contain the storage controller location."
            ],
            "Resolution": "Use storage software to enable, repair, or import the volume.  You may also delete or move volume back to the original controller."
        },
        "VolumeOffine": {
            "Description": "The storage controller has detected an offline volume condition.",
            "LongDescription": "This message shall indicate a volume offline condition was detected.  This may occur if the volume configuration is not supported or needs to be imported.",
            "Message": "The volume '%1' attached to the storage controller located in '%2' is offline.",
            "Example": "The volume 'Volume1' attached to the storage controller located in 'PCIe Slot 1' is offline.",
            "Severity": "Critical",
            "MessageSeverity": "Critical",
            "VersionAdded": "1.1.0",
            "VersionDeprecated": "1.2.0",
            "Deprecated": "This message was deprecated in favor of `VolumeOffline` due to a typographic error in the `MessageId`.",
            "NumberOfArgs": 2,
            "ParamTypes": [
                "string",
                "string"
            ],
            "ArgDescriptions": [
                "The identifier of the volume.",
                "The location of the storage controller."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain an identifier for the volume.  The identifier may contain `Id`, `Name`, `Identifiers`, `LogicalUnitNumber`, or other data used to uniquely identify the volume.",
                "This argument shall contain the storage controller location."
            ],
            "Resolution": "Use storage software to enable, repair, or import the volume.  You may also delete or move volume back to the original controller."
        },
        "VolumeOfflineCleared": {
            "Description": "The storage controller has detected an online volume condition.",
            "LongDescription": "This message shall indicate a volume online condition was detected.",
            "Message": "The volume '%1' attached to the storage controller located in '%2' is online.",
            "Example": "The volume 'Volume1' attached to the storage controller located in 'PCIe Slot 1' is online.",
            "Severity": "OK",
            "MessageSeverity": "OK",
            "VersionAdded": "1.1.0",
            "NumberOfArgs": 2,
            "ParamTypes": [
                "string",
                "string"
            ],
            "ArgDescriptions": [
                "The identifier of the volume.",
                "The location of the storage controller."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain an identifier for the volume.  The identifier may contain `Id`, `Name`, `Identifiers`, `LogicalUnitNumber`, or other data used to uniquely identify the volume.",
                "This argument shall contain the storage controller location."
            ],
            "Resolution": "None.",
            "ClearingLogic": {
                "ClearsIf": "SameOriginOfCondition",
                "ClearsMessage": [
                    "VolumeOffine",
                    "VolumeOffline"
                ]
            }
        },
        "BlockSecurityIDIssued": {
            "Description": "The TCG-defined command to block establishment of a security ID was issued.",
            "LongDescription": "This message shall indicate that the TCG-defined command to block establishment of a security ID was issued to a drive.",
            "Message": "The TCG-defined command to block establishment of a security ID was issued to the drive located in '%1'.",
            "Example": "The TCG-defined command to block establishment of a security ID was issued to the drive located in 'Bay 1'.",
            "Severity": "OK",
            "MessageSeverity": "OK",
            "VersionAdded": "1.4.0",
            "NumberOfArgs": 1,
            "ParamTypes": [
                "string"
            ],
            "ArgDescriptions": [
                "The location of the drive."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain the drive location."
            ],
            "Resolution": "None."
        },
        "BlockSecurityIDFailed": {
            "Description": "The TCG-defined command to block establishment of a security ID failed.",
            "LongDescription": "This message shall indicate that the TCG-defined command to block establishment of a security ID failed when issued to a drive.",
            "Message": "The TCG-defined command to block establishment of a security ID failed when issued to the drive located in '%1'.",
            "Example": "The TCG-defined command to block establishment of a security ID failed when issued to the drive located in 'Bay 1'.",
            "Severity": "Warning",
            "MessageSeverity": "Warning",
            "VersionAdded": "1.4.0",
            "NumberOfArgs": 1,
            "ParamTypes": [
                "string"
            ],
            "ArgDescriptions": [
                "The location of the drive."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain the drive location."
            ],
            "Resolution": "Update the drive firmware or replace the drive."
        },
        "BlockSecurityIDRemoved": {
            "Description": "TCG-defined commands to block establishment of a security ID are no longer being sent to a drive.",
            "LongDescription": "This message shall indicate that the TCG-defined command to block establishment of a security ID are no longer sent to a drive.",
            "Message": "The TCG-defined commands to block establishment of a security ID are no longer sent to the drive located in '%1'.",
            "Example": "The TCG-defined commands to block establishment of a security ID are no longer sent to the drive located in 'Bay 1'.",
            "Severity": "OK",
            "MessageSeverity": "OK",
            "VersionAdded": "1.4.0",
            "NumberOfArgs": 1,
            "ParamTypes": [
                "string"
            ],
            "ArgDescriptions": [
                "The location of the drive."
            ],
            "ArgLongDescriptions": [
                "This argument shall contain the drive location."
            ],
            "Resolution": "None."
        }
    }
}