Lines Matching refs:scmd
183 * @scmd: SCSI command from the mid-layer
189 static int mvumi_make_sgl(struct mvumi_hba *mhba, struct scsi_cmnd *scmd,
195 unsigned int sgnum = scsi_sg_count(scmd);
198 *sg_count = dma_map_sg(&mhba->pdev->dev, scsi_sglist(scmd), sgnum,
199 scmd->sc_data_direction);
204 dma_unmap_sg(&mhba->pdev->dev, scsi_sglist(scmd), sgnum,
205 scmd->sc_data_direction);
208 scsi_for_each_sg(scmd, sg, *sg_count, i) {
338 cmd->scmd = NULL;
698 static int mvumi_host_reset(struct scsi_cmnd *scmd)
702 mhba = (struct mvumi_hba *) scmd->device->host->hostdata;
704 scmd_printk(KERN_NOTICE, scmd, "RESET -%u cmd=%x retries=%x\n",
705 scsi_cmd_to_rq(scmd)->tag, scmd->cmnd[0], scmd->retries);
788 cmd->scmd = NULL;
1303 struct scsi_cmnd *scmd = cmd->scmd;
1305 mvumi_priv(cmd->scmd)->cmd_priv = NULL;
1306 scmd->result = ob_frame->req_status;
1310 scmd->result |= DID_OK << 16;
1313 scmd->result |= DID_BUS_BUSY << 16;
1316 scmd->result |= (DID_OK << 16);
1318 memcpy(cmd->scmd->sense_buffer, ob_frame->payload,
1323 scmd->result |= (DID_ABORT << 16);
1327 if (scsi_bufflen(scmd))
1328 dma_unmap_sg(&mhba->pdev->dev, scsi_sglist(scmd),
1329 scsi_sg_count(scmd),
1330 scmd->sc_data_direction);
1331 scsi_done(scmd);
1428 cmd->scmd = NULL;
1707 cmd->scmd = NULL;
1782 if (cmd->scmd)
2019 * @scmd: SCSI command
2026 struct scsi_cmnd *scmd, struct mvumi_cmd *cmd)
2030 cmd->scmd = scmd;
2033 pframe->device_id = ((unsigned short) scmd->device->id) |
2034 (((unsigned short) scmd->device->lun) << 8);
2037 switch (scmd->sc_data_direction) {
2050 "cmd[0x%x]\n", scmd->sc_data_direction, scmd->cmnd[0]);
2054 pframe->cdb_length = scmd->cmd_len;
2055 memcpy(pframe->cdb, scmd->cmnd, pframe->cdb_length);
2057 if (scsi_bufflen(scmd)) {
2058 if (mvumi_make_sgl(mhba, scmd, &pframe->payload[0],
2062 pframe->data_transfer_length = scsi_bufflen(scmd);
2070 scsi_build_sense(scmd, 0, ILLEGAL_REQUEST, 0x24, 0);
2077 * @scmd: SCSI command to be queued
2080 struct scsi_cmnd *scmd)
2089 scmd->result = 0;
2096 if (unlikely(mvumi_build_frame(mhba, scmd, cmd)))
2099 cmd->scmd = scmd;
2100 mvumi_priv(scmd)->cmd_priv = cmd;
2107 scsi_done(scmd);
2112 static enum scsi_timeout_action mvumi_timed_out(struct scsi_cmnd *scmd)
2114 struct mvumi_cmd *cmd = mvumi_priv(scmd)->cmd_priv;
2115 struct Scsi_Host *host = scmd->device->host;
2130 scmd->result = (DID_ABORT << 16);
2131 mvumi_priv(scmd)->cmd_priv = NULL;
2132 if (scsi_bufflen(scmd)) {
2133 dma_unmap_sg(&mhba->pdev->dev, scsi_sglist(scmd),
2134 scsi_sg_count(scmd),
2135 scmd->sc_data_direction);