b08633eb883eaccf3120f3e66af2bd8031ecd129
[openwrt/staging/hauke.git] /
1 From c1f9fa8de2548172a69f35aeb6a43daedac7cb30 Mon Sep 17 00:00:00 2001
2 From: Peter Chen <peter.chen@nxp.com>
3 Date: Mon, 5 Mar 2018 09:13:26 +0800
4 Subject: [PATCH] MLK-19153-2 usb: host: xhci: do not return error status for
5 URB
6
7 Current XHCI implementation does not consider completion interrupt
8 for SETUP packet standalone, so it will show warning message
9 and return error status for URB. In fact, it can support it. In
10 this commit, we change warning message as debug message and set
11 status as zero for URB.
12
13 Support completion interrupt for SETUP packet is needed for USB EH2.0
14 SINGLE_STEP_SET_FEATURE Test.
15
16 Acked-by: Jun Li <jun.li@nxp.com>
17 Signed-off-by: Peter Chen <peter.chen@nxp.com>
18 (cherry picked from commit 78b212e8c2e083f513610efdff60b58c986381de)
19 ---
20 drivers/usb/host/xhci-ring.c | 7 ++-----
21 1 file changed, 2 insertions(+), 5 deletions(-)
22
23 --- a/drivers/usb/host/xhci-ring.c
24 +++ b/drivers/usb/host/xhci-ring.c
25 @@ -2058,12 +2058,9 @@ static int process_ctrl_td(struct xhci_h
26
27 switch (trb_comp_code) {
28 case COMP_SUCCESS:
29 - if (trb_type != TRB_STATUS) {
30 - xhci_warn(xhci, "WARN: Success on ctrl %s TRB without IOC set?\n",
31 + if (trb_type != TRB_STATUS)
32 + xhci_dbg(xhci, "Success on ctrl %s TRB without IOC set?\n",
33 (trb_type == TRB_DATA) ? "data" : "setup");
34 - *status = -ESHUTDOWN;
35 - break;
36 - }
37 *status = 0;
38 break;
39 case COMP_SHORT_PACKET: