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 c948a8ce7232..d4885616cd39 100644 --- a/drivers/scsi/qla2xxx/qla_isr.c +++ b/drivers/scsi/qla2xxx/qla_isr.c | |||
@@ -130,11 +130,11 @@ qla2300_intr_handler(int irq, void *dev_id) | |||
130 | if (stat & HSR_RISC_PAUSED) { | 130 | if (stat & HSR_RISC_PAUSED) { |
131 | hccr = RD_REG_WORD(®->hccr); | 131 | hccr = RD_REG_WORD(®->hccr); |
132 | if (hccr & (BIT_15 | BIT_13 | BIT_11 | BIT_8)) | 132 | if (hccr & (BIT_15 | BIT_13 | BIT_11 | BIT_8)) |
133 | qla_printk(KERN_INFO, ha, | 133 | qla_printk(KERN_INFO, ha, "Parity error -- " |
134 | "Parity error -- HCCR=%x.\n", hccr); | 134 | "HCCR=%x, Dumping firmware!\n", hccr); |
135 | else | 135 | else |
136 | qla_printk(KERN_INFO, ha, | 136 | qla_printk(KERN_INFO, ha, "RISC paused -- " |
137 | "RISC paused -- HCCR=%x.\n", hccr); | 137 | "HCCR=%x, Dumping firmware!\n", hccr); |
138 | 138 | ||
139 | /* | 139 | /* |
140 | * Issue a "HARD" reset in order for the RISC | 140 | * Issue a "HARD" reset in order for the RISC |
@@ -143,6 +143,8 @@ qla2300_intr_handler(int irq, void *dev_id) | |||
143 | */ | 143 | */ |
144 | WRT_REG_WORD(®->hccr, HCCR_RESET_RISC); | 144 | WRT_REG_WORD(®->hccr, HCCR_RESET_RISC); |
145 | RD_REG_WORD(®->hccr); | 145 | RD_REG_WORD(®->hccr); |
146 | |||
147 | ha->isp_ops.fw_dump(ha, 1); | ||
146 | set_bit(ISP_ABORT_NEEDED, &ha->dpc_flags); | 148 | set_bit(ISP_ABORT_NEEDED, &ha->dpc_flags); |
147 | break; | 149 | break; |
148 | } else if ((stat & HSR_RISC_INT) == 0) | 150 | } else if ((stat & HSR_RISC_INT) == 0) |
@@ -467,6 +469,8 @@ qla2x00_async_event(scsi_qla_host_t *ha, uint16_t *mb) | |||
467 | set_bit(RESET_MARKER_NEEDED, &ha->dpc_flags); | 469 | set_bit(RESET_MARKER_NEEDED, &ha->dpc_flags); |
468 | } | 470 | } |
469 | set_bit(REGISTER_FC4_NEEDED, &ha->dpc_flags); | 471 | set_bit(REGISTER_FC4_NEEDED, &ha->dpc_flags); |
472 | |||
473 | ha->flags.gpsc_supported = 1; | ||
470 | break; | 474 | break; |
471 | 475 | ||
472 | case MBA_CHG_IN_CONNECTION: /* Change in connection mode */ | 476 | case MBA_CHG_IN_CONNECTION: /* Change in connection mode */ |
@@ -1444,8 +1448,7 @@ qla24xx_intr_handler(int irq, void *dev_id) | |||
1444 | 1448 | ||
1445 | qla_printk(KERN_INFO, ha, "RISC paused -- HCCR=%x, " | 1449 | qla_printk(KERN_INFO, ha, "RISC paused -- HCCR=%x, " |
1446 | "Dumping firmware!\n", hccr); | 1450 | "Dumping firmware!\n", hccr); |
1447 | qla24xx_fw_dump(ha, 1); | 1451 | ha->isp_ops.fw_dump(ha, 1); |
1448 | |||
1449 | set_bit(ISP_ABORT_NEEDED, &ha->dpc_flags); | 1452 | set_bit(ISP_ABORT_NEEDED, &ha->dpc_flags); |
1450 | break; | 1453 | break; |
1451 | } else if ((stat & HSRX_RISC_INT) == 0) | 1454 | } else if ((stat & HSRX_RISC_INT) == 0) |