2020-09-23 09:59:19

by Michael Walle

[permalink] [raw]
Subject: [PATCH 1/2] arm64: dts: ls1028a: add missing CAN nodes

The LS1028A has two FlexCAN controller. These are compatible with
the ones from the LX2160A. Add the nodes.

The first controller was tested on the Kontron sl28 board.

Signed-off-by: Michael Walle <[email protected]>
---
arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)

diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi b/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi
index 0efeb8fa773e..807ee921ec12 100644
--- a/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi
+++ b/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi
@@ -386,6 +386,24 @@
status = "disabled";
};

+ can0: can@2180000 {
+ compatible = "fsl,ls1028ar1-flexcan", "fsl,lx2160ar1-flexcan";
+ reg = <0x0 0x2180000 0x0 0x10000>;
+ interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&sysclk>, <&clockgen 4 1>;
+ clock-names = "ipg", "per";
+ status = "disabled";
+ };
+
+ can1: can@2190000 {
+ compatible = "fsl,ls1028ar1-flexcan", "fsl,lx2160ar1-flexcan";
+ reg = <0x0 0x2190000 0x0 0x10000>;
+ interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&sysclk>, <&clockgen 4 1>;
+ clock-names = "ipg", "per";
+ status = "disabled";
+ };
+
duart0: serial@21c0500 {
compatible = "fsl,ns16550", "ns16550a";
reg = <0x00 0x21c0500 0x0 0x100>;
--
2.20.1


2020-09-24 00:37:10

by Leo Li

[permalink] [raw]
Subject: RE: [PATCH 1/2] arm64: dts: ls1028a: add missing CAN nodes



> -----Original Message-----
> From: Michael Walle <[email protected]>
> Sent: Wednesday, September 23, 2020 4:57 AM
> To: [email protected]; [email protected]; linux-
> [email protected]; [email protected]
> Cc: Shawn Guo <[email protected]>; Leo Li <[email protected]>; Rob
> Herring <[email protected]>; Marc Kleine-Budde <[email protected]>;
> Joakim Zhang <[email protected]>; Michael Walle
> <[email protected]>
> Subject: [PATCH 1/2] arm64: dts: ls1028a: add missing CAN nodes
>
> The LS1028A has two FlexCAN controller. These are compatible with the ones
> from the LX2160A. Add the nodes.
>
> The first controller was tested on the Kontron sl28 board.
>
> Signed-off-by: Michael Walle <[email protected]>
> ---
> arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi | 18 ++++++++++++++++++
> 1 file changed, 18 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi
> b/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi
> index 0efeb8fa773e..807ee921ec12 100644
> --- a/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi
> +++ b/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi
> @@ -386,6 +386,24 @@
> status = "disabled";
> };
>
> + can0: can@2180000 {
> + compatible = "fsl,ls1028ar1-flexcan", "fsl,lx2160ar1-
> flexcan";

The explicit compatible strings cannot be found in the binding, but matched by the "fsl,<processor>-flexcan" pattern in the binding. Is this considered to be acceptable now?

> + reg = <0x0 0x2180000 0x0 0x10000>;
> + interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>;
> + clocks = <&sysclk>, <&clockgen 4 1>;
> + clock-names = "ipg", "per";
> + status = "disabled";
> + };
> +
> + can1: can@2190000 {
> + compatible = "fsl,ls1028ar1-flexcan", "fsl,lx2160ar1-
> flexcan";
> + reg = <0x0 0x2190000 0x0 0x10000>;
> + interrupts = <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>;
> + clocks = <&sysclk>, <&clockgen 4 1>;
> + clock-names = "ipg", "per";
> + status = "disabled";
> + };
> +
> duart0: serial@21c0500 {
> compatible = "fsl,ns16550", "ns16550a";
> reg = <0x00 0x21c0500 0x0 0x100>;
> --
> 2.20.1

2020-09-24 11:32:31

by Michael Walle

[permalink] [raw]
Subject: Re: [PATCH 1/2] arm64: dts: ls1028a: add missing CAN nodes

Am 2020-09-24 02:35, schrieb Leo Li:
>> -----Original Message-----
>> From: Michael Walle <[email protected]>
>> Sent: Wednesday, September 23, 2020 4:57 AM
>> To: [email protected]; [email protected];
>> linux-
>> [email protected]; [email protected]
>> Cc: Shawn Guo <[email protected]>; Leo Li <[email protected]>; Rob
>> Herring <[email protected]>; Marc Kleine-Budde <[email protected]>;
>> Joakim Zhang <[email protected]>; Michael Walle
>> <[email protected]>
>> Subject: [PATCH 1/2] arm64: dts: ls1028a: add missing CAN nodes
>>
>> The LS1028A has two FlexCAN controller. These are compatible with the
>> ones
>> from the LX2160A. Add the nodes.
>>
>> The first controller was tested on the Kontron sl28 board.
>>
>> Signed-off-by: Michael Walle <[email protected]>
>> ---
>> arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi | 18
>> ++++++++++++++++++
>> 1 file changed, 18 insertions(+)
>>
>> diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi
>> b/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi
>> index 0efeb8fa773e..807ee921ec12 100644
>> --- a/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi
>> +++ b/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi
>> @@ -386,6 +386,24 @@
>> status = "disabled";
>> };
>>
>> + can0: can@2180000 {
>> + compatible = "fsl,ls1028ar1-flexcan", "fsl,lx2160ar1-
>> flexcan";
>
> The explicit compatible strings cannot be found in the binding, but
> matched by the "fsl,<processor>-flexcan" pattern in the binding. Is
> this considered to be acceptable now?

What is the consequence if it is not acceptable? replacing the pattern
with individual compatible strings?

-michael

2020-09-24 15:56:34

by Leo Li

[permalink] [raw]
Subject: RE: [PATCH 1/2] arm64: dts: ls1028a: add missing CAN nodes



> -----Original Message-----
> From: Michael Walle <[email protected]>
> Sent: Thursday, September 24, 2020 6:31 AM
> To: Leo Li <[email protected]>
> Cc: [email protected]; [email protected]; linux-
> [email protected]; [email protected]; Shawn Guo
> <[email protected]>; Rob Herring <[email protected]>; Marc Kleine-
> Budde <[email protected]>; Joakim Zhang <[email protected]>
> Subject: Re: [PATCH 1/2] arm64: dts: ls1028a: add missing CAN nodes
>
> Am 2020-09-24 02:35, schrieb Leo Li:
> >> -----Original Message-----
> >> From: Michael Walle <[email protected]>
> >> Sent: Wednesday, September 23, 2020 4:57 AM
> >> To: [email protected]; [email protected];
> >> linux-
> >> [email protected]; [email protected]
> >> Cc: Shawn Guo <[email protected]>; Leo Li <[email protected]>;
> Rob
> >> Herring <[email protected]>; Marc Kleine-Budde
> <[email protected]>;
> >> Joakim Zhang <[email protected]>; Michael Walle
> >> <[email protected]>
> >> Subject: [PATCH 1/2] arm64: dts: ls1028a: add missing CAN nodes
> >>
> >> The LS1028A has two FlexCAN controller. These are compatible with the
> >> ones
> >> from the LX2160A. Add the nodes.
> >>
> >> The first controller was tested on the Kontron sl28 board.
> >>
> >> Signed-off-by: Michael Walle <[email protected]>
> >> ---
> >> arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi | 18
> >> ++++++++++++++++++
> >> 1 file changed, 18 insertions(+)
> >>
> >> diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi
> >> b/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi
> >> index 0efeb8fa773e..807ee921ec12 100644
> >> --- a/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi
> >> +++ b/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi
> >> @@ -386,6 +386,24 @@
> >> status = "disabled";
> >> };
> >>
> >> + can0: can@2180000 {
> >> + compatible = "fsl,ls1028ar1-flexcan", "fsl,lx2160ar1-
> >> flexcan";
> >
> > The explicit compatible strings cannot be found in the binding, but
> > matched by the "fsl,<processor>-flexcan" pattern in the binding. Is
> > this considered to be acceptable now?
>
> What is the consequence if it is not acceptable? replacing the pattern
> with individual compatible strings?

There is a recommendation in the kernel documentation quoted below:

7) The wildcard "<chip>" may be used in compatible strings, as in
the following example:

