Lines Matching refs:trb
187 if (req->trb) in dwc3_gadget_del_and_unmap_request()
191 req->trb = NULL; in dwc3_gadget_del_and_unmap_request()
435 struct dwc3_trb *trb) in dwc3_trb_dma_offset() argument
437 u32 offset = (char *) trb - (char *) dep->trb_pool; in dwc3_trb_dma_offset()
681 struct dwc3_trb *trb; in __dwc3_gadget_ep_enable() local
686 trb = &dep->trb_pool[0]; in __dwc3_gadget_ep_enable()
687 trb_dma = dwc3_trb_dma_offset(dep, trb); in __dwc3_gadget_ep_enable()
946 static void __dwc3_prepare_one_trb(struct dwc3_ep *dep, struct dwc3_trb *trb, in __dwc3_prepare_one_trb() argument
956 trb->size = DWC3_TRB_SIZE_LENGTH(length); in __dwc3_prepare_one_trb()
957 trb->bpl = lower_32_bits(dma); in __dwc3_prepare_one_trb()
958 trb->bph = upper_32_bits(dma); in __dwc3_prepare_one_trb()
962 trb->ctrl = DWC3_TRBCTL_CONTROL_SETUP; in __dwc3_prepare_one_trb()
967 trb->ctrl = DWC3_TRBCTL_ISOCHRONOUS_FIRST; in __dwc3_prepare_one_trb()
1002 trb->size |= DWC3_TRB_SIZE_PCM1(mult); in __dwc3_prepare_one_trb()
1005 trb->ctrl = DWC3_TRBCTL_ISOCHRONOUS; in __dwc3_prepare_one_trb()
1009 trb->ctrl |= DWC3_TRB_CTRL_ISP_IMI; in __dwc3_prepare_one_trb()
1014 trb->ctrl = DWC3_TRBCTL_NORMAL; in __dwc3_prepare_one_trb()
1031 trb->ctrl |= DWC3_TRB_CTRL_CSP; in __dwc3_prepare_one_trb()
1034 trb->ctrl |= DWC3_TRB_CTRL_ISP_IMI; in __dwc3_prepare_one_trb()
1038 trb->ctrl |= DWC3_TRB_CTRL_IOC; in __dwc3_prepare_one_trb()
1041 trb->ctrl |= DWC3_TRB_CTRL_CHN; in __dwc3_prepare_one_trb()
1043 trb->ctrl |= DWC3_TRB_CTRL_LST; in __dwc3_prepare_one_trb()
1046 trb->ctrl |= DWC3_TRB_CTRL_SID_SOFN(stream_id); in __dwc3_prepare_one_trb()
1048 trb->ctrl |= DWC3_TRB_CTRL_HWO; in __dwc3_prepare_one_trb()
1052 trace_dwc3_prepare_trb(dep, trb); in __dwc3_prepare_one_trb()
1070 struct dwc3_trb *trb; in dwc3_prepare_one_trb() local
1084 trb = &dep->trb_pool[dep->trb_enqueue]; in dwc3_prepare_one_trb()
1086 if (!req->trb) { in dwc3_prepare_one_trb()
1088 req->trb = trb; in dwc3_prepare_one_trb()
1089 req->trb_dma = dwc3_trb_dma_offset(dep, trb); in dwc3_prepare_one_trb()
1094 __dwc3_prepare_one_trb(dep, trb, dma, trb_length, chain, node, in dwc3_prepare_one_trb()
1689 if (!req->trb) in dwc3_gadget_ep_skip_trbs()
1703 struct dwc3_trb *trb; in dwc3_gadget_ep_skip_trbs() local
1705 trb = &dep->trb_pool[dep->trb_dequeue]; in dwc3_gadget_ep_skip_trbs()
1706 trb->ctrl &= ~DWC3_TRB_CTRL_HWO; in dwc3_gadget_ep_skip_trbs()
1795 struct dwc3_trb *trb; in __dwc3_gadget_ep_set_halt() local
1801 trb = dwc3_ep_prev_trb(dep, dep->trb_enqueue); in __dwc3_gadget_ep_set_halt()
1803 trb = &dwc->ep0_trb[dep->trb_enqueue]; in __dwc3_gadget_ep_set_halt()
1805 transfer_in_flight = trb->ctrl & DWC3_TRB_CTRL_HWO; in __dwc3_gadget_ep_set_halt()
2686 struct dwc3_request *req, struct dwc3_trb *trb, in dwc3_gadget_ep_reclaim_completed_trb() argument
2693 trace_dwc3_complete_trb(dep, trb); in dwc3_gadget_ep_reclaim_completed_trb()
2706 if (chain && (trb->ctrl & DWC3_TRB_CTRL_HWO)) in dwc3_gadget_ep_reclaim_completed_trb()
2707 trb->ctrl &= ~DWC3_TRB_CTRL_HWO; in dwc3_gadget_ep_reclaim_completed_trb()
2714 (trb->ctrl & DWC3_TRBCTL_ISOCHRONOUS_FIRST)) { in dwc3_gadget_ep_reclaim_completed_trb()
2717 frame_number = DWC3_TRB_CTRL_GET_SID_SOFN(trb->ctrl); in dwc3_gadget_ep_reclaim_completed_trb()
2727 if (trb->bpl == lower_32_bits(dep->dwc->bounce_addr) && in dwc3_gadget_ep_reclaim_completed_trb()
2728 trb->bph == upper_32_bits(dep->dwc->bounce_addr)) { in dwc3_gadget_ep_reclaim_completed_trb()
2729 trb->ctrl &= ~DWC3_TRB_CTRL_HWO; in dwc3_gadget_ep_reclaim_completed_trb()
2733 count = trb->size & DWC3_TRB_SIZE_MASK; in dwc3_gadget_ep_reclaim_completed_trb()
2736 if ((trb->ctrl & DWC3_TRB_CTRL_HWO) && status != -ESHUTDOWN) in dwc3_gadget_ep_reclaim_completed_trb()
2742 if ((trb->ctrl & DWC3_TRB_CTRL_IOC) || in dwc3_gadget_ep_reclaim_completed_trb()
2743 (trb->ctrl & DWC3_TRB_CTRL_LST)) in dwc3_gadget_ep_reclaim_completed_trb()
2753 struct dwc3_trb *trb = &dep->trb_pool[dep->trb_dequeue]; in dwc3_gadget_ep_reclaim_trb_sg() local
2761 trb = &dep->trb_pool[dep->trb_dequeue]; in dwc3_gadget_ep_reclaim_trb_sg()
2767 trb, event, status, true); in dwc3_gadget_ep_reclaim_trb_sg()
2779 struct dwc3_trb *trb = &dep->trb_pool[dep->trb_dequeue]; in dwc3_gadget_ep_reclaim_trb_linear() local
2781 return dwc3_gadget_ep_reclaim_completed_trb(dep, req, trb, in dwc3_gadget_ep_reclaim_trb_linear()