Commit 07f31805 authored by Andrew Vasquez's avatar Andrew Vasquez Committed by James Bottomley

[SCSI] qla2xxx: Perform a fw-dump when an ISP23xx RISC-paused state is detected.

Signed-off-by: default avatarAndrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: default avatarJames Bottomley <James.Bottomley@SteelEye.com>
parent 0c8c39af
...@@ -134,11 +134,11 @@ qla2300_intr_handler(int irq, void *dev_id) ...@@ -134,11 +134,11 @@ qla2300_intr_handler(int irq, void *dev_id)
if (stat & HSR_RISC_PAUSED) { if (stat & HSR_RISC_PAUSED) {
hccr = RD_REG_WORD(&reg->hccr); hccr = RD_REG_WORD(&reg->hccr);
if (hccr & (BIT_15 | BIT_13 | BIT_11 | BIT_8)) if (hccr & (BIT_15 | BIT_13 | BIT_11 | BIT_8))
qla_printk(KERN_INFO, ha, qla_printk(KERN_INFO, ha, "Parity error -- "
"Parity error -- HCCR=%x.\n", hccr); "HCCR=%x, Dumping firmware!\n", hccr);
else else
qla_printk(KERN_INFO, ha, qla_printk(KERN_INFO, ha, "RISC paused -- "
"RISC paused -- HCCR=%x.\n", hccr); "HCCR=%x, Dumping firmware!\n", hccr);
/* /*
* Issue a "HARD" reset in order for the RISC * Issue a "HARD" reset in order for the RISC
...@@ -147,6 +147,8 @@ qla2300_intr_handler(int irq, void *dev_id) ...@@ -147,6 +147,8 @@ qla2300_intr_handler(int irq, void *dev_id)
*/ */
WRT_REG_WORD(&reg->hccr, HCCR_RESET_RISC); WRT_REG_WORD(&reg->hccr, HCCR_RESET_RISC);
RD_REG_WORD(&reg->hccr); RD_REG_WORD(&reg->hccr);
ha->isp_ops.fw_dump(ha, 1);
set_bit(ISP_ABORT_NEEDED, &ha->dpc_flags); set_bit(ISP_ABORT_NEEDED, &ha->dpc_flags);
break; break;
} else if ((stat & HSR_RISC_INT) == 0) } else if ((stat & HSR_RISC_INT) == 0)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment