scsi: smartpqi: correct BMIC identify physical drive

correct the BMIC Identify Physical Device structure
 - missing 2 fields

Reviewed-by: Scott Benesh <scott.benesh@microsemi.com>
Signed-off-by: Kevin Barnett <kevin.barnett@microsemi.com>
Signed-off-by: Don Brace <don.brace@microsemi.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
Kevin Barnett 2017-05-03 18:53:42 -05:00 committed by Martin K. Petersen
parent 8845fdfa92
commit 1be42f46ad
2 changed files with 32 additions and 4 deletions

View File

@ -1126,9 +1126,9 @@ struct bmic_identify_physical_device {
u8 multi_lun_device_lun_count; u8 multi_lun_device_lun_count;
u8 minimum_good_fw_revision[8]; u8 minimum_good_fw_revision[8];
u8 unique_inquiry_bytes[20]; u8 unique_inquiry_bytes[20];
u8 current_temperature_degreesC; u8 current_temperature_degrees;
u8 temperature_threshold_degreesC; u8 temperature_threshold_degrees;
u8 max_temperature_degreesC; u8 max_temperature_degrees;
u8 logical_blocks_per_phys_block_exp; u8 logical_blocks_per_phys_block_exp;
__le16 current_queue_depth_limit; __le16 current_queue_depth_limit;
u8 switch_name[10]; u8 switch_name[10];
@ -1141,10 +1141,22 @@ struct bmic_identify_physical_device {
u8 smart_carrier_authentication; u8 smart_carrier_authentication;
u8 smart_carrier_app_fw_version; u8 smart_carrier_app_fw_version;
u8 smart_carrier_bootloader_fw_version; u8 smart_carrier_bootloader_fw_version;
u8 sanitize_flags;
u8 encryption_key_flags;
u8 encryption_key_name[64]; u8 encryption_key_name[64];
__le32 misc_drive_flags; __le32 misc_drive_flags;
__le16 dek_index; __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 connector_info[5];
u8 connector_name[8][8];
u8 page_83_identifier[16];
u8 maximum_link_rate[256];
u8 negotiated_physical_link_rate[256];
u8 box_connector_name[8];
u8 padding_to_multiple_of_512[9];
}; };
#pragma pack() #pragma pack()

View File

@ -6982,6 +6982,22 @@ static void __attribute__((unused)) verify_structures(void)
BUILD_BUG_ON(offsetof(struct bmic_identify_controller, BUILD_BUG_ON(offsetof(struct bmic_identify_controller,
controller_mode) != 292); controller_mode) != 292);
BUILD_BUG_ON(offsetof(struct bmic_identify_physical_device,
phys_bay_in_box) != 115);
BUILD_BUG_ON(offsetof(struct bmic_identify_physical_device,
device_type) != 120);
BUILD_BUG_ON(offsetof(struct bmic_identify_physical_device,
redundant_path_present_map) != 1736);
BUILD_BUG_ON(offsetof(struct bmic_identify_physical_device,
active_path_number) != 1738);
BUILD_BUG_ON(offsetof(struct bmic_identify_physical_device,
alternate_paths_phys_connector) != 1739);
BUILD_BUG_ON(offsetof(struct bmic_identify_physical_device,
alternate_paths_phys_box_on_port) != 1755);
BUILD_BUG_ON(offsetof(struct bmic_identify_physical_device,
current_queue_depth_limit) != 1796);
BUILD_BUG_ON(sizeof(struct bmic_identify_physical_device) != 2560);
BUILD_BUG_ON(PQI_ADMIN_IQ_NUM_ELEMENTS > 255); BUILD_BUG_ON(PQI_ADMIN_IQ_NUM_ELEMENTS > 255);
BUILD_BUG_ON(PQI_ADMIN_OQ_NUM_ELEMENTS > 255); BUILD_BUG_ON(PQI_ADMIN_OQ_NUM_ELEMENTS > 255);
BUILD_BUG_ON(PQI_ADMIN_IQ_ELEMENT_LENGTH % BUILD_BUG_ON(PQI_ADMIN_IQ_ELEMENT_LENGTH %