- compatible: Must contain '"nvidia,<chip>-pcie",
"nvidia,tegra20-pcie"' where <chip> is tegra30, tegra132, ...

As in the above example, the known values of "<chip>" should be
documented if it is used.

But I am not sure if this is still a hard requirement. If so, we should list the processors in the binding.

Regards,
Leo

2020-09-25 09:35:16

by Michael Walle

[permalink] [raw]
Subject: Re: [PATCH 1/2] arm64: dts: ls1028a: add missing CAN nodes

Am 2020-09-24 17:53, schrieb Leo Li:
>> -----Original Message-----
>> From: Michael Walle <[email protected]>
>> Sent: Thursday, September 24, 2020 6:31 AM
>> To: Leo Li <[email protected]>
>> Cc: [email protected]; [email protected];
>> linux-
>> [email protected]; [email protected]; Shawn Guo
>> <[email protected]>; Rob Herring <[email protected]>; Marc Kleine-
>> Budde <[email protected]>; Joakim Zhang <[email protected]>
>> Subject: Re: [PATCH 1/2] arm64: dts: ls1028a: add missing CAN nodes
>>
>> Am 2020-09-24 02:35, schrieb Leo Li:
>> >> -----Original Message-----
>> >> From: Michael Walle <[email protected]>
>> >> Sent: Wednesday, September 23, 2020 4:57 AM
>> >> To: [email protected]; [email protected];
>> >> linux-
>> >> [email protected]; [email protected]
>> >> Cc: Shawn Guo <[email protected]>; Leo Li <[email protected]>;
>> Rob
>> >> Herring <[email protected]>; Marc Kleine-Budde
>> <[email protected]>;
>> >> Joakim Zhang <[email protected]>; Michael Walle
>> >> <[email protected]>
>> >> Subject: [PATCH 1/2] arm64: dts: ls1028a: add missing CAN nodes
>> >>
>> >> The LS1028A has two FlexCAN controller. These are compatible with the
>> >> ones
>> >> from the LX2160A. Add the nodes.
>> >>
>> >> The first controller was tested on the Kontron sl28 board.
>> >>
>> >> Signed-off-by: Michael Walle <[email protected]>
>> >> ---
>> >> arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi | 18
>> >> ++++++++++++++++++
>> >> 1 file changed, 18 insertions(+)
>> >>
>> >> diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi
>> >> b/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi
>> >> index 0efeb8fa773e..807ee921ec12 100644
>> >> --- a/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi
>> >> +++ b/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi
>> >> @@ -386,6 +386,24 @@
>> >> status = "disabled";
>> >> };
>> >>
>> >> + can0: can@2180000 {
>> >> + compatible = "fsl,ls1028ar1-flexcan", "fsl,lx2160ar1-
>> >> flexcan";
>> >
>> > The explicit compatible strings cannot be found in the binding, but
>> > matched by the "fsl,<processor>-flexcan" pattern in the binding. Is
>> > this considered to be acceptable now?
>>
>> What is the consequence if it is not acceptable? replacing the pattern
>> with individual compatible strings?
>
> There is a recommendation in the kernel documentation quoted below:
>
> 7) The wildcard "<chip>" may be used in compatible strings, as in
> the following example:
>
> - compatible: Must contain '"nvidia,<chip>-pcie",
> "nvidia,tegra20-pcie"' where <chip> is tegra30, tegra132,
> ...
>
> As in the above example, the known values of "<chip>" should be
> documented if it is used.
>
> But I am not sure if this is still a hard requirement. If so, we
> should list the processors in the binding.

