aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKashyap, Desai <kashyap.desai@lsi.com>2010-06-17 05:09:25 -0400
committerJames Bottomley <James.Bottomley@suse.de>2010-07-27 13:02:28 -0400
commitaca794ddd688f1bbb7551f569b0620255c052d80 (patch)
tree4d840152a8958ecd585b896cc59b99a2bb7c4bf0
parent4d0695664ed8e168f97cce86289d0c5fab35b067 (diff)
[SCSI] mptfusion: Corrected declaration of device_missing_delay
device missing delay is 8 bit value in io unit pg1. Making correct variable declaration for device_missing_delay. The driver is storing the calculated device missing delay in IOC structure as a u8 instead of a u16. It needs to be a u16 if the delay is > 255. Signed-off-by: Kashyap Desai <kashyap.desai@lsi.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
-rw-r--r--drivers/message/fusion/mptbase.h2
-rw-r--r--drivers/message/fusion/mptsas.c4
2 files changed, 3 insertions, 3 deletions
diff --git a/drivers/message/fusion/mptbase.h b/drivers/message/fusion/mptbase.h
index b613eb3d4706..453bcb7d6b5e 100644
--- a/drivers/message/fusion/mptbase.h
+++ b/drivers/message/fusion/mptbase.h
@@ -601,7 +601,7 @@ typedef struct _MPT_ADAPTER
601 u16 nvdata_version_default; 601 u16 nvdata_version_default;
602 int debug_level; 602 int debug_level;
603 u8 io_missing_delay; 603 u8 io_missing_delay;
604 u8 device_missing_delay; 604 u16 device_missing_delay;
605 SYSIF_REGS __iomem *chip; /* == c8817000 (mmap) */ 605 SYSIF_REGS __iomem *chip; /* == c8817000 (mmap) */
606 SYSIF_REGS __iomem *pio_chip; /* Programmed IO (downloadboot) */ 606 SYSIF_REGS __iomem *pio_chip; /* Programmed IO (downloadboot) */
607 u8 bus_type; 607 u8 bus_type;
diff --git a/drivers/message/fusion/mptsas.c b/drivers/message/fusion/mptsas.c
index ac000e83db0e..1caf03ea8557 100644
--- a/drivers/message/fusion/mptsas.c
+++ b/drivers/message/fusion/mptsas.c
@@ -2364,7 +2364,7 @@ mptsas_sas_io_unit_pg1(MPT_ADAPTER *ioc)
2364 SasIOUnitPage1_t *buffer; 2364 SasIOUnitPage1_t *buffer;
2365 dma_addr_t dma_handle; 2365 dma_addr_t dma_handle;
2366 int error; 2366 int error;
2367 u16 device_missing_delay; 2367 u8 device_missing_delay;
2368 2368
2369 memset(&hdr, 0, sizeof(ConfigExtendedPageHeader_t)); 2369 memset(&hdr, 0, sizeof(ConfigExtendedPageHeader_t));
2370 memset(&cfg, 0, sizeof(CONFIGPARMS)); 2370 memset(&cfg, 0, sizeof(CONFIGPARMS));
@@ -2401,7 +2401,7 @@ mptsas_sas_io_unit_pg1(MPT_ADAPTER *ioc)
2401 2401
2402 ioc->io_missing_delay = 2402 ioc->io_missing_delay =
2403 le16_to_cpu(buffer->IODeviceMissingDelay); 2403 le16_to_cpu(buffer->IODeviceMissingDelay);
2404 device_missing_delay = le16_to_cpu(buffer->ReportDeviceMissingDelay); 2404 device_missing_delay = buffer->ReportDeviceMissingDelay;
2405 ioc->device_missing_delay = (device_missing_delay & MPI_SAS_IOUNIT1_REPORT_MISSING_UNIT_16) ? 2405 ioc->device_missing_delay = (device_missing_delay & MPI_SAS_IOUNIT1_REPORT_MISSING_UNIT_16) ?
2406 (device_missing_delay & MPI_SAS_IOUNIT1_REPORT_MISSING_TIMEOUT_MASK) * 16 : 2406 (device_missing_delay & MPI_SAS_IOUNIT1_REPORT_MISSING_TIMEOUT_MASK) * 16 :
2407 device_missing_delay & MPI_SAS_IOUNIT1_REPORT_MISSING_TIMEOUT_MASK; 2407 device_missing_delay & MPI_SAS_IOUNIT1_REPORT_MISSING_TIMEOUT_MASK;