Lines Matching refs:xs
423 struct scsipi_xfer *xs;
427 xs = arg;
431 vdsk_scsi_cmd(sc, xs);
771 struct scsipi_xfer *xs;
776 xs = sc->sc_vsd[cons].vsd_xs;
777 if (ISSET(xs->xs_control, XS_CTL_POLL) == 0)
778 vdsk_complete_cmd(sc, xs, cons);
1028 vdsk_scsi_cmd(struct vdsk_softc *sc, struct scsipi_xfer *xs)
1033 DPRINTF(("vdsk_scsi_cmd() opcode %x\n", xs->cmd->opcode));
1035 switch (xs->cmd->opcode) {
1074 vdsk_scsi_done(xs, XS_NOERROR);
1081 vdsk_scsi_inq(sc, xs);
1086 vdsk_scsi_capacity(sc, xs);
1091 vdsk_scsi_capacity16(sc, xs);
1096 vdsk_scsi_report_luns(sc, xs);
1101 vdsk_scsi_test_unit_ready(sc, xs);
1106 vdsk_scsi_start_stop(sc, xs);
1111 vdsk_scsi_prevent_allow_medium_removal(sc, xs);
1116 vdsk_scsi_mode_sense(sc, xs);
1121 vdsk_scsi_mode_select(sc, xs);
1126 vdsk_scsi_maintenance_in(sc, xs);
1131 vdsk_scsi_mode_sense_10(sc, xs);
1136 vdsk_scsi_read_toc(sc, xs);
1141 __func__, xs->cmd->opcode);
1145 desc = vdsk_submit_cmd(sc, xs);
1147 if (!ISSET(xs->xs_control, XS_CTL_POLL)) {
1159 vdsk_complete_cmd(sc, xs, desc);
1162 vdsk_scsi_done(xs, XS_TIMEOUT);
1168 vdsk_submit_cmd(struct vdsk_softc *sc, struct scsipi_xfer *xs)
1184 switch (xs->cmd->opcode) {
1209 __func__, xs->cmd->opcode);
1216 if (xs->cmdlen == 6) {
1217 rw6 = (struct scsi_rw_6 *)xs->cmd;
1219 } else if (xs->cmdlen == 10) {
1220 rw10 = (struct scsipi_rw_10 *)xs->cmd;
1222 } else if (xs->cmdlen == 12) {
1223 rw12 = (struct scsipi_rw_12 *)xs->cmd;
1225 } else if (xs->cmdlen == 16) {
1226 rw16 = (struct scsipi_rw_16 *)xs->cmd;
1234 len = xs->datalen;
1235 va = (vaddr_t)xs->data;
1262 if (ISSET(xs->xs_control, XS_CTL_POLL) == 0)
1270 sc->sc_vd->vd_desc[desc].size = xs->datalen;
1277 sc->sc_vsd[desc].vsd_xs = xs;
1297 vdsk_complete_cmd(struct vdsk_softc *sc, struct scsipi_xfer *xs, int desc)
1313 xs->resid = xs->datalen -
1321 vdsk_scsi_done(xs, error);
1329 vdsk_scsi_inq(struct vdsk_softc *sc, struct scsipi_xfer *xs)
1331 vdsk_scsi_inquiry(sc, xs);
1335 vdsk_scsi_inquiry(struct vdsk_softc *sc, struct scsipi_xfer *xs)
1364 bcopy(&inq, xs->data, MIN(sizeof(inq), xs->datalen));
1366 vdsk_scsi_done(xs, XS_NOERROR);
1370 vdsk_scsi_mode_sense(struct vdsk_softc *sc, struct scsipi_xfer *xs)
1380 bcopy(&data, xs->data, MIN(sizeof(data), xs->datalen));
1381 vdsk_scsi_done(xs, XS_NOERROR);
1385 vdsk_scsi_mode_sense_10(struct vdsk_softc *sc, struct scsipi_xfer *xs)
1387 vdsk_scsi_done(xs, XS_NOERROR);
1391 vdsk_scsi_mode_select(struct vdsk_softc *sc, struct scsipi_xfer *xs)
1393 vdsk_scsi_done(xs, XS_NOERROR);
1397 vdsk_scsi_read_toc(struct vdsk_softc *sc, struct scsipi_xfer *xs)
1399 vdsk_scsi_done(xs, XS_NOERROR);
1403 vdsk_scsi_maintenance_in(struct vdsk_softc *sc, struct scsipi_xfer *xs)
1405 vdsk_scsi_done(xs, XS_NOERROR);
1409 vdsk_scsi_start_stop(struct vdsk_softc *sc, struct scsipi_xfer *xs)
1411 vdsk_scsi_done(xs, XS_NOERROR);
1415 vdsk_scsi_prevent_allow_medium_removal(struct vdsk_softc *sc, struct scsipi_xfer *xs)
1417 vdsk_scsi_done(xs, XS_NOERROR);
1421 vdsk_scsi_test_unit_ready(struct vdsk_softc *sc, struct scsipi_xfer *xs)
1423 vdsk_scsi_done(xs, XS_NOERROR);
1427 vdsk_scsi_capacity(struct vdsk_softc *sc, struct scsipi_xfer *xs)
1444 bcopy(&rcd, xs->data, MIN(sizeof(rcd), xs->datalen));
1446 vdsk_scsi_done(xs, XS_NOERROR);
1450 vdsk_scsi_capacity16(struct vdsk_softc *sc, struct scsipi_xfer *xs)
1465 bcopy(&rcd, xs->data, MIN(sizeof(rcd), xs->datalen));
1467 vdsk_scsi_done(xs, XS_NOERROR);
1471 vdsk_scsi_report_luns(struct vdsk_softc *sc, struct scsipi_xfer *xs)
1473 vdsk_scsi_done(xs, XS_NOERROR);
1477 vdsk_scsi_done(struct scsipi_xfer *xs, int error)
1479 xs->error = error;
1481 scsipi_done(xs);