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

ARM: dts: r8a7791: Don't disable referenced optional clocks

clk_get on a disabled clock node will return EPROBE_DEFER, which can
cause drivers to be deferred forever if such clocks are referenced in
their clocks property.

Update the various disabled external clock nodes to default to a
frequency of 0, but don't disable them to prevent this.

Signed-off-by: Sjoerd Simons <sjoerd.simons@collabora.co.uk>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>

authored by

Sjoerd Simons and committed by
Simon Horman
ac6908b3 f55532a0

+3 -4
+1
arch/arm/boot/dts/r8a7791-koelsch.dts
··· 661 661 }; 662 662 663 663 &pcie_bus_clk { 664 + clock-frequency = <100000000>; 664 665 status = "okay"; 665 666 }; 666 667
+1
arch/arm/boot/dts/r8a7791-porter.dts
··· 414 414 }; 415 415 416 416 &pcie_bus_clk { 417 + clock-frequency = <100000000>; 417 418 status = "okay"; 418 419 }; 419 420
+1 -4
arch/arm/boot/dts/r8a7791.dtsi
··· 1083 1083 pcie_bus_clk: pcie_bus_clk { 1084 1084 compatible = "fixed-clock"; 1085 1085 #clock-cells = <0>; 1086 - clock-frequency = <100000000>; 1086 + clock-frequency = <0>; 1087 1087 clock-output-names = "pcie_bus"; 1088 - status = "disabled"; 1089 1088 }; 1090 1089 1091 1090 /* External SCIF clock */ ··· 1093 1094 #clock-cells = <0>; 1094 1095 /* This value must be overridden by the board. */ 1095 1096 clock-frequency = <0>; 1096 - status = "disabled"; 1097 1097 }; 1098 1098 1099 1099 /* External USB clock - can be overridden by the board */ ··· 1110 1112 /* This value must be overridden by the board. */ 1111 1113 clock-frequency = <0>; 1112 1114 clock-output-names = "can_clk"; 1113 - status = "disabled"; 1114 1115 }; 1115 1116 1116 1117 /* Special CPG clocks */