aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'drivers')
-rw-r--r--drivers/scsi/qla2xxx/qla_init.c15
1 files changed, 1 insertions, 14 deletions
diff --git a/drivers/scsi/qla2xxx/qla_init.c b/drivers/scsi/qla2xxx/qla_init.c
index 1cf27fe92f4b..1289a18e7ad2 100644
--- a/drivers/scsi/qla2xxx/qla_init.c
+++ b/drivers/scsi/qla2xxx/qla_init.c
@@ -411,7 +411,6 @@ qla2x00_reset_chip(scsi_qla_host_t *ha)
411 unsigned long flags = 0; 411 unsigned long flags = 0;
412 struct device_reg_2xxx __iomem *reg = &ha->iobase->isp; 412 struct device_reg_2xxx __iomem *reg = &ha->iobase->isp;
413 uint32_t cnt; 413 uint32_t cnt;
414 unsigned long mbx_flags = 0;
415 uint16_t cmd; 414 uint16_t cmd;
416 415
417 ha->isp_ops.disable_intrs(ha); 416 ha->isp_ops.disable_intrs(ha);
@@ -519,20 +518,8 @@ qla2x00_reset_chip(scsi_qla_host_t *ha)
519 518
520 if (IS_QLA2100(ha) || IS_QLA2200(ha) || IS_QLA2300(ha)) { 519 if (IS_QLA2100(ha) || IS_QLA2200(ha) || IS_QLA2300(ha)) {
521 for (cnt = 0; cnt < 30000; cnt++) { 520 for (cnt = 0; cnt < 30000; cnt++) {
522 if (!(test_bit(ABORT_ISP_ACTIVE, &ha->dpc_flags))) 521 if (RD_MAILBOX_REG(ha, reg, 0) != MBS_BUSY)
523 spin_lock_irqsave(&ha->mbx_reg_lock, mbx_flags);
524
525 if (RD_MAILBOX_REG(ha, reg, 0) != MBS_BUSY) {
526 if (!(test_bit(ABORT_ISP_ACTIVE,
527 &ha->dpc_flags)))
528 spin_unlock_irqrestore(
529 &ha->mbx_reg_lock, mbx_flags);
530 break; 522 break;
531 }
532
533 if (!(test_bit(ABORT_ISP_ACTIVE, &ha->dpc_flags)))
534 spin_unlock_irqrestore(&ha->mbx_reg_lock,
535 mbx_flags);
536 523
537 udelay(100); 524 udelay(100);
538 } 525 }