Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

arm64: dts: rockchip: add reset property for dwc3 controllers on rk3399

After commit '06c47e6286d usb: dwc3: of-simple: Add support to get resets
for the device' you can add the reset property to the dwc3 node, the reset
is required for the controller to work properly, otherwise bind / unbind
stress testing of the USB controller on rk3399 we'd often end up with lots
of failures that looked like this:

phy phy-ff800000.phy.9: phy poweron failed --> -110
dwc3 fe900000.dwc3: failed to initialize core
dwc3: probe of fe900000.dwc3 failed with error -110

Signed-off-by: Enric Balletbo i Serra <enric.balletbo@collabora.com>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>

authored by

Enric Balletbo i Serra and committed by
Heiko Stuebner
b7e63d95 9df8a2d9

+4
+4
arch/arm64/boot/dts/rockchip/rk3399.dtsi
··· 402 402 clock-names = "ref_clk", "suspend_clk", 403 403 "bus_clk", "aclk_usb3_rksoc_axi_perf", 404 404 "aclk_usb3", "grf_clk"; 405 + resets = <&cru SRST_A_USB3_OTG0>; 406 + reset-names = "usb3-otg"; 405 407 status = "disabled"; 406 408 407 409 usbdrd_dwc3_0: dwc3 { ··· 435 433 clock-names = "ref_clk", "suspend_clk", 436 434 "bus_clk", "aclk_usb3_rksoc_axi_perf", 437 435 "aclk_usb3", "grf_clk"; 436 + resets = <&cru SRST_A_USB3_OTG1>; 437 + reset-names = "usb3-otg"; 438 438 status = "disabled"; 439 439 440 440 usbdrd_dwc3_1: dwc3 {