Lines Matching refs:scmd

706 	struct scsi_cmnd *scmd = qc->scsicmd;
708 qc->extrabytes = scmd->extra_len;
709 qc->nbytes = scsi_bufflen(scmd) + qc->extrabytes;
1018 struct scsi_cmnd *scmd = blk_mq_rq_to_pdu(rq);
1020 return atapi_cmd_type(scmd->cmnd[0]) == ATAPI_MISC;
1210 struct scsi_cmnd *scmd = qc->scsicmd;
1212 const u8 *cdb = scmd->cmnd;
1216 if (scmd->cmd_len < 5) {
1281 ata_scsi_set_invalid_field(qc->dev, scmd, fp, bp);
1284 scmd->result = SAM_STAT_GOOD;
1403 struct scsi_cmnd *scmd = qc->scsicmd;
1407 const u8 *cdb = scmd->cmnd;
1417 if (scmd->cmd_len < 10) {
1424 if (scmd->cmd_len < 16) {
1504 ata_scsi_set_invalid_field(qc->dev, scmd, fp, 0xff);
1508 ata_scsi_set_sense(qc->dev, scmd, ILLEGAL_REQUEST, 0x21, 0x0);
1513 scmd->result = SAM_STAT_GOOD;
1517 static bool ata_check_nblocks(struct scsi_cmnd *scmd, u32 n_blocks)
1519 struct request *rq = scsi_cmd_to_rq(scmd);
1525 req_blocks = blk_rq_bytes(rq) / scmd->device->sector_size;
1552 struct scsi_cmnd *scmd = qc->scsicmd;
1553 const u8 *cdb = scmd->cmnd;
1554 struct request *rq = scsi_cmd_to_rq(scmd);
1575 if (unlikely(scmd->cmd_len < 10)) {
1582 if (!ata_check_nblocks(scmd, n_block))
1587 if (unlikely(scmd->cmd_len < 6)) {
1598 if (!ata_check_nblocks(scmd, n_block))
1603 if (unlikely(scmd->cmd_len < 16)) {
1611 if (!ata_check_nblocks(scmd, n_block))
1631 qc->nbytes = n_block * scmd->device->sector_size;
1641 ata_scsi_set_invalid_field(qc->dev, scmd, fp, 0xff);
1645 ata_scsi_set_sense(qc->dev, scmd, ILLEGAL_REQUEST, 0x21, 0x0);
1650 scmd->result = SAM_STAT_GOOD;
2674 struct scsi_cmnd *scmd = qc->scsicmd;
2676 int nodata = (scmd->sc_data_direction == DMA_NONE);
2681 memcpy(qc->cdb, scmd->cmnd, scmd->cmd_len);
2686 if (scmd->sc_data_direction == DMA_TO_DEVICE) {
2744 (scmd->sc_data_direction != DMA_TO_DEVICE))
2885 struct scsi_cmnd *scmd = qc->scsicmd;
2887 const u8 *cdb = scmd->cmnd;
2906 if (scmd->sc_data_direction != DMA_NONE) {
3009 qc->sect_size = scsi_bufflen(scmd);
3043 qc->sect_size = scmd->device->sector_size;
3057 if (scmd->sc_data_direction == DMA_TO_DEVICE)
3135 ata_scsi_set_invalid_field(dev, scmd, fp, 0xff);
3207 struct scsi_cmnd *scmd = qc->scsicmd;
3208 struct scsi_device *sdp = scmd->device;
3211 const u8 *cdb = scmd->cmnd;
3229 if (unlikely(blk_rq_is_passthrough(scsi_cmd_to_rq(scmd))))
3232 if (unlikely(scmd->cmd_len < 16)) {
3255 if (!scsi_sg_count(scmd))
3264 size = ata_format_dsm_trim_descr(scmd, trmax, block, n_block);
3295 ata_scsi_set_invalid_field(dev, scmd, fp, bp);
3299 ata_scsi_set_sense(dev, scmd, ILLEGAL_REQUEST, 0x1a, 0x0);
3303 ata_scsi_set_sense(dev, scmd, ILLEGAL_REQUEST, 0x20, 0x0);
3412 struct scsi_cmnd *scmd = qc->scsicmd;
3417 sg_miter_start(&miter, scsi_sglist(scmd), scsi_sg_count(scmd),
3476 struct scsi_cmnd *scmd = qc->scsicmd;
3477 const u8 *cdb = scmd->cmnd;
3483 if (unlikely(scmd->cmd_len < 16)) {
3485 scmd->cmd_len);
3490 if (n_block != scsi_bufflen(scmd)) {
3492 n_block, scsi_bufflen(scmd));
3547 ata_scsi_set_invalid_field(qc->dev, scmd, fp, bp);
3552 ata_scsi_set_sense(qc->dev, scmd, ILLEGAL_REQUEST, 0x1a, 0x0);
3559 struct scsi_cmnd *scmd = qc->scsicmd;
3561 const u8 *cdb = scmd->cmnd;
3567 if (unlikely(scmd->cmd_len < 16)) {
3626 ata_scsi_set_invalid_field(qc->dev, scmd, fp, 0xff);
3630 ata_scsi_set_sense(qc->dev, scmd, ILLEGAL_REQUEST, 0x1a, 0x0);
3821 struct scsi_cmnd *scmd = qc->scsicmd;
3822 const u8 *cdb = scmd->cmnd;
3833 if (scmd->cmd_len < 5) {
3841 if (scmd->cmd_len < 9) {
3858 if (!scsi_sg_count(scmd) || scsi_sglist(scmd)->length < len)
3865 if (!sg_copy_to_buffer(scsi_sglist(scmd), scsi_sg_count(scmd),
3969 ata_scsi_set_invalid_field(qc->dev, scmd, fp, bp);
3973 ata_scsi_set_invalid_parameter(qc->dev, scmd, fp);
3978 ata_scsi_set_sense(qc->dev, scmd, ILLEGAL_REQUEST, 0x1a, 0x0);
3982 scmd->result = SAM_STAT_GOOD;
3998 struct scsi_cmnd *scmd = qc->scsicmd;
3999 const u8 *cdb = scmd->cmnd;
4011 ata_scsi_set_invalid_field(qc->dev, scmd, 1, 0);
4017 ata_scsi_set_invalid_field(qc->dev, scmd, 6, 0);
4022 ata_scsi_set_invalid_field(qc->dev, scmd, 6, 0);
4064 struct scsi_cmnd *scmd = qc->scsicmd;
4065 const u8 *cdb = scmd->cmnd;
4146 int __ata_scsi_queuecmd(struct scsi_cmnd *scmd, struct ata_device *dev)
4149 u8 scsi_op = scmd->cmnd[0];
4161 if (unlikely(!scmd->cmd_len))
4165 if (unlikely(scmd->cmd_len > dev->cdb_len))
4173 if (unlikely(len > scmd->cmd_len ||
4175 scmd->cmd_len > ATAPI_CDB_LEN))
4181 if (unlikely(scmd->cmd_len > 16))
4188 return ata_scsi_translate(dev, scmd, xlat_func);
4190 ata_scsi_simulate(dev, scmd);
4195 scmd->result = DID_ERROR << 16;
4196 scsi_done(scmd);