Lines Matching refs:atio
74 static int start_io(struct ccb_accept_tio *atio,
135 tcmd_handle(struct ccb_accept_tio *atio, struct ccb_scsiio *ctio, io_ops event)
143 warnx("tcmd_handle atio %p ctio %p atioflags %#x", atio, ctio,
144 atio->ccb_h.flags);
147 a_descr = (struct atio_descr *)atio->ccb_h.targ_descr;
163 last_cmd->done(atio, ctio, event);
176 tcmd_illegal_req(atio, ctio);
183 tcmd_illegal_req(atio, ctio);
195 atio->init_id);
218 ret = last_cmd->start(atio, ctio);
296 tcmd_inquiry(struct ccb_accept_tio *atio, struct ccb_scsiio *ctio)
303 a_descr = (struct atio_descr *)atio->ccb_h.targ_descr;
307 cdb_debug(a_descr->cdb, "INQUIRY from %u: ", atio->init_id);
315 tcmd_illegal_req(atio, ctio);
322 tcmd_illegal_req(atio, ctio);
376 tcmd_req_sense(struct ccb_accept_tio *atio, struct ccb_scsiio *ctio)
384 a_descr = (struct atio_descr *)atio->ccb_h.targ_descr;
391 cdb_debug(a_descr->cdb, "REQ SENSE from %u: ", atio->init_id);
412 tcmd_rd_cap(struct ccb_accept_tio *atio, struct ccb_scsiio *ctio)
418 a_descr = (struct atio_descr *)atio->ccb_h.targ_descr;
428 atio->init_id, vsize, sector_size);
443 tcmd_rd_cap16(struct ccb_accept_tio *atio, struct ccb_scsiio *ctio)
449 a_descr = (struct atio_descr *)atio->ccb_h.targ_descr;
454 tcmd_illegal_req(atio, ctio);
460 atio->init_id, volume_size - 1, sector_size);
475 tcmd_rdwr(struct ccb_accept_tio *atio, struct ccb_scsiio *ctio)
481 a_descr = (struct atio_descr *)atio->ccb_h.targ_descr;
488 ret = tcmd_rdwr_decode(atio, ctio);
498 ret = start_io(atio, ctio, CAM_DIR_IN);
503 ret = start_io(atio, ctio, CAM_DIR_OUT);
513 tcmd_rdwr_decode(struct ccb_accept_tio *atio, struct ccb_scsiio *ctio)
520 a_descr = (struct atio_descr *)atio->ccb_h.targ_descr;
523 cdb_debug(cdb, "R/W from %u: ", atio->init_id);
553 tcmd_illegal_req(atio, ctio);
569 tcmd_null_ok(atio, ctio);
584 start_io(struct ccb_accept_tio *atio, struct ccb_scsiio *ctio, int dir)
591 a_descr = (struct atio_descr *)atio->ccb_h.targ_descr;
644 tcmd_rdwr_done(atio, ctio, AIO_DONE);
647 tcmd_null_ok(atio, ctio);
652 * If data phase done, remove atio from workq.
665 tcmd_rdwr_done(struct ccb_accept_tio *atio, struct ccb_scsiio *ctio,
671 a_descr = (struct atio_descr *)atio->ccb_h.targ_descr;
697 work_atio(atio);
742 tcmd_rdwr_done(atio, ctio, AIO_DONE);
768 tcmd_null_ok(struct ccb_accept_tio *atio, struct ccb_scsiio *ctio)
773 a_descr = (struct atio_descr *)atio->ccb_h.targ_descr;
774 cdb_debug(a_descr->cdb, "Sending null ok to %u : ", atio->init_id);
786 tcmd_illegal_req(struct ccb_accept_tio *atio, struct ccb_scsiio *ctio)
791 a_descr = (struct atio_descr *)atio->ccb_h.targ_descr;
792 cdb_debug(a_descr->cdb, "Sending ill req to %u: ", atio->init_id);
795 tcmd_sense(atio->init_id, ctio, SSD_KEY_ILLEGAL_REQUEST,