ehci: mx7: fix otg id detection
authorPeng Fan <van.freenix@gmail.com>
Mon, 20 Jun 2016 01:43:09 +0000 (09:43 +0800)
committerMarek Vasut <marex@denx.de>
Fri, 24 Jun 2016 22:57:10 +0000 (00:57 +0200)
The USBNC_PHYCFG2_ACAENB bit should be cleared to enable the
OTG ID detection, not set it. When the bit is set, the ACA
Resistance Detection is enabled, which disables the OTG ID
detection, because the internal pull up is off.

Signed-off-by: Ye Li <ye.li@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
drivers/usb/host/ehci-mx6.c

index cc3b11c..069f116 100644 (file)
@@ -208,8 +208,11 @@ static void usb_power_config(int index)
                        (0x10000 * index) + USBNC_OFFSET);
        void __iomem *phy_cfg2 = (void __iomem *)(&usbnc->phy_cfg2);
 
-       /* Enable usb_otg_id detection */
-       setbits_le32(phy_cfg2, USBNC_PHYCFG2_ACAENB);
+       /*
+        * Clear the ACAENB to enable usb_otg_id detection,
+        * otherwise it is the ACA detection enabled.
+        */
+       clrbits_le32(phy_cfg2, USBNC_PHYCFG2_ACAENB);
 }
 
 int usb_phy_mode(int port)