linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/3] arm64: dts: renesas: beacon: Fix USB extal reference
@ 2021-05-13 11:46 Adam Ford
  2021-05-13 11:46 ` [PATCH 2/3] arm64: dts: renesas: beacon: Fix USB ref clock references Adam Ford
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Adam Ford @ 2021-05-13 11:46 UTC (permalink / raw)
  To: linux-arm-kernel
  Cc: aford, Adam Ford, Geert Uytterhoeven, Magnus Damm, Rob Herring,
	Catalin Marinas, Will Deacon, linux-renesas-soc, devicetree,
	linux-kernel

The USB extal clock reference isn't associated to a crystal, it's
assoicated to a programmable clock, so remove the extal reference,
add the usb2_clksel.  Since usb_extal is referenced by the versaclock,
reference it here so the usb2_clksel can get the proper clock speed
of 50MHz.

Signed-off-by: Adam Ford <aford173@gmail.com>

diff --git a/arch/arm64/boot/dts/renesas/beacon-renesom-som.dtsi b/arch/arm64/boot/dts/renesas/beacon-renesom-som.dtsi
index 8d3a4d6ee885..bd3d26b2a2bb 100644
--- a/arch/arm64/boot/dts/renesas/beacon-renesom-som.dtsi
+++ b/arch/arm64/boot/dts/renesas/beacon-renesom-som.dtsi
@@ -319,8 +319,10 @@
 	status = "okay";
 };
 
-&usb_extal_clk {
-	clock-frequency = <50000000>;
+&usb2_clksel {
+	clocks = <&cpg CPG_MOD 703>, <&cpg CPG_MOD 704>,
+		  <&versaclock5 3>, <&usb3s0_clk>;
+	status = "okay";
 };
 
 &usb3s0_clk {
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 2/3] arm64: dts: renesas: beacon: Fix USB ref clock references
  2021-05-13 11:46 [PATCH 1/3] arm64: dts: renesas: beacon: Fix USB extal reference Adam Ford
@ 2021-05-13 11:46 ` Adam Ford
  2021-05-17 10:07   ` Geert Uytterhoeven
  2021-05-13 11:46 ` [PATCH 3/3] arm64: defconfig: Enable usb2_clksel for rcar3 and RZ/G2 Adam Ford
  2021-05-17 10:06 ` [PATCH 1/3] arm64: dts: renesas: beacon: Fix USB extal reference Geert Uytterhoeven
  2 siblings, 1 reply; 6+ messages in thread
From: Adam Ford @ 2021-05-13 11:46 UTC (permalink / raw)
  To: linux-arm-kernel
  Cc: aford, Adam Ford, Geert Uytterhoeven, Magnus Damm, Rob Herring,
	Catalin Marinas, Will Deacon, linux-renesas-soc, devicetree,
	linux-kernel

The RZ/G2 boards expect there to be a external clock reference for
USB2 EHCI controllers.  For the Beacon boards, this reference clock
is controlled by a programmable verasaclock.  Because the RZ/G2
family have a special clock driver when using an external clock,
the third clock reference in the EHCI node needs to point to this
special clock, called usb2_clksel.

Since the usb2_clksel does not keep the usb_extal clock enabled,
the 4th clock entry for the EHCI nodes needs to reference it to
keep the clock running and make USB functional.

Signed-off-by: Adam Ford <aford173@gmail.com>

diff --git a/arch/arm64/boot/dts/renesas/beacon-renesom-baseboard.dtsi b/arch/arm64/boot/dts/renesas/beacon-renesom-baseboard.dtsi
index d8046fedf9c1..e3c8b2fe143e 100644
--- a/arch/arm64/boot/dts/renesas/beacon-renesom-baseboard.dtsi
+++ b/arch/arm64/boot/dts/renesas/beacon-renesom-baseboard.dtsi
@@ -271,12 +271,12 @@
 &ehci0 {
 	dr_mode = "otg";
 	status = "okay";
-	clocks = <&cpg CPG_MOD 703>, <&cpg CPG_MOD 704>;
+	clocks = <&cpg CPG_MOD 703>, <&cpg CPG_MOD 704>, <&usb2_clksel>, <&versaclock5 3>;
 };
 
 &ehci1 {
 	status = "okay";
-	clocks = <&cpg CPG_MOD 703>, <&cpg CPG_MOD 704>;
+	clocks = <&cpg CPG_MOD 703>, <&cpg CPG_MOD 704>, <&usb2_clksel>, <&versaclock5 3>;
 };
 
 &hdmi0 {
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 3/3] arm64: defconfig: Enable usb2_clksel for rcar3 and RZ/G2
  2021-05-13 11:46 [PATCH 1/3] arm64: dts: renesas: beacon: Fix USB extal reference Adam Ford
  2021-05-13 11:46 ` [PATCH 2/3] arm64: dts: renesas: beacon: Fix USB ref clock references Adam Ford