Marc, I'd convert this to yaml format, may I put your name as the
maintainer in the binding?

-michael

2020-09-25 09:36:07

by Marc Kleine-Budde

[permalink] [raw]
Subject: Re: [PATCH 1/2] arm64: dts: ls1028a: add missing CAN nodes

On 9/25/20 11:31 AM, Michael Walle wrote:
> Marc, I'd convert this to yaml format,

Oleksij (CC'ed) is working already on this.

> may I put your name as the maintainer in the binding?

Marc

--
Pengutronix e.K. | Marc Kleine-Budde |
Embedded Linux | https://www.pengutronix.de |
Vertretung West/Dortmund | Phone: +49-231-2826-924 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |


Attachments:
signature.asc (499.00 B)
OpenPGP digital signature

2020-09-25 11:38:46

by Michael Walle

[permalink] [raw]
Subject: Re: [PATCH 1/2] arm64: dts: ls1028a: add missing CAN nodes

Am 2020-09-25 11:34, schrieb Marc Kleine-Budde:
> On 9/25/20 11:31 AM, Michael Walle wrote:
>> Marc, I'd convert this to yaml format,
>
> Oleksij (CC'ed) is working already on this.

Cool.

Oleksij, if there will be individual compatible strings, could you
already add the one for the LS1028A? i.e.
"fsl,ls1028ar1-flexcan" followed by "fsl,lx2160ar1-flexcan"

-michael