diff options
| author | Andreas Kemnade <[email protected]> | 2016-08-24 22:27:59 +0000 |
|---|---|---|
| committer | Kishon Vijay Abraham I <[email protected]> | 2016-09-14 05:29:12 +0000 |
| commit | b78ea84a7d45b9e5ad2eee429a2140065a39d755 (patch) | |
| tree | e588a7b3dc161cca048fe551533cc1973e90a31b /drivers/usb/class/cdc-acm.c | |
| parent | phy-twl4030-usb: better handle musb_mailbox() failure (diff) | |
| download | kernel-b78ea84a7d45b9e5ad2eee429a2140065a39d755.tar.gz kernel-b78ea84a7d45b9e5ad2eee429a2140065a39d755.zip | |
phy-twl4030-usb: initialize charging-related stuff via pm_runtime
twl4030_phy_power_on() initializes some bits which are required for
charging. As they are not set in twl4030_usb_runtime_resume()
a call to pm_runtime_get_sync() is not sufficient to enable charging.
This patch moves the initialization to twl4030_usb_runtime_resume()
so everything needed for charging is initialized upon
pm_runtime_get_sync().
That also gives improved possibilities to debug problems in that area
because the relevant parts can be checked separately. Charging can be
enabled without having the musb subsystem active.
As a side effect this hides some bugs in musb which causes
unbalanced calls to phy_power_off()/phy_power_on() so that
phy->power_count becomes -1.
The result is that e.g. the GTA04 phone (dm3730 + twl4030) works
finally as a usb gadget again and charging is working.
Signed-off-by: Andreas Kemnade <[email protected]>
Acked-by: Tony Lindgren <[email protected]>
Signed-off-by: Kishon Vijay Abraham I <[email protected]>
Diffstat (limited to 'drivers/usb/class/cdc-acm.c')
0 files changed, 0 insertions, 0 deletions
