linux-sg2042/drivers/usb
Enric Balletbo i Serra dc1b5d9aed usb: dwc3: Fix core validation in probe, move after clocks are enabled
The required clocks needs to be enabled before the first register
access. After commit fe8abf332b ("usb: dwc3: support clocks and resets
for DWC3 core"), this happens when the dwc3_core_is_valid function is
called, but the mentioned commit adds that call in the wrong place,
before the clocks are enabled. So, move that call after the
clk_bulk_enable() to ensure the clocks are enabled and the reset
deasserted.

I detected this while, as experiment, I tried to move the clocks and resets
from the glue layer to the DWC3 core on a Samsung Chromebook Plus.

That was not detected before because, in most cases, the glue layer
initializes SoC-specific things and then populates the child "snps,dwc3"
with those clocks already enabled.

Fixes: b873e2d0ea ("usb: dwc3: Do core validation early on probe")
Signed-off-by: Enric Balletbo i Serra <enric.balletbo@collabora.com>
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
2019-06-18 11:58:29 +03:00
..
atm USB: atm: ueagle-atm.c: remove redundant license text 2019-06-03 15:21:57 +02:00
c67x00
chipidea usb: chipidea: msm: get optional clock by devm_clk_get_optional() 2019-04-19 14:24:26 +02:00
class usb: cdc-wdm: remove redundant assignment to rv 2019-06-03 15:21:56 +02:00
common USB: move usb debugfs directory creation to the usb common core 2019-06-06 08:59:19 +02:00
core Merge 5.2-rc5 into usb-next 2019-06-17 11:23:24 +02:00
dwc2 Revert "usb: dwc2: host: Setting qtd to NULL after freeing it" 2019-06-18 11:58:29 +03:00
dwc3 usb: dwc3: Fix core validation in probe, move after clocks are enabled 2019-06-18 11:58:29 +03:00
early drivers: Remove explicit invocations of mmiowb() 2019-04-08 12:01:02 +01:00
gadget usb: gadget: net2272: remove redundant assignments to pointer 's' 2019-06-18 11:58:29 +03:00
host usb: host: u132-hcd: remove unneeded variable frame 2019-06-06 08:59:19 +02:00
image USB: add missing SPDX lines to Kconfig and Makefiles 2019-01-22 09:08:17 +01:00
isp1760 usb: isp1760-hcd: Fix fall-through annotations 2019-05-01 18:13:52 +02:00
misc USB: sisusbvga: Remove unneeded variable 2019-06-10 18:03:09 +02:00
mon USB: add missing SPDX lines to Kconfig and Makefiles 2019-01-22 09:08:17 +01:00
mtu3 Revert "usb: mtu3: fix up undefined reference to usb_debug_root" 2019-06-10 19:43:57 +02:00
musb usb: musb: dsps: Use dev_get_drvdata() 2019-04-30 17:55:08 +02:00
phy Merge 5.2-rc5 into usb-next 2019-06-17 11:23:24 +02:00
renesas_usbhs usb: renesas_usbhs: remove controlling PWEN/EXTLP support 2019-06-05 11:54:38 +02:00
roles usb: roles: Find the muxes by also matching against the device node 2019-02-14 10:52:25 +01:00
serial USB: serial: option: add Telit 0x1260 and 0x1261 compositions 2019-05-21 11:27:24 +02:00
storage USB: usb-storage: Add new ID to ums-realtek 2019-06-05 11:52:42 +02:00
typec Merge 5.2-rc5 into usb-next 2019-06-17 11:23:24 +02:00
usbip usbip: Replace unused kvec array with single variable in vhci_send_cmd_unlink() 2019-06-05 11:54:38 +02:00
wusbcore wusb: Remove unnecessary static function ckhdid_printf 2019-03-01 20:53:41 +01:00
Kconfig USB: add missing SPDX lines to Kconfig and Makefiles 2019-01-22 09:08:17 +01:00
Makefile USB: move usb debugfs directory creation to the usb common core 2019-06-06 08:59:19 +02:00
usb-skeleton.c