Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 767157c5 authored by Armen Baloyan's avatar Armen Baloyan Committed by James Bottomley
Browse files

[SCSI] qla2xxx: Add logic to abort BSG commands for ISPFX00.

parent 02a9ae6e
Loading
Loading
Loading
Loading
+10 −1
Original line number Diff line number Diff line
@@ -1883,6 +1883,7 @@ qlafx00_fx_disc(scsi_qla_host_t *vha, fc_port_t *fcport, uint16_t fx_type)
			goto done_free_sp;
		}
		break;
	case FXDISC_ABORT_IOCTL:
	default:
		break;
	}
@@ -2011,7 +2012,11 @@ qlafx00_fx_disc(scsi_qla_host_t *vha, fc_port_t *fcport, uint16_t fx_type)
		ql_dump_buffer(ql_dbg_init + ql_dbg_buffer, vha, 0x0146,
		    (uint8_t *)pinfo, 16);
		memcpy(vha->hw->gid_list, pinfo, QLAFX00_TGT_NODE_LIST_SIZE);
	}
	} else if (fx_type == FXDISC_ABORT_IOCTL)
		fdisc->u.fxiocb.result =
		    (fdisc->u.fxiocb.result == cpu_to_le32(0x68)) ?
		    cpu_to_le32(QLA_SUCCESS) : cpu_to_le32(QLA_FUNCTION_FAILED);

	rval = le32_to_cpu(fdisc->u.fxiocb.result);

done_unmap_dma:
@@ -2110,6 +2115,10 @@ qlafx00_abort_command(srb_t *sp)
		/* Command not found. */
		return QLA_FUNCTION_FAILED;
	}
	if (sp->type == SRB_FXIOCB_DCMD)
		return qlafx00_fx_disc(vha, &vha->hw->mr.fcport,
		    FXDISC_ABORT_IOCTL);

	return qlafx00_async_abt_cmd(sp);
}

+1 −0
Original line number Diff line number Diff line
@@ -343,6 +343,7 @@ struct config_info_data {
#define FXDISC_GET_TGT_NODE_INFO	0x80
#define FXDISC_GET_TGT_NODE_LIST	0x81
#define FXDISC_REG_HOST_INFO		0x99
#define FXDISC_ABORT_IOCTL		0xff

#define QLAFX00_HBA_ICNTRL_REG		0x20B08
#define QLAFX00_ICR_ENB_MASK            0x80000000