linux/drivers/usb
William Wu 223064da40 usb: dwc3: fix runtime pm when current_dr_role is not set
The current runtime suspend/resume do nothing when the
current_dr_role is not set. It may fail to do core init
in some scenes.

Test on RK3588 EVB2 or NVR Demo which have Type-A OTG
port, without this patch, the USB ADB enumeration failed
occasionally. When this error happens, we can find that
the register GUSB2PHYCFG(0) isn't initialized correctly.

It's because that during dwc3 probe, if the drd_work which
called from dwc3_drd_init() is scheduled behind the runtime
suspend process, the current_dr_role will be uninitialized,
this cause the runtime resume process doing nothing and put
the dwc3 phy in uninitialized status.

This patch add dwc3_core_init and dwc3_core_exit operation
for runtime suspend/resume when the current_dr_role is not
initialized.

Signed-off-by: William Wu <william.wu@rock-chips.com>
Change-Id: I294bcf2ad68136e9eb24a9e4a1ad389e73c974d2
2022-03-01 16:20:42 +08:00
..
atm
c67x00
cdns3 usb: cdns3: Fixed incorrect gadget state 2021-08-12 13:22:10 +02:00
chipidea usb: chipidea: imx: Fix Battery Charger 1.2 CDP detection 2021-06-23 14:42:50 +02:00
class USB: usbtmc: Fix RCU stall warning 2021-08-12 13:22:08 +02:00
common This is the 5.10.58 stable release 2021-08-12 14:58:34 +02:00
core Merge tag 'ASB-2021-12-05_12-5.10' of https://android.googlesource.com/kernel/common 2021-12-14 17:09:02 +08:00
dwc2 Merge tag 'ASB-2021-12-05_12-5.10' of https://android.googlesource.com/kernel/common 2021-12-14 17:09:02 +08:00
dwc3 usb: dwc3: fix runtime pm when current_dr_role is not set 2022-03-01 16:20:42 +08:00
early
gadget Merge tag 'ASB-2021-12-05_12-5.10' of https://android.googlesource.com/kernel/common 2021-12-14 17:09:02 +08:00
host usb: host: xhci: skip phy init quirk can configure in dt 2022-01-13 15:33:47 +08:00
image
isp1760
misc USB: trancevibrator: fix control-request direction 2021-06-03 09:00:34 +02:00
mon
mtu3 usb: mtu3: fix the wrong HS mult value 2021-09-12 08:58:28 +02:00
musb usb: musb: fix MUSB_QUIRK_B_DISCONNECT_99 handling 2021-06-16 12:01:41 +02:00
phy usb: phy: tahvo: add IRQ check 2021-09-15 09:50:40 +02:00
renesas_usbhs usb: renesas_usbhs: Fix superfluous irqs happen after usb_pkt_pop() 2021-07-28 14:35:44 +02:00
roles
serial USB: serial: mos7720: improve OOM-handling in read_mos_reg() 2021-09-12 08:58:26 +02:00
storage Merge tag 'ASB-2021-12-05_12-5.10' of https://android.googlesource.com/kernel/common 2021-12-14 17:09:02 +08:00
typec usb: typec: tcpm: husb311: disable i2c timeout reset function 2022-02-08 14:32:05 +08:00
usbip
Kconfig
Makefile
usb-skeleton.c