Commit be30fc4b authored by Aguilar Pena, Leed's avatar Aguilar Pena, Leed Committed by Greg Kroah-Hartman

USB: twl4030: Enable USB regulators before enabling USB charging

For TWL family of power management ICs, USB charging works only
when USB regulators are in enabled state: 3v1, 1v5, 1v8

On a USB cable attach, twl4030_phy_resume(twl) function enables
the regulators. Enable USB charging, only after all regulators
are enabled.

Its observed that enabling USB charging before regulators are
enabled, causes USB charging to fail.

Tested on: Zoom2: omap3430: ES3.1 + TWL5030
Needs T2-MADC and T2-BCI drivers which are still not upstreamed.
Signed-off-by: default avatarMoiz Sonasath <m-sonasath@ti.com>
Signed-off-by: default avatarLeed Aguilar <leed.aguilar@ti.com>
Acked-by: default avatarVikram Pandita <vikram.pandita@ti.com>
Acked-by: default avatarAnand Gadiyar <gadiyar@ti.com>
Acked-by: default avatarNishanth Menon <nm@ti.com>
Acked-by: default avatarFelipe Balbi <felipe.balbi@nokia.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent ec412b92
...@@ -598,12 +598,12 @@ static irqreturn_t twl4030_usb_irq(int irq, void *_twl) ...@@ -598,12 +598,12 @@ static irqreturn_t twl4030_usb_irq(int irq, void *_twl)
* USB_LINK_VBUS state. musb_hdrc won't care until it * USB_LINK_VBUS state. musb_hdrc won't care until it
* starts to handle softconnect right. * starts to handle softconnect right.
*/ */
twl4030charger_usb_en(status == USB_LINK_VBUS);
if (status == USB_LINK_NONE) if (status == USB_LINK_NONE)
twl4030_phy_suspend(twl, 0); twl4030_phy_suspend(twl, 0);
else else
twl4030_phy_resume(twl); twl4030_phy_resume(twl);
twl4030charger_usb_en(status == USB_LINK_VBUS);
} }
sysfs_notify(&twl->dev->kobj, NULL, "vbus"); sysfs_notify(&twl->dev->kobj, NULL, "vbus");
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment