/Linux-v5.15/drivers/usb/cdns3/ |
D | cdns3-debug.h | 114 struct cdns3_trb *trb; in cdns3_dbg_ring() local 121 trb = &priv_ep->trb_pool[priv_ep->dequeue]; in cdns3_dbg_ring() 126 priv_ep->dequeue, trb, in cdns3_dbg_ring() 127 (unsigned long long)cdns3_trb_virt_to_dma(priv_ep, trb)); in cdns3_dbg_ring() 129 trb = &priv_ep->trb_pool[priv_ep->enqueue]; in cdns3_dbg_ring() 132 priv_ep->enqueue, trb, in cdns3_dbg_ring() 133 (unsigned long long)cdns3_trb_virt_to_dma(priv_ep, trb)); in cdns3_dbg_ring() 149 trb = &ring[i]; in cdns3_dbg_ring() 152 le32_to_cpu(trb->buffer), in cdns3_dbg_ring() 153 le32_to_cpu(trb->length), in cdns3_dbg_ring() [all …]
|
D | cdnsp-trace.h | 338 TP_PROTO(struct cdnsp_ring *ring, struct cdnsp_generic_trb *trb), 339 TP_ARGS(ring, trb), 346 __field(union cdnsp_trb *, trb) 352 __entry->field0 = le32_to_cpu(trb->field[0]); 353 __entry->field1 = le32_to_cpu(trb->field[1]); 354 __entry->field2 = le32_to_cpu(trb->field[2]); 355 __entry->field3 = le32_to_cpu(trb->field[3]); 356 __entry->trb = (union cdnsp_trb *)trb; 358 (union cdnsp_trb *)trb); 365 __entry->trb, &__entry->trb_dma [all …]
|
D | cdns3-gadget.c | 187 struct cdns3_trb *trb) in cdns3_trb_virt_to_dma() argument 189 u32 offset = (char *)trb - (char *)priv_ep->trb_pool; in cdns3_trb_virt_to_dma() 964 struct cdns3_trb *trb) in cdns3_wa1_update_guard() argument 976 priv_ep->wa1_trb = trb; in cdns3_wa1_update_guard() 1003 struct cdns3_trb *trb; in cdns3_ep_run_stream_transfer() local 1023 trb = priv_ep->trb_pool + priv_ep->enqueue; in cdns3_ep_run_stream_transfer() 1026 priv_req->trb = trb; in cdns3_ep_run_stream_transfer() 1034 trb->buffer = cpu_to_le32(TRB_BUFFER(trb_dma)); in cdns3_ep_run_stream_transfer() 1037 trb->buffer = cpu_to_le32(TRB_BUFFER(request->sg[sg_idx].dma_address)); in cdns3_ep_run_stream_transfer() 1043 trb->length = cpu_to_le32(TRB_BURST_LEN(16) | TRB_LEN(length)); in cdns3_ep_run_stream_transfer() [all …]
|
D | cdnsp-ring.c | 72 union cdnsp_trb *trb) in cdnsp_trb_virt_to_dma() argument 74 unsigned long segment_offset = trb - seg->trbs; in cdnsp_trb_virt_to_dma() 76 if (trb < seg->trbs || segment_offset >= TRBS_PER_SEGMENT) in cdnsp_trb_virt_to_dma() 79 return seg->dma + (segment_offset * sizeof(*trb)); in cdnsp_trb_virt_to_dma() 82 static bool cdnsp_trb_is_noop(union cdnsp_trb *trb) in cdnsp_trb_is_noop() argument 84 return TRB_TYPE_NOOP_LE32(trb->generic.field[3]); in cdnsp_trb_is_noop() 87 static bool cdnsp_trb_is_link(union cdnsp_trb *trb) in cdnsp_trb_is_link() argument 89 return TRB_TYPE_LINK_LE32(trb->link.control); in cdnsp_trb_is_link() 92 bool cdnsp_last_trb_on_seg(struct cdnsp_segment *seg, union cdnsp_trb *trb) in cdnsp_last_trb_on_seg() argument 94 return trb == &seg->trbs[TRBS_PER_SEGMENT - 1]; in cdnsp_last_trb_on_seg() [all …]
|
D | cdns3-trace.h | 390 TP_PROTO(struct cdns3_endpoint *priv_ep, struct cdns3_trb *trb), 391 TP_ARGS(priv_ep, trb), 394 __field(struct cdns3_trb *, trb) 403 __entry->trb = trb; 404 __entry->buffer = le32_to_cpu(trb->buffer); 405 __entry->length = le32_to_cpu(trb->length); 406 __entry->control = le32_to_cpu(trb->control); 411 __get_str(name), __entry->trb, __entry->buffer, 428 TP_PROTO(struct cdns3_endpoint *priv_ep, struct cdns3_trb *trb), 429 TP_ARGS(priv_ep, trb) [all …]
|
D | cdnsp-gadget.h | 1516 union cdnsp_trb *trb); 1517 bool cdnsp_last_trb_on_seg(struct cdnsp_segment *seg, union cdnsp_trb *trb); 1520 union cdnsp_trb *trb);
|
D | cdns3-gadget.h | 1232 struct cdns3_trb *trb; member 1340 struct cdns3_trb *trb);
|
/Linux-v5.15/drivers/usb/dwc3/ |
D | trace.h | 220 TP_PROTO(struct dwc3_ep *dep, struct dwc3_trb *trb), 221 TP_ARGS(dep, trb), 224 __field(struct dwc3_trb *, trb) 235 __entry->trb = trb; 236 __entry->bpl = trb->bpl; 237 __entry->bph = trb->bph; 238 __entry->size = trb->size; 239 __entry->ctrl = trb->ctrl; 245 __get_str(name), __entry->trb, __entry->enqueue, 281 TP_PROTO(struct dwc3_ep *dep, struct dwc3_trb *trb), [all …]
|
D | ep0.c | 37 struct dwc3_trb *trb; in dwc3_ep0_prepare_one_trb() local 41 trb = &dwc->ep0_trb[dep->trb_enqueue]; in dwc3_ep0_prepare_one_trb() 46 trb->bpl = lower_32_bits(buf_dma); in dwc3_ep0_prepare_one_trb() 47 trb->bph = upper_32_bits(buf_dma); in dwc3_ep0_prepare_one_trb() 48 trb->size = len; in dwc3_ep0_prepare_one_trb() 49 trb->ctrl = type; in dwc3_ep0_prepare_one_trb() 51 trb->ctrl |= (DWC3_TRB_CTRL_HWO in dwc3_ep0_prepare_one_trb() 55 trb->ctrl |= DWC3_TRB_CTRL_CHN; in dwc3_ep0_prepare_one_trb() 57 trb->ctrl |= (DWC3_TRB_CTRL_IOC in dwc3_ep0_prepare_one_trb() 60 trace_dwc3_prepare_trb(dep, trb); in dwc3_ep0_prepare_one_trb() [all …]
|
D | gadget.c | 187 if (req->trb) in dwc3_gadget_del_and_unmap_request() 191 req->trb = NULL; in dwc3_gadget_del_and_unmap_request() 434 struct dwc3_trb *trb) in dwc3_trb_dma_offset() argument 436 u32 offset = (char *) trb - (char *) dep->trb_pool; in dwc3_trb_dma_offset() 882 struct dwc3_trb *trb; in __dwc3_gadget_ep_enable() local 887 trb = &dep->trb_pool[0]; in __dwc3_gadget_ep_enable() 888 trb_dma = dwc3_trb_dma_offset(dep, trb); in __dwc3_gadget_ep_enable() 1155 static void __dwc3_prepare_one_trb(struct dwc3_ep *dep, struct dwc3_trb *trb, in __dwc3_prepare_one_trb() argument 1165 trb->size = DWC3_TRB_SIZE_LENGTH(length); in __dwc3_prepare_one_trb() 1166 trb->bpl = lower_32_bits(dma); in __dwc3_prepare_one_trb() [all …]
|
D | debugfs.c | 806 struct dwc3_trb *trb = &dep->trb_pool[i]; in dwc3_trb_ring_show() local 807 unsigned int type = DWC3_TRBCTL_TYPE(trb->ctrl); in dwc3_trb_ring_show() 810 trb->bph, trb->bpl, trb->size, in dwc3_trb_ring_show() 812 !!(trb->ctrl & DWC3_TRB_CTRL_IOC), in dwc3_trb_ring_show() 813 !!(trb->ctrl & DWC3_TRB_CTRL_ISP_IMI), in dwc3_trb_ring_show() 814 !!(trb->ctrl & DWC3_TRB_CTRL_CSP), in dwc3_trb_ring_show() 815 !!(trb->ctrl & DWC3_TRB_CTRL_CHN), in dwc3_trb_ring_show() 816 !!(trb->ctrl & DWC3_TRB_CTRL_LST), in dwc3_trb_ring_show() 817 !!(trb->ctrl & DWC3_TRB_CTRL_HWO), in dwc3_trb_ring_show()
|
D | core.h | 927 struct dwc3_trb *trb; member
|
/Linux-v5.15/drivers/usb/host/ |
D | xhci-trace.h | 115 TP_PROTO(struct xhci_ring *ring, struct xhci_generic_trb *trb), 116 TP_ARGS(ring, trb), 127 __entry->field0 = le32_to_cpu(trb->field[0]); 128 __entry->field1 = le32_to_cpu(trb->field[1]); 129 __entry->field2 = le32_to_cpu(trb->field[2]); 130 __entry->field3 = le32_to_cpu(trb->field[3]); 139 TP_PROTO(struct xhci_ring *ring, struct xhci_generic_trb *trb), 140 TP_ARGS(ring, trb) 144 TP_PROTO(struct xhci_ring *ring, struct xhci_generic_trb *trb), 145 TP_ARGS(ring, trb) [all …]
|
D | xhci-dbgcap.c | 143 req->trb = NULL; in xhci_dbc_giveback() 163 union xhci_trb *trb = req->trb; in xhci_dbc_flush_single_request() local 165 trb->generic.field[0] = 0; in xhci_dbc_flush_single_request() 166 trb->generic.field[1] = 0; in xhci_dbc_flush_single_request() 167 trb->generic.field[2] = 0; in xhci_dbc_flush_single_request() 168 trb->generic.field[3] &= cpu_to_le32(TRB_CYCLE); in xhci_dbc_flush_single_request() 169 trb->generic.field[3] |= cpu_to_le32(TRB_TYPE(TRB_TR_NOOP)); in xhci_dbc_flush_single_request() 226 union xhci_trb *trb, *next; in xhci_dbc_queue_trb() local 228 trb = ring->enqueue; in xhci_dbc_queue_trb() 229 trb->generic.field[0] = cpu_to_le32(field1); in xhci_dbc_queue_trb() [all …]
|
D | xhci-ring.c | 70 union xhci_trb *trb) in xhci_trb_virt_to_dma() argument 74 if (!seg || !trb || trb < seg->trbs) in xhci_trb_virt_to_dma() 77 segment_offset = trb - seg->trbs; in xhci_trb_virt_to_dma() 80 return seg->dma + (segment_offset * sizeof(*trb)); in xhci_trb_virt_to_dma() 83 static bool trb_is_noop(union xhci_trb *trb) in trb_is_noop() argument 85 return TRB_TYPE_NOOP_LE32(trb->generic.field[3]); in trb_is_noop() 88 static bool trb_is_link(union xhci_trb *trb) in trb_is_link() argument 90 return TRB_TYPE_LINK_LE32(trb->link.control); in trb_is_link() 93 static bool last_trb_on_seg(struct xhci_segment *seg, union xhci_trb *trb) in last_trb_on_seg() argument 95 return trb == &seg->trbs[TRBS_PER_SEGMENT - 1]; in last_trb_on_seg() [all …]
|
D | xhci-debugfs.c | 200 union xhci_trb *trb; in xhci_ring_dump_segment() local 204 trb = &seg->trbs[i]; in xhci_ring_dump_segment() 205 dma = seg->dma + i * sizeof(*trb); in xhci_ring_dump_segment() 207 xhci_decode_trb(str, XHCI_MSG_MAX, le32_to_cpu(trb->generic.field[0]), in xhci_ring_dump_segment() 208 le32_to_cpu(trb->generic.field[1]), in xhci_ring_dump_segment() 209 le32_to_cpu(trb->generic.field[2]), in xhci_ring_dump_segment() 210 le32_to_cpu(trb->generic.field[3]))); in xhci_ring_dump_segment()
|
D | xhci-dbgcap.h | 157 union xhci_trb *trb; member
|
D | xhci.h | 2117 dma_addr_t xhci_trb_virt_to_dma(struct xhci_segment *seg, union xhci_trb *trb);
|
/Linux-v5.15/drivers/usb/gadget/udc/ |
D | tegra-xudc.c | 338 static inline u32 trb_read_##name(struct tegra_xudc_trb *trb) \ 340 return (le32_to_cpu(trb->member) >> (shift)) & (mask); \ 343 trb_write_##name(struct tegra_xudc_trb *trb, u32 val) \ 347 tmp = le32_to_cpu(trb->member) & ~((mask) << (shift)); \ 349 trb->member = cpu_to_le32(tmp); \ 371 static inline u64 trb_read_data_ptr(struct tegra_xudc_trb *trb) in trb_read_data_ptr() argument 373 return ((u64)trb_read_data_hi(trb) << 32) | in trb_read_data_ptr() 374 trb_read_data_lo(trb); in trb_read_data_ptr() 377 static inline void trb_write_data_ptr(struct tegra_xudc_trb *trb, u64 addr) in trb_write_data_ptr() argument 379 trb_write_data_lo(trb, lower_32_bits(addr)); in trb_write_data_ptr() [all …]
|
D | mv_u3d_core.c | 272 struct mv_u3d_trb *trb; in mv_u3d_build_trb_one() local 282 trb = kzalloc(sizeof(*trb), GFP_ATOMIC); in mv_u3d_build_trb_one() 283 if (!trb) in mv_u3d_build_trb_one() 293 kfree(trb); in mv_u3d_build_trb_one() 298 trb->trb_dma = *dma; in mv_u3d_build_trb_one() 299 trb->trb_hw = trb_hw; in mv_u3d_build_trb_one() 329 return trb; in mv_u3d_build_trb_one() 333 struct mv_u3d_trb *trb, int *is_last) in mv_u3d_build_trb_chain() argument 345 trb->trb_dma = 0; in mv_u3d_build_trb_chain() 350 trb->trb_hw->buf_addr_lo = cpu_to_le32(temp); in mv_u3d_build_trb_chain() [all …]
|
/Linux-v5.15/drivers/usb/early/ |
D | xhci-dbc.c | 385 struct xdbc_trb *trb, *link_trb; in xdbc_queue_trb() local 387 trb = ring->enqueue; in xdbc_queue_trb() 388 trb->field[0] = cpu_to_le32(field1); in xdbc_queue_trb() 389 trb->field[1] = cpu_to_le32(field2); in xdbc_queue_trb() 390 trb->field[2] = cpu_to_le32(field3); in xdbc_queue_trb() 391 trb->field[3] = cpu_to_le32(field4); in xdbc_queue_trb() 460 struct xdbc_trb *trb; in xdbc_bulk_transfer() local 480 trb = ring->enqueue; in xdbc_bulk_transfer() 509 trb->field[3] |= cpu_to_le32(cycle); in xdbc_bulk_transfer() 511 trb->field[3] &= cpu_to_le32(~TRB_CYCLE); in xdbc_bulk_transfer()
|
/Linux-v5.15/Documentation/driver-api/usb/ |
D | dwc3.rst | 50 5. Up to 256 TRBs [#trb]_ per endpoint 85 According to Synopsys Databook, all OUT transfer TRBs [#trb]_ must 103 We, currently, have a hard limit of 256 TRBs [#trb]_ per endpoint, 631 TP_printk("%s: %d/%d trb %p buf %08x%08x size %s%d ctrl %08x (%c%c%c%c:%c%c:%s)", 633 __entry->trb, __entry->bph, __entry->bpl, 703 .. [#trb] Transfer Request Block
|