Lines Matching refs:srb
226 static inline void mts_show_command(struct scsi_cmnd *srb) in mts_show_command() argument
230 switch (srb->cmnd[0]) { in mts_show_command()
300 MTS_DEBUG( "Command %s (%d bytes)\n", what, srb->cmd_len); in mts_show_command()
303 MTS_DEBUG( " %10ph\n", srb->cmnd); in mts_show_command()
331 static int mts_scsi_abort(struct scsi_cmnd *srb) in mts_scsi_abort() argument
333 struct mts_desc* desc = (struct mts_desc*)(srb->device->host->hostdata[0]); in mts_scsi_abort()
342 static int mts_scsi_host_reset(struct scsi_cmnd *srb) in mts_scsi_host_reset() argument
344 struct mts_desc* desc = (struct mts_desc*)(srb->device->host->hostdata[0]); in mts_scsi_host_reset()
359 mts_scsi_queuecommand(struct Scsi_Host *shost, struct scsi_cmnd *srb);
390 set_host_byte(context->srb, DID_ERROR); in mts_int_submit_urb()
402 context->final_callback(context->srb); in mts_transfer_cleanup()
409 context->srb->result &= MTS_SCSI_ERR_MASK; in mts_transfer_done()
410 context->srb->result |= (unsigned)(*context->scsi_status)<<1; in mts_transfer_done()
436 scsi_set_resid(context->srb, context->data_length - in mts_data_done()
439 set_host_byte(context->srb, (status == -ENOENT ? DID_ABORT : DID_ERROR)); in mts_data_done()
456 set_host_byte(context->srb, DID_ABORT); in mts_command_done()
461 set_host_byte(context->srb, DID_ERROR); in mts_command_done()
468 if (context->srb->cmnd[0] == REQUEST_SENSE) { in mts_command_done()
471 context->srb->sense_buffer, in mts_command_done()
479 scsi_sg_count(context->srb) > 1 ? in mts_command_done()
493 scsi_sg_count(context->srb)); in mts_do_sg()
496 set_host_byte(context->srb, (status == -ENOENT ? DID_ABORT : DID_ERROR)); in mts_do_sg()
522 mts_build_transfer_context(struct scsi_cmnd *srb, struct mts_desc* desc) in mts_build_transfer_context() argument
529 desc->context.srb = srb; in mts_build_transfer_context()
531 if (!scsi_bufflen(srb)) { in mts_build_transfer_context()
536 desc->context.curr_sg = scsi_sglist(srb); in mts_build_transfer_context()
546 if ( !memcmp( srb->cmnd, mts_read_image_sig, mts_read_image_sig_len ) in mts_build_transfer_context()
550 } else if ( MTS_DIRECTION_IS_IN(srb->cmnd[0]) ) { in mts_build_transfer_context()
562 static int mts_scsi_queuecommand_lck(struct scsi_cmnd *srb) in mts_scsi_queuecommand_lck() argument
565 struct mts_desc* desc = (struct mts_desc*)(srb->device->host->hostdata[0]); in mts_scsi_queuecommand_lck()
569 mts_show_command(srb); in mts_scsi_queuecommand_lck()
572 if ( srb->device->lun || srb->device->id || srb->device->channel ) { in mts_scsi_queuecommand_lck()
574 …d to LUN=%d ID=%d CHANNEL=%d from SCSI layer\n",(int)srb->device->lun,(int)srb->device->id, (int)s… in mts_scsi_queuecommand_lck()
578 set_host_byte(srb, DID_BAD_TARGET); in mts_scsi_queuecommand_lck()
581 callback(srb); in mts_scsi_queuecommand_lck()
590 srb->cmnd, in mts_scsi_queuecommand_lck()
591 srb->cmd_len, in mts_scsi_queuecommand_lck()
597 mts_build_transfer_context( srb, desc ); in mts_scsi_queuecommand_lck()
605 set_host_byte(srb, DID_ERROR); in mts_scsi_queuecommand_lck()
608 callback(srb); in mts_scsi_queuecommand_lck()