提交 c3b058af 编写于 作者: A Andrew Vasquez 提交者: James Bottomley

[SCSI] qla2xxx: Correct staging of RISC while attempting to pause.

There's no need to reset the RISC prior to pausing.
Signed-off-by: NAndrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
上级 05236a05
...@@ -172,19 +172,16 @@ qla24xx_pause_risc(struct device_reg_24xx __iomem *reg) ...@@ -172,19 +172,16 @@ qla24xx_pause_risc(struct device_reg_24xx __iomem *reg)
int rval = QLA_SUCCESS; int rval = QLA_SUCCESS;
uint32_t cnt; uint32_t cnt;
if ((RD_REG_DWORD(&reg->hccr) & HCCRX_RISC_PAUSE) == 0) { if (RD_REG_DWORD(&reg->hccr) & HCCRX_RISC_PAUSE)
WRT_REG_DWORD(&reg->hccr, HCCRX_SET_RISC_RESET | return rval;
HCCRX_CLR_HOST_INT);
RD_REG_DWORD(&reg->hccr); /* PCI Posting. */ WRT_REG_DWORD(&reg->hccr, HCCRX_SET_RISC_PAUSE);
WRT_REG_DWORD(&reg->hccr, HCCRX_SET_RISC_PAUSE); for (cnt = 30000; (RD_REG_DWORD(&reg->hccr) & HCCRX_RISC_PAUSE) == 0 &&
for (cnt = 30000; rval == QLA_SUCCESS; cnt--) {
(RD_REG_DWORD(&reg->hccr) & HCCRX_RISC_PAUSE) == 0 && if (cnt)
rval == QLA_SUCCESS; cnt--) { udelay(100);
if (cnt) else
udelay(100); rval = QLA_FUNCTION_TIMEOUT;
else
rval = QLA_FUNCTION_TIMEOUT;
}
} }
return rval; return rval;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册