[Letux-kernel] a weird thing in phy-twl4030

Andreas Kemnade andreas at kemnade.info
Fri Aug 5 18:10:05 CEST 2016


Hi,

I discovered a quite weird thing in
phy-twl4030:

There are two separate mechanism which power up/down things.
1. via pm_runtime:
twl4030_usb_runtime_suspend()
twl4030_usb_runtime_resume()

2, via phy_power_off()/phy_power on() (which is used from
drivers/usb/musb/omap2430.c
twl4030_phy_power_on()
twl4030_phy_power_off()

The infamous OTG_EN bit is enabled by the latter pair. phy_power_off()
and phy_power_on() is not called in a balanced way.
Moving things between these two might fix things.
But I do not know the rationale behind that division yet.
I am writing about that now to get some more brains involved.

Regards,
Andreas


More information about the Letux-kernel mailing list