On Fri, 2019-08-30 at 15:23 -0700, Himanshu Madhani wrote:
> HINT_MBX_INT_PENDING is not guaranteed to be cleared by
> firmware. Remove check that prevent driver load with ISP82XX.
> 
> Signed-off-by: Quinn Tran <qut...@marvell.com>
> Signed-off-by: Himanshu Madhani <hmadh...@marvell.com>
> ---
>  drivers/scsi/qla2xxx/qla_mbx.c | 16 ++--------------
>  drivers/scsi/qla2xxx/qla_nx.c  |  3 ++-
>  2 files changed, 4 insertions(+), 15 deletions(-)
> 
> diff --git a/drivers/scsi/qla2xxx/qla_mbx.c b/drivers/scsi/qla2xxx/qla_mbx.c
> index a82b6db2fa9d..4c858e2d0ea8 100644
> --- a/drivers/scsi/qla2xxx/qla_mbx.c
> +++ b/drivers/scsi/qla2xxx/qla_mbx.c
> @@ -253,21 +253,9 @@ qla2x00_mailbox_command(scsi_qla_host_t *vha, mbx_cmd_t 
> *mcp)
>       if ((!abort_active && io_lock_on) || IS_NOPOLLING_TYPE(ha)) {
>               set_bit(MBX_INTR_WAIT, &ha->mbx_cmd_flags);
>  
> -             if (IS_P3P_TYPE(ha)) {
> -                     if (RD_REG_DWORD(&reg->isp82.hint) &
> -                             HINT_MBX_INT_PENDING) {
> -                             ha->flags.mbox_busy = 0;
> -                             spin_unlock_irqrestore(&ha->hardware_lock,
> -                                     flags);
> -
> -                             atomic_dec(&ha->num_pend_mbx_stage2);
> -                             ql_dbg(ql_dbg_mbx, vha, 0x1010,
> -                                 "Pending mailbox timeout, exiting.\n");
> -                             rval = QLA_FUNCTION_TIMEOUT;
> -                             goto premature_exit;
> -                     }
> +             if (IS_P3P_TYPE(ha))
>                       WRT_REG_DWORD(&reg->isp82.hint, HINT_MBX_INT_PENDING);
> -             } else if (IS_FWI2_CAPABLE(ha))
> +             else if (IS_FWI2_CAPABLE(ha))
>                       WRT_REG_DWORD(&reg->isp24.hccr, HCCRX_SET_HOST_INT);
>               else
>                       WRT_REG_WORD(&reg->isp.hccr, HCCR_SET_HOST_INT);
> diff --git a/drivers/scsi/qla2xxx/qla_nx.c b/drivers/scsi/qla2xxx/qla_nx.c
> index a79f8da38abe..2b2028f2383e 100644
> --- a/drivers/scsi/qla2xxx/qla_nx.c
> +++ b/drivers/scsi/qla2xxx/qla_nx.c
> @@ -2287,7 +2287,8 @@ qla82xx_disable_intrs(struct qla_hw_data *ha)
>  {
>       scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev);
>  
> -     qla82xx_mbx_intr_disable(vha);
> +     if (ha->interrupts_on)
> +             qla82xx_mbx_intr_disable(vha);
>  
>       spin_lock_irq(&ha->hardware_lock);
>       if (IS_QLA8044(ha))

Reviewed-by: Ewan D. Milne <emi...@redhat.com>

Reply via email to