usb: chipidea: udc: bypass otg status selector handling to gadget driver
authorLi Jun <jun.li@nxp.com>
Fri, 19 Feb 2016 02:04:43 +0000 (10:04 +0800)
committerFelipe Balbi <balbi@kernel.org>
Fri, 4 Mar 2016 13:14:36 +0000 (15:14 +0200)
Since gadget driver will handle this request, so controller driver bypass
it.

Acked-by: Peter Chen <peter.chen@freescale.com>
Signed-off-by: Li Jun <jun.li@nxp.com>
Signed-off-by: Felipe Balbi <balbi@kernel.org>
drivers/usb/chipidea/udc.c

index 00250ab38ddb21ae1106568b68ac968ecc7e9ddf..065f5d97aa6708ebb3239d7778bb185d19412e5b 100644 (file)
@@ -1067,7 +1067,8 @@ __acquires(ci->lock)
                }
                break;
        case USB_REQ_GET_STATUS:
-               if (type != (USB_DIR_IN|USB_RECIP_DEVICE)   &&
+               if ((type != (USB_DIR_IN|USB_RECIP_DEVICE) ||
+                       le16_to_cpu(req.wIndex) == OTG_STS_SELECTOR) &&
                    type != (USB_DIR_IN|USB_RECIP_ENDPOINT) &&
                    type != (USB_DIR_IN|USB_RECIP_INTERFACE))
                        goto delegate;