From: Joe Carnuccio Date: Tue, 4 Aug 2015 17:37:54 +0000 (-0400) Subject: qla2xxx: Pause risc before manipulating risc semaphore. X-Git-Tag: v4.1.12-92~259^2~3^2~10 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=cdc6e4a7f816571cd163c19c856020c90ef082bb;p=users%2Fjedix%2Flinux-maple.git qla2xxx: Pause risc before manipulating risc semaphore. Orabug: 21946579 Signed-off-by: Joe Carnuccio Signed-off-by: Himanshu Madhani Signed-off-by: James Bottomley Signed-off-by: Dan Duval --- diff --git a/drivers/scsi/qla2xxx/qla_init.c b/drivers/scsi/qla2xxx/qla_init.c index f731d4cde28c8..ffd3da7852a23 100644 --- a/drivers/scsi/qla2xxx/qla_init.c +++ b/drivers/scsi/qla2xxx/qla_init.c @@ -1282,6 +1282,9 @@ qla25xx_manipulate_risc_semaphore(scsi_qla_host_t *vha) vha->hw->pdev->subsystem_device != 0x0240) return; + WRT_REG_DWORD(&vha->hw->iobase->isp24.hccr, HCCRX_SET_RISC_PAUSE); + udelay(100); + attempt: timeout_msec = TIMEOUT_SEMAPHORE; n = timeout_msec / delta_msec;