Message ID | 20200923095711.11355-2-michael@walle.cc (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | arm64: dts: add FlexCAN support to LS1028A and sl28 | expand |
> -----Original Message----- > From: Michael Walle <michael@walle.cc> > Sent: Wednesday, September 23, 2020 4:57 AM > To: linux-arm-kernel@lists.infradead.org; devicetree@vger.kernel.org; linux- > kernel@vger.kernel.org; linux-can@vger.kernel.org > Cc: Shawn Guo <shawnguo@kernel.org>; Leo Li <leoyang.li@nxp.com>; Rob > Herring <robh+dt@kernel.org>; Marc Kleine-Budde <mkl@pengutronix.de>; > Joakim Zhang <qiangqing.zhang@nxp.com>; Michael Walle > <michael@walle.cc> > 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 <michael@walle.cc> > --- > 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
Am 2020-09-24 02:35, schrieb Leo Li: >> -----Original Message----- >> From: Michael Walle <michael@walle.cc> >> Sent: Wednesday, September 23, 2020 4:57 AM >> To: linux-arm-kernel@lists.infradead.org; devicetree@vger.kernel.org; >> linux- >> kernel@vger.kernel.org; linux-can@vger.kernel.org >> Cc: Shawn Guo <shawnguo@kernel.org>; Leo Li <leoyang.li@nxp.com>; Rob >> Herring <robh+dt@kernel.org>; Marc Kleine-Budde <mkl@pengutronix.de>; >> Joakim Zhang <qiangqing.zhang@nxp.com>; Michael Walle >> <michael@walle.cc> >> 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 <michael@walle.cc> >> --- >> 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
> -----Original Message----- > From: Michael Walle <michael@walle.cc> > Sent: Thursday, September 24, 2020 6:31 AM > To: Leo Li <leoyang.li@nxp.com> > Cc: linux-arm-kernel@lists.infradead.org; devicetree@vger.kernel.org; linux- > kernel@vger.kernel.org; linux-can@vger.kernel.org; Shawn Guo > <shawnguo@kernel.org>; Rob Herring <robh+dt@kernel.org>; Marc Kleine- > Budde <mkl@pengutronix.de>; Joakim Zhang <qiangqing.zhang@nxp.com> > 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 <michael@walle.cc> > >> Sent: Wednesday, September 23, 2020 4:57 AM > >> To: linux-arm-kernel@lists.infradead.org; devicetree@vger.kernel.org; > >> linux- > >> kernel@vger.kernel.org; linux-can@vger.kernel.org > >> Cc: Shawn Guo <shawnguo@kernel.org>; Leo Li <leoyang.li@nxp.com>; > Rob > >> Herring <robh+dt@kernel.org>; Marc Kleine-Budde > <mkl@pengutronix.de>; > >> Joakim Zhang <qiangqing.zhang@nxp.com>; Michael Walle > >> <michael@walle.cc> > >> 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 <michael@walle.cc> > >> --- > >> 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
Am 2020-09-24 17:53, schrieb Leo Li: >> -----Original Message----- >> From: Michael Walle <michael@walle.cc> >> Sent: Thursday, September 24, 2020 6:31 AM >> To: Leo Li <leoyang.li@nxp.com> >> Cc: linux-arm-kernel@lists.infradead.org; devicetree@vger.kernel.org; >> linux- >> kernel@vger.kernel.org; linux-can@vger.kernel.org; Shawn Guo >> <shawnguo@kernel.org>; Rob Herring <robh+dt@kernel.org>; Marc Kleine- >> Budde <mkl@pengutronix.de>; Joakim Zhang <qiangqing.zhang@nxp.com> >> 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 <michael@walle.cc> >> >> Sent: Wednesday, September 23, 2020 4:57 AM >> >> To: linux-arm-kernel@lists.infradead.org; devicetree@vger.kernel.org; >> >> linux- >> >> kernel@vger.kernel.org; linux-can@vger.kernel.org >> >> Cc: Shawn Guo <shawnguo@kernel.org>; Leo Li <leoyang.li@nxp.com>; >> Rob >> >> Herring <robh+dt@kernel.org>; Marc Kleine-Budde >> <mkl@pengutronix.de>; >> >> Joakim Zhang <qiangqing.zhang@nxp.com>; Michael Walle >> >> <michael@walle.cc> >> >> 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 <michael@walle.cc> >> >> --- >> >> 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
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
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
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>;
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 <michael@walle.cc> --- arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+)