Lines Matching refs:ptr

251     struct ms_usdata *ptr = (struct ms_usdata *) ptr_timer->data_ex;  in ms_usb_timeout_handler()  local
253 … struct usb_hcd *host_controller_device = (struct usb_hcd*) ptr->current_urb->dev->bus->hcpriv; in ms_usb_timeout_handler()
269 … ms_usbhost_err("Timeout handler .. Warning!! Cancel urb @ qh %p\n",ptr->current_urb->hcpriv); in ms_usb_timeout_handler()
271 usb_pipedevice (ptr->current_urb->u32Pipe), in ms_usb_timeout_handler()
272 usb_pipeendpoint (ptr->current_urb->u32Pipe), in ms_usb_timeout_handler()
273 …usb_pipein (ptr->current_urb->u32Pipe) ? "in" : "out",usb_pipetype (ptr->current_urb->u32Pipe), pt… in ms_usb_timeout_handler()
276 retv = ms_usb_unlink_urb(ptr->current_urb); in ms_usb_timeout_handler()
279 ptr->current_urb->s32Status = -ETIMEDOUT; in ms_usb_timeout_handler()
300 …wait_for_completion_timeout(struct stCompletion *cpt, S32 flag, struct ms_usdata *ptr, U32 wait_ms) in ms_usb_wait_for_completion_timeout() argument
306 struct urb *urb = ptr->current_urb; in ms_usb_wait_for_completion_timeout()
343 ptr->current_urb->hcpriv); in ms_usb_wait_for_completion_timeout()
344 retv = ms_hcd_unlink_urb(ptr->current_urb, -ENOENT); in ms_usb_wait_for_completion_timeout()
350 ptr->current_urb->s32Status = 0; in ms_usb_wait_for_completion_timeout()
355 ptr->current_urb->s32Status = disconn ? -ENODEV : -ETIMEDOUT; in ms_usb_wait_for_completion_timeout()
362 static int ms_usb_msg_common(struct ms_usdata *ptr, int time_out) in ms_usb_msg_common() argument
371 if (ptr->flags & NO_SUBMIT) in ms_usb_msg_common()
377 ptr->current_urb->pContext = &request_block_done; in ms_usb_msg_common()
378 ptr->current_urb->u32ActualLength = 0; in ms_usb_msg_common()
381 ptr->current_urb->u32TransferFlags = MS_FLAG_URB_NO_SETUP_DMA_MAP; in ms_usb_msg_common()
383 if (ptr->current_urb->pTransferBuffer == ptr->iobuf) in ms_usb_msg_common()
384 ptr->current_urb->u32TransferFlags |= MS_FLAG_URB_NO_TRANSFER_DMA_MAP; in ms_usb_msg_common()
385 ptr->current_urb->tTransferDma = ptr->iobuf_dma; in ms_usb_msg_common()
386 ptr->current_urb->tSetupDma = ptr->cr_dma; in ms_usb_msg_common()
390 struct usb_hcd *hcd = ptr->pusb_dev->bus->hcpriv; in ms_usb_msg_common()
394 ptr->current_urb->WaitFlag_storage = flag; in ms_usb_msg_common()
397 status = ms_usb_submit_urb(ptr->current_urb, GFP_NOIO); in ms_usb_msg_common()
401 ms_set_bit(MS_IDX_URB_ACTIVE, &ptr->flags, U32); in ms_usb_msg_common()
402 if (ptr->flags & NO_SUBMIT) in ms_usb_msg_common()
404 if (ms_test_and_clear_bit(MS_IDX_URB_ACTIVE, &ptr->flags)) in ms_usb_msg_common()
407 ms_usb_unlink_urb(ptr->current_urb); in ms_usb_msg_common()
418 to_timer.data_ex = (U32) ptr; in ms_usb_msg_common()
423 … ms_usb_wait_for_completion_timeout(&request_block_done, flag, ptr, ms_jiffies_to_msecs(time_out)); in ms_usb_msg_common()
425 ms_clear_bit(MS_IDX_URB_ACTIVE, &ptr->flags, U32); in ms_usb_msg_common()
440 return ptr->current_urb->s32Status; in ms_usb_msg_common()
443 int ms_usb_control_msg(struct ms_usdata *ptr, U32 pipe, in ms_usb_control_msg() argument
451 ptr->cr->bRequestType = rt; in ms_usb_control_msg()
452 ptr->cr->bRequest = req; in ms_usb_control_msg()
453 ptr->cr->wValue = val; in ms_usb_control_msg()
454 ptr->cr->wIndex = idx; in ms_usb_control_msg()
455 ptr->cr->wLength = len; in ms_usb_control_msg()
457 ms_usb_stuff_control_urb(ptr->current_urb, ptr->pusb_dev, pipe, in ms_usb_control_msg()
458 (unsigned char*) ptr->cr, data, len, ms_usb_blocking_completion, NULL); in ms_usb_control_msg()
460 state = ms_usb_msg_common(ptr, time_out); in ms_usb_control_msg()
462 state = ptr->current_urb->u32ActualLength; in ms_usb_control_msg()
467 int ms_usb_msc_clear_halt(struct ms_usdata *ptr, U32 pipe) in ms_usb_msc_clear_halt() argument
475 regval = ms_usb_control_msg(ptr, ptr->ctrl_send_pipe, in ms_usb_msc_clear_halt()
478 usb_settoggle(ptr->pusb_dev, usb_pipeendpoint(pipe), usb_pipeout(pipe), 0); in ms_usb_msc_clear_halt()
483 static int ms_usb_interpret_uRequest_Block_result(struct ms_usdata *ptr, U32 pipe, in ms_usb_interpret_uRequest_Block_result() argument
506 if (ms_usb_msc_clear_halt(ptr, pipe) < 0) in ms_usb_interpret_uRequest_Block_result()
535 int ms_usb_bulk_transfer_buf(struct ms_usdata *ptr, U32 pipe, void *buf, U32 len, U32 *act_len) in ms_usb_bulk_transfer_buf() argument
540 ms_usb_stuff_bulk_urb(ptr->current_urb, ptr->pusb_dev, pipe, buf, len, in ms_usb_bulk_transfer_buf()
542 regval = ms_usb_msg_common(ptr, time_out); in ms_usb_bulk_transfer_buf()
544 *act_len = ptr->current_urb->u32ActualLength; in ms_usb_bulk_transfer_buf()
546 return ms_usb_interpret_uRequest_Block_result(ptr, pipe, len, regval, in ms_usb_bulk_transfer_buf()
547 ptr->current_urb->u32ActualLength); in ms_usb_bulk_transfer_buf()
550 static int ms_usb_bulk_transfer(struct ms_usdata* ptr, U32 pipe, in ms_usb_bulk_transfer() argument
556 regval = ms_usb_bulk_transfer_buf(ptr, pipe, buf, trans_left, &partial); in ms_usb_bulk_transfer()
733 static int ms_usb_stor_data_transfer(stCmd_scsi *request_block, struct ms_usdata *ptr, U32 trans_le… in ms_usb_stor_data_transfer() argument
738 pipe = ptr->bulk_recv_pipe; in ms_usb_stor_data_transfer()
740 pipe = ptr->bulk_send_pipe; in ms_usb_stor_data_transfer()
742 return ms_usb_bulk_transfer(ptr, pipe, request_block->req_buf, trans_len, in ms_usb_stor_data_transfer()
746 int ms_usb_CB_transport(stCmd_scsi *request_block, struct ms_usdata *ptr) in ms_usb_CB_transport() argument
751 ptr->cr->bRequestType = USB_TYPE_CLASS | USB_RECIP_INTERFACE; in ms_usb_CB_transport()
752 ptr->cr->bRequest = MS_CBI_ADSC; in ms_usb_CB_transport()
753 ptr->cr->wValue = 0; in ms_usb_CB_transport()
754 ptr->cr->wIndex = ptr->ifnum; in ms_usb_CB_transport()
755 ptr->cr->wLength = request_block->cmd_len; in ms_usb_CB_transport()
757 ms_usb_stuff_control_urb(ptr->current_urb, ptr->pusb_dev, ptr->ctrl_send_pipe, in ms_usb_CB_transport()
758 (unsigned char*) ptr->cr, request_block->cmnd, request_block->cmd_len, in ms_usb_CB_transport()
760 result = ms_usb_msg_common(ptr, timeout); in ms_usb_CB_transport()
762 regval = ms_usb_interpret_uRequest_Block_result(ptr, ptr->ctrl_send_pipe, in ms_usb_CB_transport()
763 request_block->cmd_len, result, ptr->current_urb->u32ActualLength); in ms_usb_CB_transport()
777 regval = ms_usb_stor_data_transfer(request_block,ptr,trans_len); in ms_usb_CB_transport()
786 …_tranCB(struct stBulk_cb *bulk_cb, stCmd_scsi *request_block, struct ms_usdata *ptr, U32 trans_len) in ms_usb_tranCB() argument
801 return ms_usb_bulk_transfer_buf(ptr, ptr->bulk_send_pipe, bulk_cb, BULK_CB_WRAP_LEN, NULL); in ms_usb_tranCB()
804 static int ms_usb_tranCS(struct stBulk_cs *bulk_cs, struct ms_usdata *ptr) in ms_usb_tranCS() argument
810 … regval = ms_usb_bulk_transfer_buf(ptr, ptr->bulk_recv_pipe, bulk_cs, BULK_CS_WRAP_LEN, &len_csw); in ms_usb_tranCS()
814 … regval = ms_usb_bulk_transfer_buf(ptr, ptr->bulk_recv_pipe, bulk_cs, BULK_CS_WRAP_LEN, NULL); in ms_usb_tranCS()
819 … regval = ms_usb_bulk_transfer_buf(ptr, ptr->bulk_recv_pipe, bulk_cs, BULK_CS_WRAP_LEN, NULL); in ms_usb_tranCS()
824 int ms_usb_bulk_transport(stCmd_scsi *request_block, struct ms_usdata *ptr) in ms_usb_bulk_transport() argument
827 struct stBulk_cb *bulk_cb = (struct stBulk_cb *)(ptr->iobuf - tmp_iobuf); in ms_usb_bulk_transport()
828 struct stBulk_cs *bulk_cs = (struct stBulk_cs *)(ptr->iobuf - tmp_iobuf); in ms_usb_bulk_transport()
832 regval = ms_usb_tranCB(bulk_cb,request_block,ptr,trans_len); in ms_usb_bulk_transport()
842 regval = ms_usb_stor_data_transfer(request_block,ptr,trans_len); in ms_usb_bulk_transport()
853 regval = ms_usb_tranCS(bulk_cs,ptr); in ms_usb_bulk_transport()
901 static int ms_usb_reset_common(struct ms_usdata *ptr, unsigned char req, unsigned char rt, in ms_usb_reset_common() argument
906 if (ms_test_bit(MS_IDX_DISCONNECTING, &ptr->flags)) // patch from Linux 2.6.28 in ms_usb_reset_common()
912 regval = ms_usb_control_msg(ptr, ptr->ctrl_send_pipe, req, rt, val, idx, data, len, HZ*20); in ms_usb_reset_common()
925 if (ms_test_bit(MS_IDX_DISCONNECTING, &ptr->flags)) in ms_usb_reset_common()
931 regval1 = ms_usb_msc_clear_halt(ptr, ptr->bulk_recv_pipe); in ms_usb_reset_common()
932 regval2 = ms_usb_msc_clear_halt(ptr, ptr->bulk_send_pipe); in ms_usb_reset_common()
942 int ms_usb_CB_reset(struct ms_usdata *ptr) in ms_usb_CB_reset() argument
947 memset(ptr->iobuf, 0xFF, CMD_SIZE); in ms_usb_CB_reset()
949 ptr->iobuf[0] = 0x1d;//SEND_DIAGNOSTIC; in ms_usb_CB_reset()
950 ptr->iobuf[1] = 4; in ms_usb_CB_reset()
952 return ms_usb_reset_common(ptr, MS_CBI_ADSC, USB_TYPE_CLASS | USB_RECIP_INTERFACE, in ms_usb_CB_reset()
953 0, ptr->ifnum, ptr->iobuf, CMD_SIZE); in ms_usb_CB_reset()
956 int ms_usb_bulk_reset(struct ms_usdata *ptr) in ms_usb_bulk_reset() argument
960 return ms_usb_reset_common(ptr, BULK_RESET_REQUEST, USB_TYPE_CLASS | USB_RECIP_INTERFACE, in ms_usb_bulk_reset()
961 0, ptr->ifnum, NULL, 0); in ms_usb_bulk_reset()