Lines Matching refs:scmd

650 	struct scsi_cmnd *scmd = qc->scsicmd;
652 qc->extrabytes = scmd->extra_len;
653 qc->nbytes = scsi_bufflen(scmd) + qc->extrabytes;
1170 struct scsi_cmnd *scmd = qc->scsicmd;
1172 const u8 *cdb = scmd->cmnd;
1176 if (scmd->cmd_len < 5) {
1241 ata_scsi_set_invalid_field(qc->dev, scmd, fp, bp);
1244 scmd->result = SAM_STAT_GOOD;
1385 struct scsi_cmnd *scmd = qc->scsicmd;
1389 const u8 *cdb = scmd->cmnd;
1398 if (scmd->cmd_len < 10) {
1404 if (scmd->cmd_len < 16) {
1486 ata_scsi_set_invalid_field(qc->dev, scmd, fp, 0xff);
1490 ata_scsi_set_sense(qc->dev, scmd, ILLEGAL_REQUEST, 0x21, 0x0);
1495 scmd->result = SAM_STAT_GOOD;
1499 static bool ata_check_nblocks(struct scsi_cmnd *scmd, u32 n_blocks)
1501 struct request *rq = scmd->request;
1507 req_blocks = blk_rq_bytes(rq) / scmd->device->sector_size;
1534 struct scsi_cmnd *scmd = qc->scsicmd;
1535 const u8 *cdb = scmd->cmnd;
1536 struct request *rq = scmd->request;
1551 if (unlikely(scmd->cmd_len < 10)) {
1558 if (!ata_check_nblocks(scmd, n_block))
1563 if (unlikely(scmd->cmd_len < 6)) {
1574 if (!ata_check_nblocks(scmd, n_block))
1579 if (unlikely(scmd->cmd_len < 16)) {
1586 if (!ata_check_nblocks(scmd, n_block))
1607 qc->nbytes = n_block * scmd->device->sector_size;
1619 ata_scsi_set_invalid_field(qc->dev, scmd, fp, 0xff);
1623 ata_scsi_set_sense(qc->dev, scmd, ILLEGAL_REQUEST, 0x21, 0x0);
1628 scmd->result = SAM_STAT_GOOD;
2663 struct scsi_cmnd *scmd = qc->scsicmd;
2665 int nodata = (scmd->sc_data_direction == DMA_NONE);
2670 memcpy(qc->cdb, scmd->cmnd, scmd->cmd_len);
2675 if (scmd->sc_data_direction == DMA_TO_DEVICE) {
2734 (scmd->sc_data_direction != DMA_TO_DEVICE))
2875 struct scsi_cmnd *scmd = qc->scsicmd;
2877 const u8 *cdb = scmd->cmnd;
2896 if (scmd->sc_data_direction != DMA_NONE) {
2995 qc->sect_size = scsi_bufflen(scmd);
3029 qc->sect_size = scmd->device->sector_size;
3043 if (scmd->sc_data_direction == DMA_TO_DEVICE)
3121 ata_scsi_set_invalid_field(dev, scmd, fp, 0xff);
3193 struct scsi_cmnd *scmd = qc->scsicmd;
3194 struct scsi_device *sdp = scmd->device;
3197 const u8 *cdb = scmd->cmnd;
3215 if (unlikely(blk_rq_is_passthrough(scmd->request)))
3218 if (unlikely(scmd->cmd_len < 16)) {
3241 if (!scsi_sg_count(scmd))
3250 size = ata_format_dsm_trim_descr(scmd, trmax, block, n_block);
3281 ata_scsi_set_invalid_field(dev, scmd, fp, bp);
3285 ata_scsi_set_sense(dev, scmd, ILLEGAL_REQUEST, 0x1a, 0x0);
3289 ata_scsi_set_sense(dev, scmd, ILLEGAL_REQUEST, 0x20, 0x0);
3375 struct scsi_cmnd *scmd = qc->scsicmd;
3380 sg_miter_start(&miter, scsi_sglist(scmd), scsi_sg_count(scmd),
3439 struct scsi_cmnd *scmd = qc->scsicmd;
3440 const u8 *cdb = scmd->cmnd;
3446 if (unlikely(scmd->cmd_len < 16)) {
3448 scmd->cmd_len);
3453 if (n_block != scsi_bufflen(scmd)) {
3455 n_block, scsi_bufflen(scmd));
3510 ata_scsi_set_invalid_field(qc->dev, scmd, fp, bp);
3515 ata_scsi_set_sense(qc->dev, scmd, ILLEGAL_REQUEST, 0x1a, 0x0);
3522 struct scsi_cmnd *scmd = qc->scsicmd;
3524 const u8 *cdb = scmd->cmnd;
3530 if (unlikely(scmd->cmd_len < 16)) {
3589 ata_scsi_set_invalid_field(qc->dev, scmd, fp, 0xff);
3593 ata_scsi_set_sense(qc->dev, scmd, ILLEGAL_REQUEST, 0x1a, 0x0);
3721 struct scsi_cmnd *scmd = qc->scsicmd;
3722 const u8 *cdb = scmd->cmnd;
3735 if (scmd->cmd_len < 5) {
3743 if (scmd->cmd_len < 9) {
3760 if (!scsi_sg_count(scmd) || scsi_sglist(scmd)->length < len)
3767 if (!sg_copy_to_buffer(scsi_sglist(scmd), scsi_sg_count(scmd),
3853 ata_scsi_set_invalid_field(qc->dev, scmd, fp, bp);
3857 ata_scsi_set_invalid_parameter(qc->dev, scmd, fp);
3862 ata_scsi_set_sense(qc->dev, scmd, ILLEGAL_REQUEST, 0x1a, 0x0);
3866 scmd->result = SAM_STAT_GOOD;
3882 struct scsi_cmnd *scmd = qc->scsicmd;
3883 const u8 *cdb = scmd->cmnd;
3895 ata_scsi_set_invalid_field(qc->dev, scmd, 1, 0);
3901 ata_scsi_set_invalid_field(qc->dev, scmd, 6, 0);
3906 ata_scsi_set_invalid_field(qc->dev, scmd, 6, 0);
3948 struct scsi_cmnd *scmd = qc->scsicmd;
3949 const u8 *cdb = scmd->cmnd;
4051 int __ata_scsi_queuecmd(struct scsi_cmnd *scmd, struct ata_device *dev)
4054 u8 scsi_op = scmd->cmnd[0];
4066 if (unlikely(!scmd->cmd_len))
4070 if (unlikely(scmd->cmd_len > dev->cdb_len))
4078 if (unlikely(len > scmd->cmd_len ||
4080 scmd->cmd_len > ATAPI_CDB_LEN))
4086 if (unlikely(scmd->cmd_len > 16))
4093 return ata_scsi_translate(dev, scmd, xlat_func);
4095 ata_scsi_simulate(dev, scmd);
4101 scmd->cmd_len, scsi_op, dev->cdb_len);
4102 scmd->result = DID_ERROR << 16;
4103 scmd->scsi_done(scmd);