Lines Matching refs:scsa2usbp

196 scsa2usb_bulk_only_transport(scsa2usb_state_t *scsa2usbp, scsa2usb_cmd_t *cmd)
202 ASSERT(mutex_owned(&scsa2usbp->scsa2usb_mutex));
209 req = scsa2usb_init_bulk_req(scsa2usbp, USB_BULK_CBWCMD_LEN,
212 scsa2usb_fill_in_cbw(scsa2usbp, cmd, req->bulk_data); /* Fill CBW */
213 SCSA2USB_PRINT_CDB(scsa2usbp, cmd); /* Print CDB */
216 mutex_exit(&scsa2usbp->scsa2usb_mutex);
219 rval = usb_pipe_bulk_xfer(scsa2usbp->scsa2usb_bulkout_pipe, req,
221 mutex_enter(&scsa2usbp->scsa2usb_mutex);
223 USB_DPRINTF_L4(DPRINT_MASK_SCSA, scsa2usbp->scsa2usb_log_handle,
230 scsa2usb_bulk_only_handle_error(scsa2usbp, req);
254 rval = scsa2usb_handle_data_start(scsa2usbp, cmd, req);
257 scsa2usb_handle_data_done(scsa2usbp, cmd, req);
261 scsa2usbp->scsa2usb_log_handle,
268 if (scsa2usbp->scsa2usb_cur_pkt) {
269 scsa2usbp->scsa2usb_cur_pkt->
273 scsa2usb_bulk_only_handle_error(scsa2usbp, req);
290 rval = scsa2usb_handle_status_start(scsa2usbp, req);
299 scsa2usbp->scsa2usb_pkt_state =
309 rval = scsa2usb_handle_csw_result(scsa2usbp, req->bulk_data);
311 scsa2usb_bulk_only_handle_error(scsa2usbp, req);
319 (scsa2usbp->scsa2usb_cur_pkt->pkt_reason == CMD_CMPLT) &&
322 scsa2usb_setup_next_xfer(scsa2usbp, cmd);
336 scsa2usb_fill_in_cbw(scsa2usb_state_t *scsa2usbp,
343 ASSERT(mutex_owned(&scsa2usbp->scsa2usb_mutex));
360 USB_DPRINTF_L1(DPRINT_MASK_SCSA, scsa2usbp->scsa2usb_log_handle,
369 scsa2usbp->scsa2usb_log_handle,
376 USB_DPRINTF_L1(DPRINT_MASK_SCSA, scsa2usbp->scsa2usb_log_handle,
383 USB_DPRINTF_L1(DPRINT_MASK_SCSA, scsa2usbp->scsa2usb_log_handle,
390 USB_DPRINTF_L1(DPRINT_MASK_SCSA, scsa2usbp->scsa2usb_log_handle,
395 USB_DPRINTF_L1(DPRINT_MASK_SCSA, scsa2usbp->scsa2usb_log_handle,
403 USB_DPRINTF_L1(DPRINT_MASK_SCSA, scsa2usbp->scsa2usb_log_handle,
414 scsa2usbp->scsa2usb_log_handle, "TEST 13: Ho < Do");
460 scsa2usb_bulk_only_handle_error(scsa2usb_state_t *scsa2usbp,
463 struct scsi_pkt *pkt = scsa2usbp->scsa2usb_cur_pkt;
465 USB_DPRINTF_L2(DPRINT_MASK_SCSA, scsa2usbp->scsa2usb_log_handle,
470 SCSA2USB_SET_PKT_DO_COMP_STATE(scsa2usbp);
497 scsa2usb_bulk_only_reset_recovery(scsa2usbp);
509 scsa2usb_handle_status_start(scsa2usb_state_t *scsa2usbp,
514 USB_DPRINTF_L4(DPRINT_MASK_SCSA, scsa2usbp->scsa2usb_log_handle,
517 ASSERT(mutex_owned(&scsa2usbp->scsa2usb_mutex));
532 mutex_exit(&scsa2usbp->scsa2usb_mutex);
535 rval = usb_pipe_bulk_xfer(scsa2usbp->scsa2usb_bulkin_pipe, req,
537 mutex_enter(&scsa2usbp->scsa2usb_mutex);
539 USB_DPRINTF_L3(DPRINT_MASK_SCSA, scsa2usbp->scsa2usb_log_handle,
543 if (scsa2usbp->scsa2usb_pkt_state == SCSA2USB_PKT_PROCESS_CSW) {
544 scsa2usb_bulk_only_reset_recovery(scsa2usbp);
550 (void) scsa2usb_clear_ept_stall(scsa2usbp,
551 scsa2usbp->scsa2usb_bulkin_ept.bEndpointAddress,
552 scsa2usbp->scsa2usb_bulkin_pipe, "bulk-in");
565 scsa2usb_handle_csw_result(scsa2usb_state_t *scsa2usbp, mblk_t *data)
572 struct scsi_pkt *pkt = scsa2usbp->scsa2usb_cur_pkt;
575 ASSERT(mutex_owned(&scsa2usbp->scsa2usb_mutex));
583 USB_DPRINTF_L2(DPRINT_MASK_SCSA, scsa2usbp->scsa2usb_log_handle,
591 USB_DPRINTF_L2(DPRINT_MASK_SCSA, scsa2usbp->scsa2usb_log_handle,
611 USB_DPRINTF_L4(DPRINT_MASK_SCSA, scsa2usbp->scsa2usb_log_handle,
619 USB_DPRINTF_L2(DPRINT_MASK_SCSA, scsa2usbp->scsa2usb_log_handle,
656 USB_DPRINTF_L2(DPRINT_MASK_SCSA, scsa2usbp->scsa2usb_log_handle,
660 scsa2usb_bulk_only_handle_error(scsa2usbp, NULL);
664 USB_DPRINTF_L2(DPRINT_MASK_SCSA, scsa2usbp->scsa2usb_log_handle,
668 scsa2usb_bulk_only_handle_error(scsa2usbp, NULL);
676 scsa2usbp->scsa2usb_log_handle,
710 if ((!(scsa2usbp->scsa2usb_attrs &
745 USB_DPRINTF_L3(DPRINT_MASK_SCSA, scsa2usbp->scsa2usb_log_handle,
750 SCSA2USB_SET_PKT_DO_COMP_STATE(scsa2usbp);
762 scsa2usb_bulk_only_reset_recovery(scsa2usb_state_t *scsa2usbp)
768 USB_DPRINTF_L2(DPRINT_MASK_SCSA, scsa2usbp->scsa2usb_log_handle,
769 "scsa2usb_bulk_only_reset_recovery: scsa2usbp = 0x%p",
770 (void *)scsa2usbp);
772 ASSERT(mutex_owned(&scsa2usbp->scsa2usb_mutex));
774 if (!(SCSA2USB_DEVICE_ACCESS_OK(scsa2usbp))) {
783 if (scsa2usbp->scsa2usb_cur_pkt) {
784 scsa2usbp->scsa2usb_cur_pkt->pkt_statistics |= STAT_DEV_RESET;
788 scsa2usbp->scsa2usb_pipe_state = SCSA2USB_PIPE_DEV_RESET;
791 mutex_exit(&scsa2usbp->scsa2usb_mutex);
792 rval = usb_pipe_sync_ctrl_xfer(scsa2usbp->scsa2usb_dip,
793 scsa2usbp->scsa2usb_default_pipe,
797 scsa2usbp->scsa2usb_intfc_num, /* wIndex */
800 mutex_enter(&scsa2usbp->scsa2usb_mutex);
802 USB_DPRINTF_L2(DPRINT_MASK_SCSA, scsa2usbp->scsa2usb_log_handle,
809 rval = scsa2usb_clear_ept_stall(scsa2usbp,
810 scsa2usbp->scsa2usb_bulkin_ept.bEndpointAddress,
811 scsa2usbp->scsa2usb_bulkin_pipe, "bulk-in");
813 USB_DPRINTF_L2(DPRINT_MASK_SCSA, scsa2usbp->scsa2usb_log_handle,
820 rval = scsa2usb_clear_ept_stall(scsa2usbp,
821 scsa2usbp->scsa2usb_bulkout_ept.bEndpointAddress,
822 scsa2usbp->scsa2usb_bulkout_pipe, "bulk-out");
824 USB_DPRINTF_L2(DPRINT_MASK_SCSA, scsa2usbp->scsa2usb_log_handle,
829 scsa2usbp->scsa2usb_pipe_state &= ~SCSA2USB_PIPE_DEV_RESET;
838 scsa2usb_bulk_only_get_max_lun(scsa2usb_state_t *scsa2usbp)
845 USB_DPRINTF_L4(DPRINT_MASK_SCSA, scsa2usbp->scsa2usb_log_handle,
848 ASSERT(mutex_owned(&scsa2usbp->scsa2usb_mutex));
850 mutex_exit(&scsa2usbp->scsa2usb_mutex);
851 rval = usb_pipe_sync_ctrl_xfer(scsa2usbp->scsa2usb_dip,
852 scsa2usbp->scsa2usb_default_pipe,
856 scsa2usbp->scsa2usb_intfc_num, /* wIndex */
860 mutex_enter(&scsa2usbp->scsa2usb_mutex);
863 USB_DPRINTF_L2(DPRINT_MASK_SCSA, scsa2usbp->scsa2usb_log_handle,
873 scsa2usbp->scsa2usb_log_handle,
889 scsa2usbp->scsa2usb_log_handle,