aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorLalit Chandivade <lalit.chandivade@qlogic.com>2010-07-30 04:56:31 -0400
committerJames Bottomley <James.Bottomley@suse.de>2010-08-06 12:58:07 -0400
commit9d4946f89fc050cadf66d08c47379ab62848a5b7 (patch)
treeea7334e1225ba21d1ad35b307e2b8aacbd780de3 /drivers
parentb173a132cbf0a4a48b2f341716e20a6d8b24957e (diff)
[SCSI] qla4xxx: Stop firmware before doing init firmware.
If BIOS is enabled then drivers init firmware fails since BIOS has done the init once. Signed-off-by: Vikas Chaudhary <vikas.chaudhary@qlogic.com> Signed-off-by: Ravi Anand <ravi.anand@qlogic.com> Reviewed-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/scsi/qla4xxx/ql4_init.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/scsi/qla4xxx/ql4_init.c b/drivers/scsi/qla4xxx/ql4_init.c
index b69c5736cb43..39048d9339ac 100644
--- a/drivers/scsi/qla4xxx/ql4_init.c
+++ b/drivers/scsi/qla4xxx/ql4_init.c
@@ -445,6 +445,12 @@ static int qla4xxx_init_firmware(struct scsi_qla_host *ha)
445{ 445{
446 int status = QLA_ERROR; 446 int status = QLA_ERROR;
447 447
448 /* For 82xx, stop firmware before initializing because if BIOS
449 * has previously initialized firmware, then driver's initialize
450 * firmware will fail. */
451 if (is_qla8022(ha))
452 qla4_8xxx_stop_firmware(ha);
453
448 ql4_printk(KERN_INFO, ha, "Initializing firmware..\n"); 454 ql4_printk(KERN_INFO, ha, "Initializing firmware..\n");
449 if (qla4xxx_initialize_fw_cb(ha) == QLA_ERROR) { 455 if (qla4xxx_initialize_fw_cb(ha) == QLA_ERROR) {
450 DEBUG2(printk("scsi%ld: %s: Failed to initialize firmware " 456 DEBUG2(printk("scsi%ld: %s: Failed to initialize firmware "