aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/scsi/aacraid/aachba.c5
-rw-r--r--drivers/scsi/aacraid/aacraid.h3
2 files changed, 8 insertions, 0 deletions
diff --git a/drivers/scsi/aacraid/aachba.c b/drivers/scsi/aacraid/aachba.c
index 09027e9edfd5..9b3dd6ef6a0b 100644
--- a/drivers/scsi/aacraid/aachba.c
+++ b/drivers/scsi/aacraid/aachba.c
@@ -462,6 +462,11 @@ int aac_get_containers(struct aac_dev *dev)
462 if (status >= 0) { 462 if (status >= 0) {
463 dresp = (struct aac_get_container_count_resp *)fib_data(fibptr); 463 dresp = (struct aac_get_container_count_resp *)fib_data(fibptr);
464 maximum_num_containers = le32_to_cpu(dresp->ContainerSwitchEntries); 464 maximum_num_containers = le32_to_cpu(dresp->ContainerSwitchEntries);
465 if (fibptr->dev->supplement_adapter_info.SupportedOptions2 &
466 AAC_OPTION_SUPPORTED_240_VOLUMES) {
467 maximum_num_containers =
468 le32_to_cpu(dresp->MaxSimpleVolumes);
469 }
465 aac_fib_complete(fibptr); 470 aac_fib_complete(fibptr);
466 } 471 }
467 /* FIB should be freed only after getting the response from the F/W */ 472 /* FIB should be freed only after getting the response from the F/W */
diff --git a/drivers/scsi/aacraid/aacraid.h b/drivers/scsi/aacraid/aacraid.h
index 015c341f26f9..bf14ae02ca77 100644
--- a/drivers/scsi/aacraid/aacraid.h
+++ b/drivers/scsi/aacraid/aacraid.h
@@ -1016,6 +1016,8 @@ struct aac_supplement_adapter_info
1016#define AAC_OPTION_DOORBELL_RESET cpu_to_le32(0x00004000) 1016#define AAC_OPTION_DOORBELL_RESET cpu_to_le32(0x00004000)
1017/* 4KB sector size */ 1017/* 4KB sector size */
1018#define AAC_OPTION_VARIABLE_BLOCK_SIZE cpu_to_le32(0x00040000) 1018#define AAC_OPTION_VARIABLE_BLOCK_SIZE cpu_to_le32(0x00040000)
1019/* 240 simple volume support */
1020#define AAC_OPTION_SUPPORTED_240_VOLUMES cpu_to_le32(0x10000000)
1019#define AAC_SIS_VERSION_V3 3 1021#define AAC_SIS_VERSION_V3 3
1020#define AAC_SIS_SLOT_UNKNOWN 0xFF 1022#define AAC_SIS_SLOT_UNKNOWN 0xFF
1021 1023
@@ -1751,6 +1753,7 @@ struct aac_get_container_count_resp {
1751 __le32 MaxContainers; 1753 __le32 MaxContainers;
1752 __le32 ContainerSwitchEntries; 1754 __le32 ContainerSwitchEntries;
1753 __le32 MaxPartitions; 1755 __le32 MaxPartitions;
1756 __le32 MaxSimpleVolumes;
1754}; 1757};
1755 1758
1756 1759