Lines Matching refs:srb
64 static int sddr09_transport(struct scsi_cmnd *srb, struct us_data *us);
823 usb_stor_access_xfer_buf(buffer, len, us->srb, in sddr09_read_data()
1035 usb_stor_access_xfer_buf(buffer, len, us->srb, in sddr09_write_data()
1499 static int dpcm_transport(struct scsi_cmnd *srb, struct us_data *us) in dpcm_transport() argument
1503 usb_stor_dbg(us, "LUN=%d\n", (u8)srb->device->lun); in dpcm_transport()
1505 switch (srb->device->lun) { in dpcm_transport()
1511 ret = usb_stor_CB_transport(srb, us); in dpcm_transport()
1523 srb->device->lun = 0; in dpcm_transport()
1524 ret = sddr09_transport(srb, us); in dpcm_transport()
1525 srb->device->lun = 1; in dpcm_transport()
1529 usb_stor_dbg(us, "Invalid LUN %d\n", (u8)srb->device->lun); in dpcm_transport()
1540 static int sddr09_transport(struct scsi_cmnd *srb, struct us_data *us) in sddr09_transport() argument
1564 if (srb->cmnd[0] == REQUEST_SENSE && havefakesense) { in sddr09_transport()
1571 usb_stor_set_xfer_buf(ptr, 18, srb); in sddr09_transport()
1581 if (srb->cmnd[0] == INQUIRY) { in sddr09_transport()
1587 if (srb->cmnd[0] == READ_CAPACITY) { in sddr09_transport()
1623 usb_stor_set_xfer_buf(ptr, 8, srb); in sddr09_transport()
1628 if (srb->cmnd[0] == MODE_SENSE_10) { in sddr09_transport()
1629 int modepage = (srb->cmnd[2] & 0x3F); in sddr09_transport()
1641 usb_stor_set_xfer_buf(ptr, sizeof(mode_page_01), srb); in sddr09_transport()
1650 if (srb->cmnd[0] == ALLOW_MEDIUM_REMOVAL) in sddr09_transport()
1655 if (srb->cmnd[0] == READ_10) { in sddr09_transport()
1657 page = short_pack(srb->cmnd[3], srb->cmnd[2]); in sddr09_transport()
1659 page |= short_pack(srb->cmnd[5], srb->cmnd[4]); in sddr09_transport()
1660 pages = short_pack(srb->cmnd[8], srb->cmnd[7]); in sddr09_transport()
1670 if (srb->cmnd[0] == WRITE_10) { in sddr09_transport()
1672 page = short_pack(srb->cmnd[3], srb->cmnd[2]); in sddr09_transport()
1674 page |= short_pack(srb->cmnd[5], srb->cmnd[4]); in sddr09_transport()
1675 pages = short_pack(srb->cmnd[8], srb->cmnd[7]); in sddr09_transport()
1688 if (srb->cmnd[0] != TEST_UNIT_READY && in sddr09_transport()
1689 srb->cmnd[0] != REQUEST_SENSE) { in sddr09_transport()
1696 for (; srb->cmd_len<12; srb->cmd_len++) in sddr09_transport()
1697 srb->cmnd[srb->cmd_len] = 0; in sddr09_transport()
1699 srb->cmnd[1] = LUNBITS; in sddr09_transport()
1703 sprintf(ptr+strlen(ptr), "%02X ", srb->cmnd[i]); in sddr09_transport()
1707 result = sddr09_send_scsi_command(us, srb->cmnd, 12); in sddr09_transport()
1714 if (scsi_bufflen(srb) == 0) in sddr09_transport()
1717 if (srb->sc_data_direction == DMA_TO_DEVICE || in sddr09_transport()
1718 srb->sc_data_direction == DMA_FROM_DEVICE) { in sddr09_transport()
1719 unsigned int pipe = (srb->sc_data_direction == DMA_TO_DEVICE) in sddr09_transport()
1723 (srb->sc_data_direction == DMA_TO_DEVICE) ? in sddr09_transport()
1725 scsi_bufflen(srb)); in sddr09_transport()
1727 result = usb_stor_bulk_srb(us, pipe, srb); in sddr09_transport()