@ 2021-05-13 11:46 ` Adam Ford
  2021-05-17 10:09   ` Geert Uytterhoeven
  2021-05-17 10:06 ` [PATCH 1/3] arm64: dts: renesas: beacon: Fix USB extal reference Geert Uytterhoeven
  2 siblings, 1 reply; 6+ messages in thread
From: Adam Ford @ 2021-05-13 11:46 UTC (permalink / raw)
  To: linux-arm-kernel
  Cc: aford, Adam Ford, Geert Uytterhoeven, Magnus Damm, Rob Herring,
	Catalin Marinas, Will Deacon, linux-renesas-soc, devicetree,
	linux-kernel

There is a clock driver that's needed when using an external
USB reference clock called usb2_clksel.
Enable it in the defconfig.

Signed-off-by: Adam Ford <aford173@gmail.com>

diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
index 08c6f769df9a..c1110fc20cdb 100644
--- a/arch/arm64/configs/defconfig
+++ b/arch/arm64/configs/defconfig
@@ -987,6 +987,7 @@ CONFIG_SM_GPUCC_8250=y
 CONFIG_SM_DISPCC_8250=y
 CONFIG_QCOM_HFPLL=y
 CONFIG_CLK_GFM_LPASS_SM8250=m
+CONFIG_CLK_RCAR_USB2_CLOCK_SEL=y
 CONFIG_HWSPINLOCK=y
 CONFIG_HWSPINLOCK_QCOM=y
 CONFIG_ARM_MHU=y
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH 1/3] arm64: dts: renesas: beacon: Fix USB extal reference
  2021-05-13 11:46 [PATCH 1/3] arm64: dts: renesas: beacon: Fix USB extal reference Adam Ford
  2021-05-13 11:46 ` [PATCH 2/3] arm64: dts: renesas: beacon: Fix USB ref clock references Adam Ford
  2021-05-13 11:46 ` [PATCH 3/3] arm64: defconfig: Enable usb2_clksel for rcar3 and RZ/G2 Adam Ford
@ 2021-05-17 10:06 ` Geert Uytterhoeven
  2 siblings, 0 replies; 6+ messages in thread
From: Geert Uytterhoeven @ 2021-05-17 10:06 UTC (permalink / raw)
  To: Adam Ford
  Cc: Linux ARM, Adam Ford-BE, Magnus Damm, Rob Herring,
	Catalin Marinas, Will Deacon, Linux-Renesas,
	open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS,
	Linux Kernel Mailing List

Hi Adam,

Thanks for your patch!

On Thu, May 13, 2021 at 1:46 PM Adam Ford <aford173@gmail.com> wrote:
> The USB extal clock reference isn't associated to a crystal, it's
> assoicated to a programmable clock, so remove the extal reference,

associated

> add the usb2_clksel.  Since usb_extal is referenced by the versaclock,
> reference it here so the usb2_clksel can get the proper clock speed
> of 50MHz.
>
> Signed-off-by: Adam Ford <aford173@gmail.com>

Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
i.e. will queue in renesas-devel for v5.14, with the above fixed.

Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 2/3] arm64: dts: renesas: beacon: Fix USB ref clock references
  2021-05-13 11:46 ` [PATCH 2/3] arm64: dts: renesas: beacon: Fix USB ref clock references Adam Ford
@ 2021-05-17 10:07   ` Geert Uytterhoeven
  0 siblings, 0 replies; 6+ messages in thread
From: Geert Uytterhoeven @ 2021-05-17 10:07 UTC (permalink / raw)
  To: Adam Ford
  Cc: Linux ARM, Adam Ford-BE, Magnus Damm, Rob Herring,
	Catalin Marinas, Will Deacon, Linux-Renesas,
	open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS,
	Linux Kernel Mailing List

Hi Adam,

Thanks for your patch!

On Thu, May 13, 2021 at 1:46 PM Adam Ford <aford173@gmail.com> wrote:
> The RZ/G2 boards expect there to be a external clock reference for

an

> USB2 EHCI controllers.  For the Beacon boards, this reference clock
> is controlled by a programmable verasaclock.  Because the RZ/G2

versaclock

> family have a special clock driver when using an external clock,

has

> the third clock reference in the EHCI node needs to point to this
> special clock, called usb2_clksel.
>
> Since the usb2_clksel does not keep the usb_extal clock enabled,
> the 4th clock entry for the EHCI nodes needs to reference it to
> keep the clock running and make USB functional.
>
> Signed-off-by: Adam Ford <aford173@gmail.com>

Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
i.e. will queue in renesas-devel for v5.14, with the above fixed.

Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 3/3] arm64: defconfig: Enable usb2_clksel for rcar3 and RZ/G2
  2021-05-13 11:46 ` [PATCH 3/3] arm64: defconfig: Enable usb2_clksel for rcar3 and RZ/G2 Adam Ford
@ 2021-05-17 10:09   ` Geert Uytterhoeven
  0 siblings, 0 replies; 6+ messages in thread
From: Geert Uytterhoeven @ 2021-05-17 10:09 UTC (permalink / raw)
  To: Adam Ford
  Cc: Linux ARM, Adam Ford-BE, Magnus Damm, Rob Herring,
	Catalin Marinas, Will Deacon, Linux-Renesas,
	open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS,
	Linux Kernel Mailing List

On Thu, May 13, 2021 at 1:46 PM Adam Ford <aford173@gmail.com> wrote:
> There is a clock driver that's needed when using an external
> USB reference clock called usb2_clksel.
> Enable it in the defconfig.
>
> Signed-off-by: Adam Ford <aford173@gmail.com>

Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
i.e. will queue in renesas-devel for v5.14.

Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2021-05-17 10:09 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-05-13 11:46 [PATCH 1/3] arm64: dts: renesas: beacon: Fix USB extal reference Adam Ford
2021-05-13 11:46 ` [PATCH 2/3] arm64: dts: renesas: beacon: Fix USB ref clock references Adam Ford
2021-05-17 10:07   ` Geert Uytterhoeven
2021-05-13 11:46 ` [PATCH 3/3] arm64: defconfig: Enable usb2_clksel for rcar3 and RZ/G2 Adam Ford
2021-05-17 10:09   ` Geert Uytterhoeven
2021-05-17 10:06 ` [PATCH 1/3] arm64: dts: renesas: beacon: Fix USB extal reference Geert Uytterhoeven

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).