diff options
author | Felipe Balbi <felipe.balbi@linux.intel.com> | 2016-11-03 08:07:51 -0400 |
---|---|---|
committer | Felipe Balbi <felipe.balbi@linux.intel.com> | 2016-11-08 05:52:13 -0500 |
commit | 5eb30cedced64cea63005555c1ef67359ffe191f (patch) | |
tree | 1d4425e3d82b22fa1aaa54e82e84e2df2d040a67 | |
parent | 2870e5013e199fab8ba6e4a0e7d0614d46dc9e36 (diff) |
usb: dwc3: trace: purge dwc3_trace()
Finally get rid of dwc3_trace() hack. If any other
message is truly needed, we should add proper
tracepoints for them instead of hacking around with
dwc3_trace() or similar.
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
-rw-r--r-- | drivers/usb/dwc3/Makefile | 2 | ||||
-rw-r--r-- | drivers/usb/dwc3/core.c | 15 | ||||
-rw-r--r-- | drivers/usb/dwc3/debug.c | 32 | ||||
-rw-r--r-- | drivers/usb/dwc3/debug.h | 7 | ||||
-rw-r--r-- | drivers/usb/dwc3/ep0.c | 46 | ||||
-rw-r--r-- | drivers/usb/dwc3/gadget.c | 57 |
6 files changed, 24 insertions, 135 deletions
diff --git a/drivers/usb/dwc3/Makefile b/drivers/usb/dwc3/Makefile index 84de1e4151c4..ffca34029b21 100644 --- a/drivers/usb/dwc3/Makefile +++ b/drivers/usb/dwc3/Makefile | |||
@@ -6,7 +6,7 @@ obj-$(CONFIG_USB_DWC3) += dwc3.o | |||
6 | dwc3-y := core.o | 6 | dwc3-y := core.o |
7 | 7 | ||
8 | ifneq ($(CONFIG_FTRACE),) | 8 | ifneq ($(CONFIG_FTRACE),) |
9 | dwc3-y += debug.o trace.o | 9 | dwc3-y += trace.o |
10 | endif | 10 | endif |
11 | 11 | ||
12 | ifneq ($(filter y,$(CONFIG_USB_DWC3_HOST) $(CONFIG_USB_DWC3_DUAL_ROLE)),) | 12 | ifneq ($(filter y,$(CONFIG_USB_DWC3_HOST) $(CONFIG_USB_DWC3_DUAL_ROLE)),) |
diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c index 5e61ef6a378d..037052db50ef 100644 --- a/drivers/usb/dwc3/core.c +++ b/drivers/usb/dwc3/core.c | |||
@@ -305,13 +305,7 @@ static int dwc3_event_buffers_setup(struct dwc3 *dwc) | |||
305 | struct dwc3_event_buffer *evt; | 305 | struct dwc3_event_buffer *evt; |
306 | 306 | ||
307 | evt = dwc->ev_buf; | 307 | evt = dwc->ev_buf; |
308 | dwc3_trace(trace_dwc3_core, | ||
309 | "Event buf %p dma %08llx length %d\n", | ||
310 | evt->buf, (unsigned long long) evt->dma, | ||
311 | evt->length); | ||
312 | |||
313 | evt->lpos = 0; | 308 | evt->lpos = 0; |
314 | |||
315 | dwc3_writel(dwc->regs, DWC3_GEVNTADRLO(0), | 309 | dwc3_writel(dwc->regs, DWC3_GEVNTADRLO(0), |
316 | lower_32_bits(evt->dma)); | 310 | lower_32_bits(evt->dma)); |
317 | dwc3_writel(dwc->regs, DWC3_GEVNTADRHI(0), | 311 | dwc3_writel(dwc->regs, DWC3_GEVNTADRHI(0), |
@@ -428,9 +422,6 @@ static void dwc3_core_num_eps(struct dwc3 *dwc) | |||
428 | 422 | ||
429 | dwc->num_in_eps = DWC3_NUM_IN_EPS(parms); | 423 | dwc->num_in_eps = DWC3_NUM_IN_EPS(parms); |
430 | dwc->num_out_eps = DWC3_NUM_EPS(parms) - dwc->num_in_eps; | 424 | dwc->num_out_eps = DWC3_NUM_EPS(parms) - dwc->num_in_eps; |
431 | |||
432 | dwc3_trace(trace_dwc3_core, "found %d IN and %d OUT endpoints", | ||
433 | dwc->num_in_eps, dwc->num_out_eps); | ||
434 | } | 425 | } |
435 | 426 | ||
436 | static void dwc3_cache_hwparams(struct dwc3 *dwc) | 427 | static void dwc3_cache_hwparams(struct dwc3 *dwc) |
@@ -656,13 +647,13 @@ static void dwc3_core_setup_global_control(struct dwc3 *dwc) | |||
656 | reg |= DWC3_GCTL_GBLHIBERNATIONEN; | 647 | reg |= DWC3_GCTL_GBLHIBERNATIONEN; |
657 | break; | 648 | break; |
658 | default: | 649 | default: |
659 | dwc3_trace(trace_dwc3_core, "No power optimization available\n"); | 650 | /* nothing */ |
651 | break; | ||
660 | } | 652 | } |
661 | 653 | ||
662 | /* check if current dwc3 is on simulation board */ | 654 | /* check if current dwc3 is on simulation board */ |
663 | if (dwc->hwparams.hwparams6 & DWC3_GHWPARAMS6_EN_FPGA) { | 655 | if (dwc->hwparams.hwparams6 & DWC3_GHWPARAMS6_EN_FPGA) { |
664 | dwc3_trace(trace_dwc3_core, | 656 | dev_info(dwc->dev, "Running with FPGA optmizations\n"); |
665 | "running on FPGA platform\n"); | ||
666 | dwc->is_fpga = true; | 657 | dwc->is_fpga = true; |
667 | } | 658 | } |
668 | 659 | ||
diff --git a/drivers/usb/dwc3/debug.c b/drivers/usb/dwc3/debug.c deleted file mode 100644 index 0be6885bc370..000000000000 --- a/drivers/usb/dwc3/debug.c +++ /dev/null | |||
@@ -1,32 +0,0 @@ | |||
1 | /** | ||
2 | * debug.c - DesignWare USB3 DRD Controller Debug/Trace Support | ||
3 | * | ||
4 | * Copyright (C) 2014 Texas Instruments Incorporated - http://www.ti.com | ||
5 | * | ||
6 | * Author: Felipe Balbi <balbi@ti.com> | ||
7 | * | ||
8 | * This program is free software: you can redistribute it and/or modify | ||
9 | * it under the terms of the GNU General Public License version 2 of | ||
10 | * the License as published by the Free Software Foundation. | ||
11 | * | ||
12 | * This program is distributed in the hope that it will be useful, | ||
13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
15 | * GNU General Public License for more details. | ||
16 | */ | ||
17 | |||
18 | #include "debug.h" | ||
19 | |||
20 | void dwc3_trace(void (*trace)(struct va_format *), const char *fmt, ...) | ||
21 | { | ||
22 | struct va_format vaf; | ||
23 | va_list args; | ||
24 | |||
25 | va_start(args, fmt); | ||
26 | vaf.fmt = fmt; | ||
27 | vaf.va = &args; | ||
28 | |||
29 | trace(&vaf); | ||
30 | |||
31 | va_end(args); | ||
32 | } | ||
diff --git a/drivers/usb/dwc3/debug.h b/drivers/usb/dwc3/debug.h index d93780e84f07..eeed4ffd8131 100644 --- a/drivers/usb/dwc3/debug.h +++ b/drivers/usb/dwc3/debug.h | |||
@@ -345,13 +345,6 @@ static inline const char *dwc3_gadget_generic_cmd_status_string(int status) | |||
345 | } | 345 | } |
346 | 346 | ||
347 | 347 | ||
348 | #if IS_ENABLED(CONFIG_FTRACE) | ||
349 | void dwc3_trace(void (*trace)(struct va_format *), const char *fmt, ...); | ||
350 | #else | ||
351 | static inline void dwc3_trace(void (*trace)(struct va_format *), const char *fmt, ...) | ||
352 | { } | ||
353 | #endif | ||
354 | |||
355 | #ifdef CONFIG_DEBUG_FS | 348 | #ifdef CONFIG_DEBUG_FS |
356 | extern void dwc3_debugfs_init(struct dwc3 *); | 349 | extern void dwc3_debugfs_init(struct dwc3 *); |
357 | extern void dwc3_debugfs_exit(struct dwc3 *); | 350 | extern void dwc3_debugfs_exit(struct dwc3 *); |
diff --git a/drivers/usb/dwc3/ep0.c b/drivers/usb/dwc3/ep0.c index 15b62a5aaff8..2b22ea7263d8 100644 --- a/drivers/usb/dwc3/ep0.c +++ b/drivers/usb/dwc3/ep0.c | |||
@@ -49,10 +49,8 @@ static int dwc3_ep0_start_trans(struct dwc3 *dwc, u8 epnum, dma_addr_t buf_dma, | |||
49 | int ret; | 49 | int ret; |
50 | 50 | ||
51 | dep = dwc->eps[epnum]; | 51 | dep = dwc->eps[epnum]; |
52 | if (dep->flags & DWC3_EP_BUSY) { | 52 | if (dep->flags & DWC3_EP_BUSY) |
53 | dwc3_trace(trace_dwc3_ep0, "%s still busy", dep->name); | ||
54 | return 0; | 53 | return 0; |
55 | } | ||
56 | 54 | ||
57 | trb = &dwc->ep0_trb[dep->trb_enqueue]; | 55 | trb = &dwc->ep0_trb[dep->trb_enqueue]; |
58 | 56 | ||
@@ -144,9 +142,6 @@ static int __dwc3_gadget_ep0_queue(struct dwc3_ep *dep, | |||
144 | 142 | ||
145 | if (dwc->ep0state == EP0_STATUS_PHASE) | 143 | if (dwc->ep0state == EP0_STATUS_PHASE) |
146 | __dwc3_ep0_do_control_status(dwc, dwc->eps[direction]); | 144 | __dwc3_ep0_do_control_status(dwc, dwc->eps[direction]); |
147 | else | ||
148 | dwc3_trace(trace_dwc3_ep0, | ||
149 | "too early for delayed status"); | ||
150 | 145 | ||
151 | return 0; | 146 | return 0; |
152 | } | 147 | } |
@@ -210,9 +205,8 @@ int dwc3_gadget_ep0_queue(struct usb_ep *ep, struct usb_request *request, | |||
210 | 205 | ||
211 | spin_lock_irqsave(&dwc->lock, flags); | 206 | spin_lock_irqsave(&dwc->lock, flags); |
212 | if (!dep->endpoint.desc) { | 207 | if (!dep->endpoint.desc) { |
213 | dwc3_trace(trace_dwc3_ep0, | 208 | dev_err(dwc->dev, "%s: can't queue to disabled endpoint\n", |
214 | "trying to queue request %p to disabled %s", | 209 | dep->name); |
215 | request, dep->name); | ||
216 | ret = -ESHUTDOWN; | 210 | ret = -ESHUTDOWN; |
217 | goto out; | 211 | goto out; |
218 | } | 212 | } |
@@ -574,13 +568,12 @@ static int dwc3_ep0_set_address(struct dwc3 *dwc, struct usb_ctrlrequest *ctrl) | |||
574 | 568 | ||
575 | addr = le16_to_cpu(ctrl->wValue); | 569 | addr = le16_to_cpu(ctrl->wValue); |
576 | if (addr > 127) { | 570 | if (addr > 127) { |
577 | dwc3_trace(trace_dwc3_ep0, "invalid device address %d", addr); | 571 | dev_err(dwc->dev, "invalid device address %d\n", addr); |
578 | return -EINVAL; | 572 | return -EINVAL; |
579 | } | 573 | } |
580 | 574 | ||
581 | if (state == USB_STATE_CONFIGURED) { | 575 | if (state == USB_STATE_CONFIGURED) { |
582 | dwc3_trace(trace_dwc3_ep0, | 576 | dev_err(dwc->dev, "can't SetAddress() from Configured State\n"); |
583 | "trying to set address when configured"); | ||
584 | return -EINVAL; | 577 | return -EINVAL; |
585 | } | 578 | } |
586 | 579 | ||
@@ -765,35 +758,27 @@ static int dwc3_ep0_std_request(struct dwc3 *dwc, struct usb_ctrlrequest *ctrl) | |||
765 | 758 | ||
766 | switch (ctrl->bRequest) { | 759 | switch (ctrl->bRequest) { |
767 | case USB_REQ_GET_STATUS: | 760 | case USB_REQ_GET_STATUS: |
768 | dwc3_trace(trace_dwc3_ep0, "USB_REQ_GET_STATUS"); | ||
769 | ret = dwc3_ep0_handle_status(dwc, ctrl); | 761 | ret = dwc3_ep0_handle_status(dwc, ctrl); |
770 | break; | 762 | break; |
771 | case USB_REQ_CLEAR_FEATURE: | 763 | case USB_REQ_CLEAR_FEATURE: |
772 | dwc3_trace(trace_dwc3_ep0, "USB_REQ_CLEAR_FEATURE"); | ||
773 | ret = dwc3_ep0_handle_feature(dwc, ctrl, 0); | 764 | ret = dwc3_ep0_handle_feature(dwc, ctrl, 0); |
774 | break; | 765 | break; |
775 | case USB_REQ_SET_FEATURE: | 766 | case USB_REQ_SET_FEATURE: |
776 | dwc3_trace(trace_dwc3_ep0, "USB_REQ_SET_FEATURE"); | ||
777 | ret = dwc3_ep0_handle_feature(dwc, ctrl, 1); | 767 | ret = dwc3_ep0_handle_feature(dwc, ctrl, 1); |
778 | break; | 768 | break; |
779 | case USB_REQ_SET_ADDRESS: | 769 | case USB_REQ_SET_ADDRESS: |
780 | dwc3_trace(trace_dwc3_ep0, "USB_REQ_SET_ADDRESS"); | ||
781 | ret = dwc3_ep0_set_address(dwc, ctrl); | 770 | ret = dwc3_ep0_set_address(dwc, ctrl); |
782 | break; | 771 | break; |
783 | case USB_REQ_SET_CONFIGURATION: | 772 | case USB_REQ_SET_CONFIGURATION: |
784 | dwc3_trace(trace_dwc3_ep0, "USB_REQ_SET_CONFIGURATION"); | ||
785 | ret = dwc3_ep0_set_config(dwc, ctrl); | 773 | ret = dwc3_ep0_set_config(dwc, ctrl); |
786 | break; | 774 | break; |
787 | case USB_REQ_SET_SEL: | 775 | case USB_REQ_SET_SEL: |
788 | dwc3_trace(trace_dwc3_ep0, "USB_REQ_SET_SEL"); | ||
789 | ret = dwc3_ep0_set_sel(dwc, ctrl); | 776 | ret = dwc3_ep0_set_sel(dwc, ctrl); |
790 | break; | 777 | break; |
791 | case USB_REQ_SET_ISOCH_DELAY: | 778 | case USB_REQ_SET_ISOCH_DELAY: |
792 | dwc3_trace(trace_dwc3_ep0, "USB_REQ_SET_ISOCH_DELAY"); | ||
793 | ret = dwc3_ep0_set_isoch_delay(dwc, ctrl); | 779 | ret = dwc3_ep0_set_isoch_delay(dwc, ctrl); |
794 | break; | 780 | break; |
795 | default: | 781 | default: |
796 | dwc3_trace(trace_dwc3_ep0, "Forwarding to gadget driver"); | ||
797 | ret = dwc3_ep0_delegate_req(dwc, ctrl); | 782 | ret = dwc3_ep0_delegate_req(dwc, ctrl); |
798 | break; | 783 | break; |
799 | } | 784 | } |
@@ -869,9 +854,6 @@ static void dwc3_ep0_complete_data(struct dwc3 *dwc, | |||
869 | status = DWC3_TRB_SIZE_TRBSTS(trb->size); | 854 | status = DWC3_TRB_SIZE_TRBSTS(trb->size); |
870 | if (status == DWC3_TRBSTS_SETUP_PENDING) { | 855 | if (status == DWC3_TRBSTS_SETUP_PENDING) { |
871 | dwc->setup_packet_pending = true; | 856 | dwc->setup_packet_pending = true; |
872 | |||
873 | dwc3_trace(trace_dwc3_ep0, "Setup Pending received"); | ||
874 | |||
875 | if (r) | 857 | if (r) |
876 | dwc3_gadget_giveback(ep0, r, -ECONNRESET); | 858 | dwc3_gadget_giveback(ep0, r, -ECONNRESET); |
877 | 859 | ||
@@ -961,7 +943,7 @@ static void dwc3_ep0_complete_status(struct dwc3 *dwc, | |||
961 | 943 | ||
962 | ret = dwc3_gadget_set_test_mode(dwc, dwc->test_mode_nr); | 944 | ret = dwc3_gadget_set_test_mode(dwc, dwc->test_mode_nr); |
963 | if (ret < 0) { | 945 | if (ret < 0) { |
964 | dwc3_trace(trace_dwc3_ep0, "Invalid Test #%d", | 946 | dev_err(dwc->dev, "invalid test #%d\n", |
965 | dwc->test_mode_nr); | 947 | dwc->test_mode_nr); |
966 | dwc3_ep0_stall_and_restart(dwc); | 948 | dwc3_ep0_stall_and_restart(dwc); |
967 | return; | 949 | return; |
@@ -969,10 +951,8 @@ static void dwc3_ep0_complete_status(struct dwc3 *dwc, | |||
969 | } | 951 | } |
970 | 952 | ||
971 | status = DWC3_TRB_SIZE_TRBSTS(trb->size); | 953 | status = DWC3_TRB_SIZE_TRBSTS(trb->size); |
972 | if (status == DWC3_TRBSTS_SETUP_PENDING) { | 954 | if (status == DWC3_TRBSTS_SETUP_PENDING) |
973 | dwc->setup_packet_pending = true; | 955 | dwc->setup_packet_pending = true; |
974 | dwc3_trace(trace_dwc3_ep0, "Setup Pending received"); | ||
975 | } | ||
976 | 956 | ||
977 | dwc->ep0state = EP0_SETUP_PHASE; | 957 | dwc->ep0state = EP0_SETUP_PHASE; |
978 | dwc3_ep0_out_start(dwc); | 958 | dwc3_ep0_out_start(dwc); |
@@ -1022,10 +1002,8 @@ static void __dwc3_ep0_do_control_data(struct dwc3 *dwc, | |||
1022 | 1002 | ||
1023 | ret = usb_gadget_map_request(&dwc->gadget, &req->request, | 1003 | ret = usb_gadget_map_request(&dwc->gadget, &req->request, |
1024 | dep->number); | 1004 | dep->number); |
1025 | if (ret) { | 1005 | if (ret) |
1026 | dwc3_trace(trace_dwc3_ep0, "failed to map request"); | ||
1027 | return; | 1006 | return; |
1028 | } | ||
1029 | 1007 | ||
1030 | maxpacket = dep->endpoint.maxpacket; | 1008 | maxpacket = dep->endpoint.maxpacket; |
1031 | 1009 | ||
@@ -1050,10 +1028,8 @@ static void __dwc3_ep0_do_control_data(struct dwc3 *dwc, | |||
1050 | } else { | 1028 | } else { |
1051 | ret = usb_gadget_map_request(&dwc->gadget, &req->request, | 1029 | ret = usb_gadget_map_request(&dwc->gadget, &req->request, |
1052 | dep->number); | 1030 | dep->number); |
1053 | if (ret) { | 1031 | if (ret) |
1054 | dwc3_trace(trace_dwc3_ep0, "failed to map request"); | ||
1055 | return; | 1032 | return; |
1056 | } | ||
1057 | 1033 | ||
1058 | ret = dwc3_ep0_start_trans(dwc, dep->number, req->request.dma, | 1034 | ret = dwc3_ep0_start_trans(dwc, dep->number, req->request.dma, |
1059 | req->request.length, DWC3_TRBCTL_CONTROL_DATA, | 1035 | req->request.length, DWC3_TRBCTL_CONTROL_DATA, |
@@ -1123,8 +1099,7 @@ static void dwc3_ep0_xfernotready(struct dwc3 *dwc, | |||
1123 | if (dwc->ep0_expect_in != event->endpoint_number) { | 1099 | if (dwc->ep0_expect_in != event->endpoint_number) { |
1124 | struct dwc3_ep *dep = dwc->eps[dwc->ep0_expect_in]; | 1100 | struct dwc3_ep *dep = dwc->eps[dwc->ep0_expect_in]; |
1125 | 1101 | ||
1126 | dwc3_trace(trace_dwc3_ep0, | 1102 | dev_err(dwc->dev, "unexpected direction for Data Phase\n"); |
1127 | "Wrong direction for Data phase"); | ||
1128 | dwc3_ep0_end_control_data(dwc, dep); | 1103 | dwc3_ep0_end_control_data(dwc, dep); |
1129 | dwc3_ep0_stall_and_restart(dwc); | 1104 | dwc3_ep0_stall_and_restart(dwc); |
1130 | return; | 1105 | return; |
@@ -1140,7 +1115,6 @@ static void dwc3_ep0_xfernotready(struct dwc3 *dwc, | |||
1140 | 1115 | ||
1141 | if (dwc->delayed_status) { | 1116 | if (dwc->delayed_status) { |
1142 | WARN_ON_ONCE(event->endpoint_number != 1); | 1117 | WARN_ON_ONCE(event->endpoint_number != 1); |
1143 | dwc3_trace(trace_dwc3_ep0, "Delayed Status"); | ||
1144 | return; | 1118 | return; |
1145 | } | 1119 | } |
1146 | 1120 | ||
diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c index 7e39f0cf4436..e47cba55c431 100644 --- a/drivers/usb/dwc3/gadget.c +++ b/drivers/usb/dwc3/gadget.c | |||
@@ -139,9 +139,6 @@ int dwc3_gadget_set_link_state(struct dwc3 *dwc, enum dwc3_link_state state) | |||
139 | udelay(5); | 139 | udelay(5); |
140 | } | 140 | } |
141 | 141 | ||
142 | dwc3_trace(trace_dwc3_gadget, | ||
143 | "link state change request timed out"); | ||
144 | |||
145 | return -ETIMEDOUT; | 142 | return -ETIMEDOUT; |
146 | } | 143 | } |
147 | 144 | ||
@@ -1115,8 +1112,7 @@ static void __dwc3_gadget_start_isoc(struct dwc3 *dwc, | |||
1115 | u32 uf; | 1112 | u32 uf; |
1116 | 1113 | ||
1117 | if (list_empty(&dep->pending_list)) { | 1114 | if (list_empty(&dep->pending_list)) { |
1118 | dwc3_trace(trace_dwc3_gadget, | 1115 | dev_info(dwc->dev, "%s: ran out of requests\n", |
1119 | "ISOC ep %s run out for requests", | ||
1120 | dep->name); | 1116 | dep->name); |
1121 | dep->flags |= DWC3_EP_PENDING_REQUEST; | 1117 | dep->flags |= DWC3_EP_PENDING_REQUEST; |
1122 | return; | 1118 | return; |
@@ -1145,16 +1141,15 @@ static int __dwc3_gadget_ep_queue(struct dwc3_ep *dep, struct dwc3_request *req) | |||
1145 | int ret; | 1141 | int ret; |
1146 | 1142 | ||
1147 | if (!dep->endpoint.desc) { | 1143 | if (!dep->endpoint.desc) { |
1148 | dwc3_trace(trace_dwc3_gadget, | 1144 | dev_err(dwc->dev, "%s: can't queue to disabled endpoint\n", |
1149 | "trying to queue request %p to disabled %s", | 1145 | dep->name); |
1150 | &req->request, dep->endpoint.name); | ||
1151 | return -ESHUTDOWN; | 1146 | return -ESHUTDOWN; |
1152 | } | 1147 | } |
1153 | 1148 | ||
1154 | if (WARN(req->dep != dep, "request %p belongs to '%s'\n", | 1149 | if (WARN(req->dep != dep, "request %p belongs to '%s'\n", |
1155 | &req->request, req->dep->name)) { | 1150 | &req->request, req->dep->name)) { |
1156 | dwc3_trace(trace_dwc3_gadget, "request %p belongs to '%s'", | 1151 | dev_err(dwc->dev, "%s: request %p belongs to '%s'\n", |
1157 | &req->request, req->dep->name); | 1152 | dep->name, &req->request, req->dep->name); |
1158 | return -EINVAL; | 1153 | return -EINVAL; |
1159 | } | 1154 | } |
1160 | 1155 | ||
@@ -1204,10 +1199,6 @@ static int __dwc3_gadget_ep_queue(struct dwc3_ep *dep, struct dwc3_request *req) | |||
1204 | return 0; | 1199 | return 0; |
1205 | 1200 | ||
1206 | ret = __dwc3_gadget_kick_transfer(dep, 0); | 1201 | ret = __dwc3_gadget_kick_transfer(dep, 0); |
1207 | if (ret && ret != -EBUSY) | ||
1208 | dwc3_trace(trace_dwc3_gadget, | ||
1209 | "%s: failed to kick transfers", | ||
1210 | dep->name); | ||
1211 | if (ret == -EBUSY) | 1202 | if (ret == -EBUSY) |
1212 | ret = 0; | 1203 | ret = 0; |
1213 | 1204 | ||
@@ -1226,7 +1217,6 @@ static int __dwc3_gadget_ep_queue_zlp(struct dwc3 *dwc, struct dwc3_ep *dep) | |||
1226 | struct usb_request *request; | 1217 | struct usb_request *request; |
1227 | struct usb_ep *ep = &dep->endpoint; | 1218 | struct usb_ep *ep = &dep->endpoint; |
1228 | 1219 | ||
1229 | dwc3_trace(trace_dwc3_gadget, "queueing ZLP"); | ||
1230 | request = dwc3_gadget_ep_alloc_request(ep, GFP_ATOMIC); | 1220 | request = dwc3_gadget_ep_alloc_request(ep, GFP_ATOMIC); |
1231 | if (!request) | 1221 | if (!request) |
1232 | return -ENOMEM; | 1222 | return -ENOMEM; |
@@ -1345,9 +1335,6 @@ int __dwc3_gadget_ep_set_halt(struct dwc3_ep *dep, int value, int protocol) | |||
1345 | 1335 | ||
1346 | if (!protocol && ((dep->direction && transfer_in_flight) || | 1336 | if (!protocol && ((dep->direction && transfer_in_flight) || |
1347 | (!dep->direction && started))) { | 1337 | (!dep->direction && started))) { |
1348 | dwc3_trace(trace_dwc3_gadget, | ||
1349 | "%s: pending request, cannot halt", | ||
1350 | dep->name); | ||
1351 | return -EAGAIN; | 1338 | return -EAGAIN; |
1352 | } | 1339 | } |
1353 | 1340 | ||
@@ -1465,10 +1452,8 @@ static int __dwc3_gadget_wakeup(struct dwc3 *dwc) | |||
1465 | 1452 | ||
1466 | speed = reg & DWC3_DSTS_CONNECTSPD; | 1453 | speed = reg & DWC3_DSTS_CONNECTSPD; |
1467 | if ((speed == DWC3_DSTS_SUPERSPEED) || | 1454 | if ((speed == DWC3_DSTS_SUPERSPEED) || |
1468 | (speed == DWC3_DSTS_SUPERSPEED_PLUS)) { | 1455 | (speed == DWC3_DSTS_SUPERSPEED_PLUS)) |
1469 | dwc3_trace(trace_dwc3_gadget, "no wakeup on SuperSpeed"); | ||
1470 | return 0; | 1456 | return 0; |
1471 | } | ||
1472 | 1457 | ||
1473 | link_state = DWC3_DSTS_USBLNKST(reg); | 1458 | link_state = DWC3_DSTS_USBLNKST(reg); |
1474 | 1459 | ||
@@ -1477,9 +1462,6 @@ static int __dwc3_gadget_wakeup(struct dwc3 *dwc) | |||
1477 | case DWC3_LINK_STATE_U3: /* in HS, means SUSPEND */ | 1462 | case DWC3_LINK_STATE_U3: /* in HS, means SUSPEND */ |
1478 | break; | 1463 | break; |
1479 | default: | 1464 | default: |
1480 | dwc3_trace(trace_dwc3_gadget, | ||
1481 | "can't wakeup from '%s'", | ||
1482 | dwc3_gadget_link_string(link_state)); | ||
1483 | return -EINVAL; | 1465 | return -EINVAL; |
1484 | } | 1466 | } |
1485 | 1467 | ||
@@ -1584,11 +1566,6 @@ static int dwc3_gadget_run_stop(struct dwc3 *dwc, int is_on, int suspend) | |||
1584 | if (!timeout) | 1566 | if (!timeout) |
1585 | return -ETIMEDOUT; | 1567 | return -ETIMEDOUT; |
1586 | 1568 | ||
1587 | dwc3_trace(trace_dwc3_gadget, "gadget %s data soft-%s", | ||
1588 | dwc->gadget_driver | ||
1589 | ? dwc->gadget_driver->function : "no-function", | ||
1590 | is_on ? "connect" : "disconnect"); | ||
1591 | |||
1592 | return 0; | 1569 | return 0; |
1593 | } | 1570 | } |
1594 | 1571 | ||
@@ -1910,8 +1887,6 @@ static int dwc3_gadget_init_hw_endpoints(struct dwc3 *dwc, | |||
1910 | dep->endpoint.name = dep->name; | 1887 | dep->endpoint.name = dep->name; |
1911 | spin_lock_init(&dep->lock); | 1888 | spin_lock_init(&dep->lock); |
1912 | 1889 | ||
1913 | dwc3_trace(trace_dwc3_gadget, "initializing %s", dep->name); | ||
1914 | |||
1915 | if (epnum == 0 || epnum == 1) { | 1890 | if (epnum == 0 || epnum == 1) { |
1916 | usb_ep_set_maxpacket_limit(&dep->endpoint, 512); | 1891 | usb_ep_set_maxpacket_limit(&dep->endpoint, 512); |
1917 | dep->endpoint.maxburst = 1; | 1892 | dep->endpoint.maxburst = 1; |
@@ -1958,15 +1933,13 @@ static int dwc3_gadget_init_endpoints(struct dwc3 *dwc) | |||
1958 | 1933 | ||
1959 | ret = dwc3_gadget_init_hw_endpoints(dwc, dwc->num_out_eps, 0); | 1934 | ret = dwc3_gadget_init_hw_endpoints(dwc, dwc->num_out_eps, 0); |
1960 | if (ret < 0) { | 1935 | if (ret < 0) { |
1961 | dwc3_trace(trace_dwc3_gadget, | 1936 | dev_err(dwc->dev, "failed to initialize OUT endpoints\n"); |
1962 | "failed to allocate OUT endpoints"); | ||
1963 | return ret; | 1937 | return ret; |
1964 | } | 1938 | } |
1965 | 1939 | ||
1966 | ret = dwc3_gadget_init_hw_endpoints(dwc, dwc->num_in_eps, 1); | 1940 | ret = dwc3_gadget_init_hw_endpoints(dwc, dwc->num_in_eps, 1); |
1967 | if (ret < 0) { | 1941 | if (ret < 0) { |
1968 | dwc3_trace(trace_dwc3_gadget, | 1942 | dev_err(dwc->dev, "failed to initialize IN endpoints\n"); |
1969 | "failed to allocate IN endpoints"); | ||
1970 | return ret; | 1943 | return ret; |
1971 | } | 1944 | } |
1972 | 1945 | ||
@@ -2041,9 +2014,6 @@ static int __dwc3_cleanup_done_trbs(struct dwc3 *dwc, struct dwc3_ep *dep, | |||
2041 | if (count) { | 2014 | if (count) { |
2042 | trb_status = DWC3_TRB_SIZE_TRBSTS(trb->size); | 2015 | trb_status = DWC3_TRB_SIZE_TRBSTS(trb->size); |
2043 | if (trb_status == DWC3_TRBSTS_MISSED_ISOC) { | 2016 | if (trb_status == DWC3_TRBSTS_MISSED_ISOC) { |
2044 | dwc3_trace(trace_dwc3_gadget, | ||
2045 | "%s: incomplete IN transfer", | ||
2046 | dep->name); | ||
2047 | /* | 2017 | /* |
2048 | * If missed isoc occurred and there is | 2018 | * If missed isoc occurred and there is |
2049 | * no request queued then issue END | 2019 | * no request queued then issue END |
@@ -2669,8 +2639,6 @@ static void dwc3_gadget_linksts_change_interrupt(struct dwc3 *dwc, | |||
2669 | (pwropt != DWC3_GHWPARAMS1_EN_PWROPT_HIB)) { | 2639 | (pwropt != DWC3_GHWPARAMS1_EN_PWROPT_HIB)) { |
2670 | if ((dwc->link_state == DWC3_LINK_STATE_U3) && | 2640 | if ((dwc->link_state == DWC3_LINK_STATE_U3) && |
2671 | (next == DWC3_LINK_STATE_RESUME)) { | 2641 | (next == DWC3_LINK_STATE_RESUME)) { |
2672 | dwc3_trace(trace_dwc3_gadget, | ||
2673 | "ignoring transition U3 -> Resume"); | ||
2674 | return; | 2642 | return; |
2675 | } | 2643 | } |
2676 | } | 2644 | } |
@@ -2804,11 +2772,7 @@ static void dwc3_gadget_interrupt(struct dwc3 *dwc, | |||
2804 | break; | 2772 | break; |
2805 | case DWC3_DEVICE_EVENT_EOPF: | 2773 | case DWC3_DEVICE_EVENT_EOPF: |
2806 | /* It changed to be suspend event for version 2.30a and above */ | 2774 | /* It changed to be suspend event for version 2.30a and above */ |
2807 | if (dwc->revision < DWC3_REVISION_230A) { | 2775 | if (dwc->revision >= DWC3_REVISION_230A) { |
2808 | dwc3_trace(trace_dwc3_gadget, "End of Periodic Frame"); | ||
2809 | } else { | ||
2810 | dwc3_trace(trace_dwc3_gadget, "U3/L1-L2 Suspend Event"); | ||
2811 | |||
2812 | /* | 2776 | /* |
2813 | * Ignore suspend event until the gadget enters into | 2777 | * Ignore suspend event until the gadget enters into |
2814 | * USB_STATE_CONFIGURED state. | 2778 | * USB_STATE_CONFIGURED state. |
@@ -3059,8 +3023,7 @@ int dwc3_gadget_init(struct dwc3 *dwc) | |||
3059 | * composite.c that we are USB 2.0 + LPM ECN. | 3023 | * composite.c that we are USB 2.0 + LPM ECN. |
3060 | */ | 3024 | */ |
3061 | if (dwc->revision < DWC3_REVISION_220A) | 3025 | if (dwc->revision < DWC3_REVISION_220A) |
3062 | dwc3_trace(trace_dwc3_gadget, | 3026 | dev_info(dwc->dev, "changing max_speed on rev %08x\n", |
3063 | "Changing max_speed on rev %08x", | ||
3064 | dwc->revision); | 3027 | dwc->revision); |
3065 | 3028 | ||
3066 | dwc->gadget.max_speed = dwc->maximum_speed; | 3029 | dwc->gadget.max_speed = dwc->maximum_speed; |