summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMathias Nyman2017-10-05 10:21:48 +0200
committerGreg Kroah-Hartman2017-10-05 11:01:58 +0200
commite3a78ff022c64b518d3efd9ea0f26a784dc0b629 (patch)
treefe341f35e289328b4448b8f77acd9e08b273fe9a
parentxhci: allow TRACE to work with EVENT ring dequeue (diff)
downloadkernel-qcow2-linux-e3a78ff022c64b518d3efd9ea0f26a784dc0b629.tar.gz
kernel-qcow2-linux-e3a78ff022c64b518d3efd9ea0f26a784dc0b629.tar.xz
kernel-qcow2-linux-e3a78ff022c64b518d3efd9ea0f26a784dc0b629.zip
xhci: trace slot context when calling xhci_configure_endpoint()
Add trace showing content of input slot context for configure endpoint and evaluate context commands Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/usb/host/xhci-trace.h5
-rw-r--r--drivers/usb/host/xhci.c4
2 files changed, 9 insertions, 0 deletions
diff --git a/drivers/usb/host/xhci-trace.h b/drivers/usb/host/xhci-trace.h
index f20753b99624..754dfb0e1a02 100644
--- a/drivers/usb/host/xhci-trace.h
+++ b/drivers/usb/host/xhci-trace.h
@@ -388,6 +388,11 @@ DEFINE_EVENT(xhci_log_slot_ctx, xhci_handle_cmd_set_deq,
TP_ARGS(ctx)
);
+DEFINE_EVENT(xhci_log_slot_ctx, xhci_configure_endpoint,
+ TP_PROTO(struct xhci_slot_ctx *ctx),
+ TP_ARGS(ctx)
+);
+
DECLARE_EVENT_CLASS(xhci_log_ring,
TP_PROTO(struct xhci_ring *ring),
TP_ARGS(ring),
diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c
index 870093a69dd2..9c1f1add5cc9 100644
--- a/drivers/usb/host/xhci.c
+++ b/drivers/usb/host/xhci.c
@@ -2564,6 +2564,7 @@ static int xhci_configure_endpoint(struct xhci_hcd *xhci,
unsigned long flags;
struct xhci_input_control_ctx *ctrl_ctx;
struct xhci_virt_device *virt_dev;
+ struct xhci_slot_ctx *slot_ctx;
if (!command)
return -EINVAL;
@@ -2602,6 +2603,9 @@ static int xhci_configure_endpoint(struct xhci_hcd *xhci,
return -ENOMEM;
}
+ slot_ctx = xhci_get_slot_ctx(xhci, command->in_ctx);
+ trace_xhci_configure_endpoint(slot_ctx);
+
if (!ctx_change)
ret = xhci_queue_configure_endpoint(xhci, command,
command->in_ctx->dma,