u8     max_temperature_degreesC;
        u8     logical_blocks_per_phys_block_exp; /* phyblocksize = 512*2^exp */
        __le16 current_queue_depth_limit;
-       u8     switch_name[10];
-       __le16 switch_port;
-       u8     alternate_paths_switch_name[40];
-       u8     alternate_paths_switch_port[8];
+       u8     reserved_switch_stuff[60];
        __le16 power_on_hours; /* valid only if gas gauge supported */
        __le16 percent_endurance_used; /* valid only if gas gauge supported. */
 #define BMIC_PHYS_DRIVE_SSD_WEAROUT(idphydrv) \
        (idphydrv->smart_carrier_authentication == 0x01)
        u8     smart_carrier_app_fw_version;
        u8     smart_carrier_bootloader_fw_version;
+       u8     sanitize_support_flags;
+       u8     drive_key_flags;
        u8     encryption_key_name[64];
        __le32 misc_drive_flags;
        __le16 dek_index;
-       u8     padding[112];
-};
+       __le16 hba_drive_encryption_flags;
+       __le16 max_overwrite_time;
+       __le16 max_block_erase_time;
+       __le16 max_crypto_erase_time;
+       u8     device_connector_info[5];
+       u8     connector_name[8][8];
+       u8     page_83_id[16];
+       u8     max_link_rate[256];
+       u8     neg_phys_link_rate[256];
+       u8     box_conn_name[8];
+} __attribute((aligned(512)));
 
 struct bmic_sense_subsystem_info {
        u8      primary_slot_number;