diff mbox series

[v2,1/1] arm64: dts: imx8qm: Add fsl, imx7ulp-lpuart compatible to lpuart

Message ID 20211116125814.2674343-1-alexander.stein@ew.tq-group.com (mailing list archive)
State New, archived
Headers show
Series [v2,1/1] arm64: dts: imx8qm: Add fsl, imx7ulp-lpuart compatible to lpuart | expand

Commit Message

Alexander Stein Nov. 16, 2021, 12:58 p.m. UTC
After commit b4b844930f27 ("tty: serial: fsl_lpuart: drop earlycon entry
for i.MX8QXP") earlycon support was essentially removed from
imx8qm/imx8qxp due to missing compatible.
The commit message says "i.MX8QXP lpuart is compatible with i.MX7ULP" so
adding a fallback compatible should be fine.
With this change earlycon is supported again on imx8qm/imx8qxp.

Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
---
Changes in v2:
* Fix typo in commit message: 'early' -> 'earlycon'

 arch/arm64/boot/dts/freescale/imx8qm-ss-dma.dtsi | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

Comments

Shawn Guo Nov. 22, 2021, 1:43 a.m. UTC | #1
On Tue, Nov 16, 2021 at 01:58:14PM +0100, Alexander Stein wrote:
> After commit b4b844930f27 ("tty: serial: fsl_lpuart: drop earlycon entry
> for i.MX8QXP") earlycon support was essentially removed from
> imx8qm/imx8qxp due to missing compatible.
> The commit message says "i.MX8QXP lpuart is compatible with i.MX7ULP" so
> adding a fallback compatible should be fine.
> With this change earlycon is supported again on imx8qm/imx8qxp.
> 
> Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
> Reviewed-by: Peng Fan <peng.fan@nxp.com>
> ---
> Changes in v2:
> * Fix typo in commit message: 'early' -> 'earlycon'
> 
>  arch/arm64/boot/dts/freescale/imx8qm-ss-dma.dtsi | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/arch/arm64/boot/dts/freescale/imx8qm-ss-dma.dtsi b/arch/arm64/boot/dts/freescale/imx8qm-ss-dma.dtsi
> index bbe5f5ecfb92..3486b99ab6eb 100644
> --- a/arch/arm64/boot/dts/freescale/imx8qm-ss-dma.dtsi
> +++ b/arch/arm64/boot/dts/freescale/imx8qm-ss-dma.dtsi
> @@ -19,19 +19,19 @@ uart4_lpcg: clock-controller@5a4a0000 {
>  };
>  
>  &lpuart0 {
> -	compatible = "fsl,imx8qm-lpuart", "fsl,imx8qxp-lpuart";
> +	compatible = "fsl,imx8qm-lpuart", "fsl,imx8qxp-lpuart", "fsl,imx7ulp-lpuart";

Then fsl,imx8qxp-lpuart should be dropped?

Shawn

>  };
>  
>  &lpuart1 {
> -	compatible = "fsl,imx8qm-lpuart", "fsl,imx8qxp-lpuart";
> +	compatible = "fsl,imx8qm-lpuart", "fsl,imx8qxp-lpuart", "fsl,imx7ulp-lpuart";
>  };
>  
>  &lpuart2 {
> -	compatible = "fsl,imx8qm-lpuart", "fsl,imx8qxp-lpuart";
> +	compatible = "fsl,imx8qm-lpuart", "fsl,imx8qxp-lpuart", "fsl,imx7ulp-lpuart";
>  };
>  
>  &lpuart3 {
> -	compatible = "fsl,imx8qm-lpuart", "fsl,imx8qxp-lpuart";
> +	compatible = "fsl,imx8qm-lpuart", "fsl,imx8qxp-lpuart", "fsl,imx7ulp-lpuart";
>  };
>  
>  &i2c0 {
> -- 
> 2.25.1
>
Alexander Stein Nov. 22, 2021, 7:38 a.m. UTC | #2
Am Montag, dem 22.11.2021 um 09:43 +0800 schrieb Shawn Guo:
> On Tue, Nov 16, 2021 at 01:58:14PM +0100, Alexander Stein wrote:
> > After commit b4b844930f27 ("tty: serial: fsl_lpuart: drop earlycon
> > entry
> > for i.MX8QXP") earlycon support was essentially removed from
> > imx8qm/imx8qxp due to missing compatible.
> > The commit message says "i.MX8QXP lpuart is compatible with
> > i.MX7ULP" so
> > adding a fallback compatible should be fine.
> > With this change earlycon is supported again on imx8qm/imx8qxp.
> > 
> > Signed-off-by: Alexander Stein <
> > alexander.stein@ew.tq-group.com
> > >
> > Reviewed-by: Peng Fan <
> > peng.fan@nxp.com
> > >
> > ---
> > Changes in v2:
> > * Fix typo in commit message: 'early' -> 'earlycon'
> > 
> >  arch/arm64/boot/dts/freescale/imx8qm-ss-dma.dtsi | 8 ++++----
> >  1 file changed, 4 insertions(+), 4 deletions(-)
> > 
> > diff --git a/arch/arm64/boot/dts/freescale/imx8qm-ss-dma.dtsi
> > b/arch/arm64/boot/dts/freescale/imx8qm-ss-dma.dtsi
> > index bbe5f5ecfb92..3486b99ab6eb 100644
> > --- a/arch/arm64/boot/dts/freescale/imx8qm-ss-dma.dtsi
> > +++ b/arch/arm64/boot/dts/freescale/imx8qm-ss-dma.dtsi
> > @@ -19,19 +19,19 @@ uart4_lpcg: clock-controller@5a4a0000 {
> >  };
> >  
> >  &lpuart0 {
> > -	compatible = "fsl,imx8qm-lpuart", "fsl,imx8qxp-lpuart";
> > +	compatible = "fsl,imx8qm-lpuart", "fsl,imx8qxp-lpuart",
> > "fsl,imx7ulp-lpuart";
> 
> Then fsl,imx8qxp-lpuart should be dropped?

If you drop fsl,imx8qxp-lpuart in the compatible list, fsl_lpuart.c
needs a new lpuart_soc_data for imx8qm in order to work. "fsl,imx7ulp-
lpuart" is not enough for imx8qm, as (among other things) "baud" clk is
mising in imx7. IMHO there are 2 ways:

1st
Add both fsl,imx8qxp-lpuart and fsl,imx7ulp-lpuart to the compatible
list to get both regular serial support (fsl,imx8qxp-lpuart) as well as
earlycon (fsl,imx7ulp-lpuart). In this case the bindings need to get
fixed as well, see [1]

2nd
Remove fsl,imx8qxp-lpuart compatible for imx8qm. But in this case
everything done for imx8qxp in fsl_lpuart.c has to be duplicated.
fsl,imx7ulp-lpuart is still required for earlycon support.

If you want to get rid of fsl,imx7ulp-lpuart compatible for
imx8qm/imx8qxp in either case, you need to revert b4b844930f27 ("tty:
serial: fsl_lpuart: drop earlycon entry for i.MX8QXP").

Best regards,
Alexander

[1] 
http://lists.infradead.org/pipermail/linux-arm-kernel/2021-November/697507.html
Shawn Guo Nov. 23, 2021, 12:15 p.m. UTC | #3
On Mon, Nov 22, 2021 at 08:38:28AM +0100, Alexander Stein wrote:
> Am Montag, dem 22.11.2021 um 09:43 +0800 schrieb Shawn Guo:
> > On Tue, Nov 16, 2021 at 01:58:14PM +0100, Alexander Stein wrote:
> > > After commit b4b844930f27 ("tty: serial: fsl_lpuart: drop earlycon
> > > entry
> > > for i.MX8QXP") earlycon support was essentially removed from
> > > imx8qm/imx8qxp due to missing compatible.
> > > The commit message says "i.MX8QXP lpuart is compatible with
> > > i.MX7ULP" so
> > > adding a fallback compatible should be fine.
> > > With this change earlycon is supported again on imx8qm/imx8qxp.
> > > 
> > > Signed-off-by: Alexander Stein <
> > > alexander.stein@ew.tq-group.com
> > > >
> > > Reviewed-by: Peng Fan <
> > > peng.fan@nxp.com
> > > >
> > > ---
> > > Changes in v2:
> > > * Fix typo in commit message: 'early' -> 'earlycon'
> > > 
> > >  arch/arm64/boot/dts/freescale/imx8qm-ss-dma.dtsi | 8 ++++----
> > >  1 file changed, 4 insertions(+), 4 deletions(-)
> > > 
> > > diff --git a/arch/arm64/boot/dts/freescale/imx8qm-ss-dma.dtsi
> > > b/arch/arm64/boot/dts/freescale/imx8qm-ss-dma.dtsi
> > > index bbe5f5ecfb92..3486b99ab6eb 100644
> > > --- a/arch/arm64/boot/dts/freescale/imx8qm-ss-dma.dtsi
> > > +++ b/arch/arm64/boot/dts/freescale/imx8qm-ss-dma.dtsi
> > > @@ -19,19 +19,19 @@ uart4_lpcg: clock-controller@5a4a0000 {
> > >  };
> > >  
> > >  &lpuart0 {
> > > -	compatible = "fsl,imx8qm-lpuart", "fsl,imx8qxp-lpuart";
> > > +	compatible = "fsl,imx8qm-lpuart", "fsl,imx8qxp-lpuart",
> > > "fsl,imx7ulp-lpuart";
> > 
> > Then fsl,imx8qxp-lpuart should be dropped?
> 
> If you drop fsl,imx8qxp-lpuart in the compatible list, fsl_lpuart.c
> needs a new lpuart_soc_data for imx8qm in order to work. "fsl,imx7ulp-
> lpuart" is not enough for imx8qm, as (among other things) "baud" clk is
> mising in imx7. IMHO there are 2 ways:
> 
> 1st
> Add both fsl,imx8qxp-lpuart and fsl,imx7ulp-lpuart to the compatible
> list to get both regular serial support (fsl,imx8qxp-lpuart) as well as
> earlycon (fsl,imx7ulp-lpuart). In this case the bindings need to get
> fixed as well, see [1]
> 
> 2nd
> Remove fsl,imx8qxp-lpuart compatible for imx8qm. But in this case
> everything done for imx8qxp in fsl_lpuart.c has to be duplicated.
> fsl,imx7ulp-lpuart is still required for earlycon support.
> 
> If you want to get rid of fsl,imx7ulp-lpuart compatible for
> imx8qm/imx8qxp in either case, you need to revert b4b844930f27 ("tty:
> serial: fsl_lpuart: drop earlycon entry for i.MX8QXP").

It looks to me that commit b4b844930f27 caused a regression for imx8qm,
so should be reverted.

Shawn
diff mbox series

Patch

diff --git a/arch/arm64/boot/dts/freescale/imx8qm-ss-dma.dtsi b/arch/arm64/boot/dts/freescale/imx8qm-ss-dma.dtsi
index bbe5f5ecfb92..3486b99ab6eb 100644
--- a/arch/arm64/boot/dts/freescale/imx8qm-ss-dma.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8qm-ss-dma.dtsi
@@ -19,19 +19,19 @@  uart4_lpcg: clock-controller@5a4a0000 {
 };
 
 &lpuart0 {
-	compatible = "fsl,imx8qm-lpuart", "fsl,imx8qxp-lpuart";
+	compatible = "fsl,imx8qm-lpuart", "fsl,imx8qxp-lpuart", "fsl,imx7ulp-lpuart";
 };
 
 &lpuart1 {
-	compatible = "fsl,imx8qm-lpuart", "fsl,imx8qxp-lpuart";
+	compatible = "fsl,imx8qm-lpuart", "fsl,imx8qxp-lpuart", "fsl,imx7ulp-lpuart";
 };
 
 &lpuart2 {
-	compatible = "fsl,imx8qm-lpuart", "fsl,imx8qxp-lpuart";
+	compatible = "fsl,imx8qm-lpuart", "fsl,imx8qxp-lpuart", "fsl,imx7ulp-lpuart";
 };
 
 &lpuart3 {
-	compatible = "fsl,imx8qm-lpuart", "fsl,imx8qxp-lpuart";
+	compatible = "fsl,imx8qm-lpuart", "fsl,imx8qxp-lpuart", "fsl,imx7ulp-lpuart";
 };
 
 &i2c0 {