Lines Matching defs:uscsi

54 #include <sys/scsi/impl/uscsi.h>
1394 * Build and execute the uscsi ioctl. We build a group0, group1
2727 struct uscsi_cmd *uscsi = (struct uscsi_cmd *)ioctl_arg;
2742 uscsi->uscsi_flags = vd_scsi_debug;
2745 uscsi->uscsi_flags |= USCSI_ISOLATE;
2746 uscsi->uscsi_flags |= USCSI_DIAGNOSE;
2752 uscsi->uscsi_flags |= USCSI_HEAD;
2755 uscsi->uscsi_flags |= USCSI_HTAG;
2758 uscsi->uscsi_flags |= USCSI_OTAG;
2761 uscsi->uscsi_flags |= USCSI_NOTAG;
2766 uscsi->uscsi_timeout = vd_scsi->timeout;
2769 uscsi->uscsi_cdb = (caddr_t)VD_SCSI_DATA_CDB(vd_scsi);
2770 uscsi->uscsi_cdblen = vd_scsi->cdb_len;
2774 uscsi->uscsi_flags |= USCSI_RQENABLE;
2775 uscsi->uscsi_rqbuf = (caddr_t)VD_SCSI_DATA_SENSE(vd_scsi);
2776 uscsi->uscsi_rqlen = vd_scsi->sense_len;
2780 /* uscsi does not support read/write request */
2786 uscsi->uscsi_flags |= USCSI_READ;
2787 uscsi->uscsi_buflen = vd_scsi->datain_len;
2788 uscsi->uscsi_bufaddr = (char *)VD_SCSI_DATA_IN(vd_scsi);
2793 uscsi->uscsi_buflen = vd_scsi->dataout_len;
2794 uscsi->uscsi_bufaddr = (char *)VD_SCSI_DATA_OUT(vd_scsi);
2804 struct uscsi_cmd *uscsi = (struct uscsi_cmd *)ioctl_arg;
2807 vd_scsi->cmd_status = uscsi->uscsi_status;
2810 if ((uscsi->uscsi_flags & USCSI_RQENABLE) &&
2811 (uscsi->uscsi_status == STATUS_CHECK ||
2812 uscsi->uscsi_status == STATUS_TERMINATED)) {
2813 vd_scsi->sense_status = uscsi->uscsi_rqstatus;
2814 if (uscsi->uscsi_rqstatus == STATUS_GOOD)
2815 vd_scsi->sense_len -= uscsi->uscsi_rqresid;
2822 if (uscsi->uscsi_status != STATUS_GOOD) {
2828 if (uscsi->uscsi_flags & USCSI_READ) {
2830 vd_scsi->datain_len -= uscsi->uscsi_resid;
2835 vd_scsi->dataout_len -= uscsi->uscsi_resid;
3517 struct uscsi_cmd *uscsi = (struct uscsi_cmd *)ioctl->arg;
3521 !(uscsi->uscsi_flags & USCSI_READ)) {
3522 PR0("uscsi fails because backend is opened read-only");
3610 struct uscsi_cmd uscsi = {0};
3651 &uscsi, vd_scsicmd_in, vd_scsicmd_out, B_FALSE},
3793 struct uscsi_cmd uscsi = { 0 };
3795 uscsi.uscsi_flags = vd_scsi_debug | USCSI_RESET;
3796 uscsi.uscsi_timeout = vd_scsi_rdwr_timeout;
3798 status = ldi_ioctl(vd->ldi_handle[0], USCSICMD, (intptr_t)&uscsi,