Lines Matching +full:dma +full:- +full:info
1 /* SPDX-License-Identifier: GPL-2.0 */
12 #define TRACE_SYSTEM xhci-hcd
26 #include "xhci-dbgcap.h"
31 TP_STRUCT__entry(__vstring(msg, vaf->fmt, vaf->va)),
33 __assign_vstr(msg, vaf->fmt, vaf->va);
84 ((HCC_64BYTE_CONTEXT(xhci->hcc_params) + 1) * 8) *
85 ((ctx->type == XHCI_CTX_TYPE_INPUT) + ep_num + 1))
89 __entry->ctx_64 = HCC_64BYTE_CONTEXT(xhci->hcc_params);
90 __entry->ctx_type = ctx->type;
91 __entry->ctx_dma = ctx->dma;
92 __entry->ctx_va = ctx->bytes;
93 __entry->ctx_ep_num = ep_num;
94 memcpy(__get_dynamic_array(ctx_data), ctx->bytes,
95 ((HCC_64BYTE_CONTEXT(xhci->hcc_params) + 1) * 32) *
96 ((ctx->type == XHCI_CTX_TYPE_INPUT) + ep_num + 1));
99 __entry->ctx_64, __entry->ctx_type,
100 (unsigned long long) __entry->ctx_dma, __entry->ctx_va
111 TP_PROTO(struct xhci_ring *ring, struct xhci_generic_trb *trb, dma_addr_t dma),
112 TP_ARGS(ring, trb, dma),
114 __field(dma_addr_t, dma)
122 __entry->dma = dma;
123 __entry->type = ring->type;
124 __entry->field0 = le32_to_cpu(trb->field[0]);
125 __entry->field1 = le32_to_cpu(trb->field[1]);
126 __entry->field2 = le32_to_cpu(trb->field[2]);
127 __entry->field3 = le32_to_cpu(trb->field[3]);
130 xhci_ring_type_string(__entry->type), &__entry->dma,
131 xhci_decode_trb(__get_buf(XHCI_MSG_MAX), XHCI_MSG_MAX, __entry->field0,
132 __entry->field1, __entry->field2, __entry->field3)
137 TP_PROTO(struct xhci_ring *ring, struct xhci_generic_trb *trb, dma_addr_t dma),
138 TP_ARGS(ring, trb, dma)
142 TP_PROTO(struct xhci_ring *ring, struct xhci_generic_trb *trb, dma_addr_t dma),
143 TP_ARGS(ring, trb, dma)
147 TP_PROTO(struct xhci_ring *ring, struct xhci_generic_trb *trb, dma_addr_t dma),
148 TP_ARGS(ring, trb, dma)
152 TP_PROTO(struct xhci_ring *ring, struct xhci_generic_trb *trb, dma_addr_t dma),
153 TP_ARGS(ring, trb, dma)
158 TP_PROTO(struct xhci_ring *ring, struct xhci_generic_trb *trb, dma_addr_t dma),
159 TP_ARGS(ring, trb, dma)
163 TP_PROTO(struct xhci_ring *ring, struct xhci_generic_trb *trb, dma_addr_t dma),
164 TP_ARGS(ring, trb, dma)
168 TP_PROTO(struct xhci_ring *ring, struct xhci_generic_trb *trb, dma_addr_t dma),
169 TP_ARGS(ring, trb, dma)
184 __entry->vdev = vdev;
185 __entry->in_ctx = (unsigned long long) vdev->in_ctx->dma;
186 __entry->out_ctx = (unsigned long long) vdev->out_ctx->dma;
187 __entry->slot_id = (int) vdev->slot_id;
188 __entry->current_mel = (u16) vdev->current_mel;
191 __entry->vdev, __entry->slot_id, __entry->in_ctx,
192 __entry->out_ctx, __entry->current_mel
216 __entry->vdev = vdev;
217 __entry->in_ctx = (unsigned long long) vdev->in_ctx->dma;
218 __entry->out_ctx = (unsigned long long) vdev->out_ctx->dma;
219 __entry->devnum = vdev->udev->devnum;
220 __entry->state = vdev->udev->state;
221 __entry->speed = vdev->udev->speed;
222 __entry->portnum = vdev->udev->portnum;
223 __entry->level = vdev->udev->level;
224 __entry->slot_id = vdev->udev->slot_id;
227 __entry->vdev, __entry->in_ctx, __entry->out_ctx,
228 __entry->devnum, __entry->state, __entry->speed,
229 __entry->portnum, __entry->level, __entry->slot_id
257 __string(devname, dev_name(&urb->dev->dev))
274 __entry->urb = urb;
275 __entry->pipe = urb->pipe;
276 __entry->stream = urb->stream_id;
277 __entry->status = urb->status;
278 __entry->flags = urb->transfer_flags;
279 __entry->num_mapped_sgs = urb->num_mapped_sgs;
280 __entry->num_sgs = urb->num_sgs;
281 __entry->length = urb->transfer_buffer_length;
282 __entry->actual = urb->actual_length;
283 __entry->epnum = usb_endpoint_num(&urb->ep->desc);
284 __entry->dir_in = usb_endpoint_dir_in(&urb->ep->desc);
285 __entry->type = usb_endpoint_type(&urb->ep->desc);
286 __entry->slot_id = urb->dev->slot_id;
288 TP_printk("%s ep%d%s-%s: urb %p pipe %u slot %d length %d/%d sgs %d/%d stream %d flags %08x",
290 __entry->epnum, __entry->dir_in ? "in" : "out",
291 __print_symbolic(__entry->type,
296 __entry->urb, __entry->pipe, __entry->slot_id,
297 __entry->actual, __entry->length, __entry->num_mapped_sgs,
298 __entry->num_sgs, __entry->stream, __entry->flags
318 TP_PROTO(struct xhci_stream_info *info, unsigned int stream_id),
319 TP_ARGS(info, stream_id),
327 __entry->stream_id = stream_id;
328 __entry->stream_ring = le64_to_cpu(info->stream_ctx_array[stream_id].stream_ring);
329 __entry->ctx_array_dma = info->ctx_array_dma + stream_id * 16;
332 TP_printk("stream %u ctx @%pad: SCT %llu deq %llx", __entry->stream_id,
333 &__entry->ctx_array_dma, CTX_TO_SCT(__entry->stream_ring),
334 __entry->stream_ring
339 TP_PROTO(struct xhci_stream_info *info, unsigned int stream_id),
340 TP_ARGS(info, stream_id)
344 TP_PROTO(struct xhci_stream_info *info, unsigned int stream_id),
345 TP_ARGS(info, stream_id)
352 __field(u32, info)
358 __entry->info = le32_to_cpu(ctx->ep_info);
359 __entry->info2 = le32_to_cpu(ctx->ep_info2);
360 __entry->deq = le64_to_cpu(ctx->deq);
361 __entry->tx_info = le32_to_cpu(ctx->tx_info);
364 __entry->info, __entry->info2, __entry->deq, __entry->tx_info)
397 __field(u32, info)
403 __entry->info = le32_to_cpu(ctx->dev_info);
404 __entry->info2 = le32_to_cpu(ctx->dev_info2);
405 __entry->tt_info = le64_to_cpu(ctx->tt_info);
406 __entry->state = le32_to_cpu(ctx->dev_state);
409 __entry->info, __entry->info2,
410 __entry->tt_info, __entry->state)
467 __entry->drop = le32_to_cpu(ctrl_ctx->drop_flags);
468 __entry->add = le32_to_cpu(ctrl_ctx->add_flags);
470 TP_printk("%s", xhci_decode_ctrl_ctx(__get_buf(XHCI_MSG_MAX), __entry->drop, __entry->add)
498 __entry->ring = ring;
499 __entry->type = ring->type;
500 __entry->num_segs = ring->num_segs;
501 __entry->stream_id = ring->stream_id;
502 __entry->cycle_state = ring->cycle_state;
503 __entry->bounce_buf_len = ring->bounce_buf_len;
504 __entry->enq = xhci_trb_virt_to_dma(ring->enq_seg, ring->enqueue);
505 __entry->deq = xhci_trb_virt_to_dma(ring->deq_seg, ring->dequeue);
508 xhci_ring_type_string(__entry->type), __entry->ring,
509 &__entry->enq,
510 &__entry->deq,
511 __entry->num_segs,
512 __entry->stream_id,
513 __entry->bounce_buf_len,
514 __entry->cycle_state
552 __entry->busnum = port->rhub->hcd->self.busnum;
553 __entry->portnum = port->hcd_portnum;
554 __entry->portsc = portsc;
556 TP_printk("port %d-%d: %s",
557 __entry->busnum,
558 __entry->portnum,
559 xhci_decode_portsc(__get_buf(XHCI_MSG_MAX), __entry->portsc)
586 __entry->slot = slot;
587 __entry->doorbell = doorbell;
590 xhci_decode_doorbell(__get_buf(XHCI_MSG_MAX), __entry->slot, __entry->doorbell)
615 __entry->req = req;
616 __entry->dir = req->direction;
617 __entry->actual = req->actual;
618 __entry->length = req->length;
619 __entry->status = req->status;
622 __entry->dir ? "bulk-in" : "bulk-out",
623 __entry->req, __entry->actual,
624 __entry->length, __entry->status
655 #define TRACE_INCLUDE_FILE xhci-trace