diff options
Diffstat (limited to 'drivers/scsi/qla2xxx/qla_isr.c')
-rw-r--r-- | drivers/scsi/qla2xxx/qla_isr.c | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/drivers/scsi/qla2xxx/qla_isr.c b/drivers/scsi/qla2xxx/qla_isr.c index d3b6df4d55c8..39fd17b05be5 100644 --- a/drivers/scsi/qla2xxx/qla_isr.c +++ b/drivers/scsi/qla2xxx/qla_isr.c | |||
@@ -134,11 +134,11 @@ qla2300_intr_handler(int irq, void *dev_id) | |||
134 | if (stat & HSR_RISC_PAUSED) { | 134 | if (stat & HSR_RISC_PAUSED) { |
135 | hccr = RD_REG_WORD(®->hccr); | 135 | hccr = RD_REG_WORD(®->hccr); |
136 | if (hccr & (BIT_15 | BIT_13 | BIT_11 | BIT_8)) | 136 | if (hccr & (BIT_15 | BIT_13 | BIT_11 | BIT_8)) |
137 | qla_printk(KERN_INFO, ha, | 137 | qla_printk(KERN_INFO, ha, "Parity error -- " |
138 | "Parity error -- HCCR=%x.\n", hccr); | 138 | "HCCR=%x, Dumping firmware!\n", hccr); |
139 | else | 139 | else |
140 | qla_printk(KERN_INFO, ha, | 140 | qla_printk(KERN_INFO, ha, "RISC paused -- " |
141 | "RISC paused -- HCCR=%x.\n", hccr); | 141 | "HCCR=%x, Dumping firmware!\n", hccr); |
142 | 142 | ||
143 | /* | 143 | /* |
144 | * Issue a "HARD" reset in order for the RISC | 144 | * Issue a "HARD" reset in order for the RISC |
@@ -147,6 +147,8 @@ qla2300_intr_handler(int irq, void *dev_id) | |||
147 | */ | 147 | */ |
148 | WRT_REG_WORD(®->hccr, HCCR_RESET_RISC); | 148 | WRT_REG_WORD(®->hccr, HCCR_RESET_RISC); |
149 | RD_REG_WORD(®->hccr); | 149 | RD_REG_WORD(®->hccr); |
150 | |||
151 | ha->isp_ops.fw_dump(ha, 1); | ||
150 | set_bit(ISP_ABORT_NEEDED, &ha->dpc_flags); | 152 | set_bit(ISP_ABORT_NEEDED, &ha->dpc_flags); |
151 | break; | 153 | break; |
152 | } else if ((stat & HSR_RISC_INT) == 0) | 154 | } else if ((stat & HSR_RISC_INT) == 0) |
@@ -475,6 +477,8 @@ qla2x00_async_event(scsi_qla_host_t *ha, uint16_t *mb) | |||
475 | set_bit(RESET_MARKER_NEEDED, &ha->dpc_flags); | 477 | set_bit(RESET_MARKER_NEEDED, &ha->dpc_flags); |
476 | } | 478 | } |
477 | set_bit(REGISTER_FC4_NEEDED, &ha->dpc_flags); | 479 | set_bit(REGISTER_FC4_NEEDED, &ha->dpc_flags); |
480 | |||
481 | ha->flags.gpsc_supported = 1; | ||
478 | break; | 482 | break; |
479 | 483 | ||
480 | case MBA_CHG_IN_CONNECTION: /* Change in connection mode */ | 484 | case MBA_CHG_IN_CONNECTION: /* Change in connection mode */ |
@@ -1440,8 +1444,7 @@ qla24xx_intr_handler(int irq, void *dev_id) | |||
1440 | 1444 | ||
1441 | qla_printk(KERN_INFO, ha, "RISC paused -- HCCR=%x, " | 1445 | qla_printk(KERN_INFO, ha, "RISC paused -- HCCR=%x, " |
1442 | "Dumping firmware!\n", hccr); | 1446 | "Dumping firmware!\n", hccr); |
1443 | qla24xx_fw_dump(ha, 1); | 1447 | ha->isp_ops.fw_dump(ha, 1); |
1444 | |||
1445 | set_bit(ISP_ABORT_NEEDED, &ha->dpc_flags); | 1448 | set_bit(ISP_ABORT_NEEDED, &ha->dpc_flags); |
1446 | break; | 1449 | break; |
1447 | } else if ((stat & HSRX_RISC_INT) == 0) | 1450 | } else if ((stat & HSRX_RISC_INT) == 0) |