]> git.ipfire.org Git - thirdparty/mdadm.git/blobdiff - platform-intel.h
mdmon: fix wrong array state when disk fails during mdmon startup
[thirdparty/mdadm.git] / platform-intel.h
index a8ae85f4de836b2b66214a1cfdb888af135accb5..29c85f121cd1e0d643db418188536fe2c2ac9607 100644 (file)
@@ -99,6 +99,8 @@ struct imsm_orom {
        #define IMSM_OROM_CAPABILITIES_Rohi (1 << 5)
        #define IMSM_OROM_CAPABILITIES_ReadPatrol (1 << 6)
        #define IMSM_OROM_CAPABILITIES_XorHw (1 << 7)
+       #define IMSM_OROM_CAPABILITIES_SKUMode ((1 << 8)|(1 << 9))
+       #define IMSM_OROM_CAPABILITIES_TPV (1 << 10)
 } __attribute__((packed));
 
 static inline int imsm_orom_has_raid0(const struct imsm_orom *orom)
@@ -184,6 +186,11 @@ static inline int imsm_orom_is_nvme(const struct imsm_orom *orom)
                        sizeof(orom->signature)) == 0;
 }
 
+static inline int imsm_orom_has_tpv_support(const struct imsm_orom *orom)
+{
+       return !!(orom->driver_features & IMSM_OROM_CAPABILITIES_TPV);
+}
+
 enum sys_dev_type {
        SYS_DEV_UNKNOWN = 0,
        SYS_DEV_SAS,
@@ -244,4 +251,5 @@ const char *get_sys_dev_type(enum sys_dev_type);
 const struct orom_entry *get_orom_entry_by_device_id(__u16 dev_id);
 const struct imsm_orom *get_orom_by_device_id(__u16 device_id);
 struct sys_dev *device_by_id(__u16 device_id);
+struct sys_dev *device_by_id_and_path(__u16 device_id, const char *path);
 char *vmd_domain_to_controller(struct sys_dev *hba, char *buf);