2023-05-14 21:14:50

by Martin Blumenstingl

[permalink] [raw]
Subject: [PATCH v2] ARM: dts: meson8: correct uart_B and uart_C clock references

On Meson8 uart_B and uart_C do not work, because they are relying on
incorrect clocks. Change the references of pclk to the correct CLKID
(UART1 for uart_B and UART2 for uart_C), to allow use of the two uarts.

This was originally reported by Hans-Frieder Vogt for Meson8b [0], but
the same bug is also present in meson8.dtsi

[0] https://lore.kernel.org/linux-amlogic/trinity-bf20bcb9-790b-4ab9-99e3-0831ef8257f4-1680878185420@3c-app-gmx-bap55/

Fixes: 57007bfb5469 ("ARM: dts: meson8: Fix the UART device-tree schema validation")
Reported-by: Hans-Frieder Vogt <[email protected]> # for meson8b.dtsi
Signed-off-by: Martin Blumenstingl <[email protected]>
---
Changes since v1:
- move the link to the original report for Meson8b to the description


arch/arm/boot/dts/meson8.dtsi | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/arm/boot/dts/meson8.dtsi b/arch/arm/boot/dts/meson8.dtsi
index 4f22ab451aae..1054297fa69f 100644
--- a/arch/arm/boot/dts/meson8.dtsi
+++ b/arch/arm/boot/dts/meson8.dtsi
@@ -769,13 +769,13 @@ &uart_A {

&uart_B {
compatible = "amlogic,meson8-uart";
- clocks = <&xtal>, <&clkc CLKID_UART0>, <&clkc CLKID_CLK81>;
+ clocks = <&xtal>, <&clkc CLKID_UART2>, <&clkc CLKID_CLK81>;
clock-names = "xtal", "pclk", "baud";
};

&uart_C {
compatible = "amlogic,meson8-uart";
- clocks = <&xtal>, <&clkc CLKID_UART0>, <&clkc CLKID_CLK81>;
+ clocks = <&xtal>, <&clkc CLKID_UART2>, <&clkc CLKID_CLK81>;
clock-names = "xtal", "pclk", "baud";
};

--
2.40.1



2023-05-14 21:27:42

by Martin Blumenstingl

[permalink] [raw]
Subject: Re: [PATCH v2] ARM: dts: meson8: correct uart_B and uart_C clock references

On Sun, May 14, 2023 at 11:01 PM Hans-Frieder Vogt <[email protected]> wrote:
[...]
> > &uart_B {
> > compatible = "amlogic,meson8-uart";
> > - clocks = <&xtal>, <&clkc CLKID_UART0>, <&clkc CLKID_CLK81>;
> > + clocks = <&xtal>, <&clkc CLKID_UART2>, <&clkc CLKID_CLK81>;
> Shouldn't the second clock reference for uart_B rather be CLKID_UART1,
> similar to meson8b?
> Sorry, didn't spot this earlier.
You're totally right - thank you for spotting this!
I'll send a fixed v3 soon.

2023-05-14 21:28:33

by Hans-Frieder Vogt

[permalink] [raw]
Subject: Re: [PATCH v2] ARM: dts: meson8: correct uart_B and uart_C clock references

On 14.05.2023 22.19, Martin Blumenstingl wrote:
> On Meson8 uart_B and uart_C do not work, because they are relying on
> incorrect clocks. Change the references of pclk to the correct CLKID
> (UART1 for uart_B and UART2 for uart_C), to allow use of the two uarts.
>
> This was originally reported by Hans-Frieder Vogt for Meson8b [0], but
> the same bug is also present in meson8.dtsi
>
> [0] https://lore.kernel.org/linux-amlogic/trinity-bf20bcb9-790b-4ab9-99e3-0831ef8257f4-1680878185420@3c-app-gmx-bap55/
>
> Fixes: 57007bfb5469 ("ARM: dts: meson8: Fix the UART device-tree schema validation")
> Reported-by: Hans-Frieder Vogt <[email protected]> # for meson8b.dtsi
> Signed-off-by: Martin Blumenstingl <[email protected]>
> ---
> Changes since v1:
> - move the link to the original report for Meson8b to the description
>
>
> arch/arm/boot/dts/meson8.dtsi | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/arch/arm/boot/dts/meson8.dtsi b/arch/arm/boot/dts/meson8.dtsi
> index 4f22ab451aae..1054297fa69f 100644
> --- a/arch/arm/boot/dts/meson8.dtsi
> +++ b/arch/arm/boot/dts/meson8.dtsi
> @@ -769,13 +769,13 @@ &uart_A {
>
> &uart_B {
> compatible = "amlogic,meson8-uart";
> - clocks = <&xtal>, <&clkc CLKID_UART0>, <&clkc CLKID_CLK81>;
> + clocks = <&xtal>, <&clkc CLKID_UART2>, <&clkc CLKID_CLK81>;
Shouldn't the second clock reference for uart_B rather be CLKID_UART1,
similar to meson8b?
Sorry, didn't spot this earlier.
> clock-names = "xtal", "pclk", "baud";
> };
>
> &uart_C {
> compatible = "amlogic,meson8-uart";
> - clocks = <&xtal>, <&clkc CLKID_UART0>, <&clkc CLKID_CLK81>;
> + clocks = <&xtal>, <&clkc CLKID_UART2>, <&clkc CLKID_CLK81>;
> clock-names = "xtal", "pclk", "baud";
> };
>