aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/mpt2sas/mpt2sas_base.c
diff options
context:
space:
mode:
authorReddy, Sreekanth <Sreekanth.Reddy@lsi.com>2013-02-26 06:29:59 -0500
committerJames Bottomley <JBottomley@Parallels.com>2013-06-24 15:35:34 -0400
commitb0df96a0068daee4f9c2189c29b9053eb6e46b17 (patch)
tree6e9f6aa9ca2160fa0198b80e06020bfbe9ee85c6 /drivers/scsi/mpt2sas/mpt2sas_base.c
parent49c1241384b599421a5e8c9f73f72e2052dd416d (diff)
[SCSI] mpt2sas: Fix for issue Missing delay not getting set during system bootup
Missing delay is not getting set properly. The reason is that it is not defined in the same file from where it is being invoked. The fix is to move the missing delay module parameter from mpt2sas_base.c to mpt2sas_scsh.c. Signed-off-by: Sreekanth Reddy <Sreekanth.Reddy@lsi.com> Cc: stable@vger.kernel.org Signed-off-by: James Bottomley <JBottomley@Parallels.com>
Diffstat (limited to 'drivers/scsi/mpt2sas/mpt2sas_base.c')
-rw-r--r--drivers/scsi/mpt2sas/mpt2sas_base.c13
1 files changed, 3 insertions, 10 deletions
diff --git a/drivers/scsi/mpt2sas/mpt2sas_base.c b/drivers/scsi/mpt2sas/mpt2sas_base.c
index bcb23d28b3e8..c76b18bbacb8 100644
--- a/drivers/scsi/mpt2sas/mpt2sas_base.c
+++ b/drivers/scsi/mpt2sas/mpt2sas_base.c
@@ -80,10 +80,6 @@ static int msix_disable = -1;
80module_param(msix_disable, int, 0); 80module_param(msix_disable, int, 0);
81MODULE_PARM_DESC(msix_disable, " disable msix routed interrupts (default=0)"); 81MODULE_PARM_DESC(msix_disable, " disable msix routed interrupts (default=0)");
82 82
83static int missing_delay[2] = {-1, -1};
84module_param_array(missing_delay, int, NULL, 0);
85MODULE_PARM_DESC(missing_delay, " device missing delay , io missing delay");
86
87static int mpt2sas_fwfault_debug; 83static int mpt2sas_fwfault_debug;
88MODULE_PARM_DESC(mpt2sas_fwfault_debug, " enable detection of firmware fault " 84MODULE_PARM_DESC(mpt2sas_fwfault_debug, " enable detection of firmware fault "
89 "and halt firmware - (default=0)"); 85 "and halt firmware - (default=0)");
@@ -2199,7 +2195,7 @@ _base_display_ioc_capabilities(struct MPT2SAS_ADAPTER *ioc)
2199} 2195}
2200 2196
2201/** 2197/**
2202 * _base_update_missing_delay - change the missing delay timers 2198 * mpt2sas_base_update_missing_delay - change the missing delay timers
2203 * @ioc: per adapter object 2199 * @ioc: per adapter object
2204 * @device_missing_delay: amount of time till device is reported missing 2200 * @device_missing_delay: amount of time till device is reported missing
2205 * @io_missing_delay: interval IO is returned when there is a missing device 2201 * @io_missing_delay: interval IO is returned when there is a missing device
@@ -2210,8 +2206,8 @@ _base_display_ioc_capabilities(struct MPT2SAS_ADAPTER *ioc)
2210 * delay, as well as the io missing delay. This should be called at driver 2206 * delay, as well as the io missing delay. This should be called at driver
2211 * load time. 2207 * load time.
2212 */ 2208 */
2213static void 2209void
2214_base_update_missing_delay(struct MPT2SAS_ADAPTER *ioc, 2210mpt2sas_base_update_missing_delay(struct MPT2SAS_ADAPTER *ioc,
2215 u16 device_missing_delay, u8 io_missing_delay) 2211 u16 device_missing_delay, u8 io_missing_delay)
2216{ 2212{
2217 u16 dmd, dmd_new, dmd_orignal; 2213 u16 dmd, dmd_new, dmd_orignal;
@@ -4407,9 +4403,6 @@ mpt2sas_base_attach(struct MPT2SAS_ADAPTER *ioc)
4407 if (r) 4403 if (r)
4408 goto out_free_resources; 4404 goto out_free_resources;
4409 4405
4410 if (missing_delay[0] != -1 && missing_delay[1] != -1)
4411 _base_update_missing_delay(ioc, missing_delay[0],
4412 missing_delay[1]);
4413 ioc->non_operational_loop = 0; 4406 ioc->non_operational_loop = 0;
4414 4407
4415 return 0; 4408 return 0;