[PATCH 1/1] arm64: dts: lx2160a: Normalize the compatible string of "arm, sbsa-uart"
Shawn Guo
shawnguo at kernel.org
Fri Jun 11 19:10:58 PDT 2021
On Tue, May 25, 2021 at 10:00:30AM +0800, Leizhen (ThunderTown) wrote:
>
>
> On 2021/5/25 1:36, Mark Kettenis wrote:
> >> From: Zhen Lei <thunder.leizhen at huawei.com>
> >> Date: Mon, 24 May 2021 11:52:44 +0800
> >> Content-Type: text/plain; charset="us-ascii"
> >>
> >> The compatible string of ARM SBSA defined generic UART needs to contain
> >> only "arm,sbsa-uart" and does not need to contain "arm,pl011". Otherwise,
> >> the pl011.yaml will check it and falsely report many warnings similar to
> >> the following:
> >>
> >> arch/arm64/boot/dts/freescale/fsl-lx2160a-clearfog-cx.dt.yaml:
> >> serial at 21c0000: compatible:0: 'arm,pl011' was expected
> >> serial at 21c0000: compatible:1: 'arm,primecell' was expected
> >>
> >> Delete the redundant "arm,pl011" to fix it.
> >
> > According to its reference manual, the LX2160A has a full PL011
> > implementation. So I think this is the wrong "fix".
>
> No, No, Please refer: https://www.spinics.net/lists/devicetree/msg424054.html
>
> Now the "arm,sbsa-uart" driver is mixed with amba-pl011.c,It's impossible
> "arm,pl011" is loaded but "arm,sbsa-uart" is not loaded. So it makes no sense
> to append "arm, pl011" to the end of the compatible string as an alternative
> driver.
>
> drivers/tty/serial/amba-pl011.c:2784: { .compatible = "arm,sbsa-uart", },
I guess Mark is suggesting the following fix.
uart0: serial at 21c0000 {
- compatible = "arm,sbsa-uart","arm,pl011";
+ compatible = "arm,pl011", "arm,primecell";
reg = <0x0 0x21c0000 0x0 0x1000>;
interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
- current-speed = <115200>;
status = "disabled";
};
I copied some folks who might help clarify whether LX2160A UART is a SBSA
or a full PL011.
Shawn
>
>
> >
> >> Signed-off-by: Zhen Lei <thunder.leizhen at huawei.com>
> >> ---
> >> arch/arm64/boot/dts/freescale/fsl-lx2160a.dtsi | 8 ++++----
> >> 1 file changed, 4 insertions(+), 4 deletions(-)
> >>
> >> diff --git a/arch/arm64/boot/dts/freescale/fsl-lx2160a.dtsi b/arch/arm64/boot/dts/freescale/fsl-lx2160a.dtsi
> >> index 4fcc869c21a4..417546616d85 100644
> >> --- a/arch/arm64/boot/dts/freescale/fsl-lx2160a.dtsi
> >> +++ b/arch/arm64/boot/dts/freescale/fsl-lx2160a.dtsi
> >> @@ -920,7 +920,7 @@
> >> };
> >>
> >> uart0: serial at 21c0000 {
> >> - compatible = "arm,sbsa-uart","arm,pl011";
> >> + compatible = "arm,sbsa-uart";
> >> reg = <0x0 0x21c0000 0x0 0x1000>;
> >> interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
> >> current-speed = <115200>;
> >> @@ -928,7 +928,7 @@
> >> };
> >>
> >> uart1: serial at 21d0000 {
> >> - compatible = "arm,sbsa-uart","arm,pl011";
> >> + compatible = "arm,sbsa-uart";
> >> reg = <0x0 0x21d0000 0x0 0x1000>;
> >> interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
> >> current-speed = <115200>;
> >> @@ -936,7 +936,7 @@
> >> };
> >>
> >> uart2: serial at 21e0000 {
> >> - compatible = "arm,sbsa-uart","arm,pl011";
> >> + compatible = "arm,sbsa-uart";
> >> reg = <0x0 0x21e0000 0x0 0x1000>;
> >> interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
> >> current-speed = <115200>;
> >> @@ -944,7 +944,7 @@
> >> };
> >>
> >> uart3: serial at 21f0000 {
> >> - compatible = "arm,sbsa-uart","arm,pl011";
> >> + compatible = "arm,sbsa-uart";
> >> reg = <0x0 0x21f0000 0x0 0x1000>;
> >> interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
> >> current-speed = <115200>;
> >> --
> >> 2.21.1
> >>
> >>
> >>
> >> _______________________________________________
> >> linux-arm-kernel mailing list
> >> linux-arm-kernel at lists.infradead.org
> >> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
> >>
> >
> > .
> >
>
More information about the linux-arm-kernel
mailing list