usb: dwc2: host: implement test mode
authorJingwu Lin <jingwu.lin@intel.com>
Wed, 29 Apr 2015 20:09:17 +0000 (22:09 +0200)
committerFelipe Balbi <balbi@ti.com>
Wed, 29 Apr 2015 20:20:05 +0000 (15:20 -0500)
Add support for SetPortFeature(PORT_TEST) for root port.

Acked-by: John Youn <johnyoun@synopsys.com>
Signed-off-by: Jingwu Lin <jingwu.lin@intel.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
drivers/usb/dwc2/hcd.c

index 745230d0d8b31091b0297608042aa28572d6872d..4773d2770363cea8f5ae7c12bae92c88547c67e9 100644 (file)
@@ -1779,6 +1779,15 @@ static int dwc2_hcd_hub_control(struct dwc2_hsotg *hsotg, u16 typereq,
                        /* Not supported */
                        break;
 
+               case USB_PORT_FEAT_TEST:
+                       hprt0 = dwc2_read_hprt0(hsotg);
+                       dev_dbg(hsotg->dev,
+                               "SetPortFeature - USB_PORT_FEAT_TEST\n");
+                       hprt0 &= ~HPRT0_TSTCTL_MASK;
+                       hprt0 |= (windex >> 8) << HPRT0_TSTCTL_SHIFT;
+                       writel(hprt0, hsotg->regs + HPRT0);
+                       break;
+
                default:
                        retval = -EINVAL;
                        dev_err(hsotg->dev,