ARM: dts: stm32: add USB OTG UTMI clock on stm32mp151
authorFabrice Gasnier <fabrice.gasnier@foss.st.com>
Fri, 14 Apr 2023 08:41:37 +0000 (10:41 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 20 Apr 2023 08:17:06 +0000 (10:17 +0200)
commit21d018b75f4f1c183be565d302fde7a01ae79fb0
tree7de25e36467eb3fb0fa16d71713c78db1db966ee
parent02329adeae1f92b0133cfc1a2b06645f4c496c1b
ARM: dts: stm32: add USB OTG UTMI clock on stm32mp151

It's needed on STM32MP15, when using the integrated full-speed PHY. This
clock is an output of USBPHYC, and the HS USBPHYC is not attached as PHY
in this case (managed directly by dwc2 ggpio glue):

    &usbotg_hs {
     compatible = "st,stm32mp15-fsotg", "snps,dwc2";
     pinctrl-names = "default";
     pinctrl-0 = <&usbotg_hs_pins_a &usbotg_fs_dp_dm_pins_a>;
     vbus-supply = <&vbus_otg>;
     status = "okay";
    };

USBPHYC clock output must be used, so it can be properly enabled as a
clock provider.

Without this, currently, when the dualport High-Speed USBPHYC isn't
requested by either USBH or OTG, it remains uninitialized when probing
OTG: OTG configured with full-speed PHY isn't properly clocked, resulting
in error log like:
[    2.383138] dwc2 49000000.usb-otg: dwc2_core_reset: HANG! Soft Reset
timeout GRSTCTL_CSFTRST.

Signed-off-by: Fabrice Gasnier <fabrice.gasnier@foss.st.com>
Link: https://lore.kernel.org/r/20230414084137.1050487-5-fabrice.gasnier@foss.st.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/arm/boot/dts/stm32mp151.dtsi