Linux-Serial Archive on lore.kernel.org
 help / color / Atom feed
* [PATCH 0/3] tty: serial: lpuart: cleanup and improve for earlycon
@ 2019-12-18  2:56 Peng Fan
  2019-12-18  2:56 ` [PATCH 1/3] tty: serial: fsl_lpuart: drop EARLYCON_DECLARE Peng Fan
                   ` (3 more replies)
  0 siblings, 4 replies; 7+ messages in thread
From: Peng Fan @ 2019-12-18  2:56 UTC (permalink / raw)
  To: gregkh, jslaby
  Cc: linux-serial, linux-kernel, dl-linux-imx, Alice Guo, Peng Fan

From: Peng Fan <peng.fan@nxp.com>

EARLYCON_DECLARE could be dropped, since OF_EARLYCON_DECLARE does same.
i.MX8QXP is compatible with i.MX7ULP, no need an extra entry.
when we could not use stdout-path for earlycon for i.MX8QXP, we need
pass mmio32 to earlycon, so update code to support the iotype.

Peng Fan (3):
  tty: serial: fsl_lpuart: drop EARLYCON_DECLARE
  tty: serial: fsl_lpuart: support UPIO_MEM32 for lpuart32
  tty: serial: fsl_lpuart: drop earlycon entry for i.MX8QXP

 drivers/tty/serial/fsl_lpuart.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

-- 
2.16.4


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH 1/3] tty: serial: fsl_lpuart: drop EARLYCON_DECLARE
  2019-12-18  2:56 [PATCH 0/3] tty: serial: lpuart: cleanup and improve for earlycon Peng Fan
@ 2019-12-18  2:56 ` Peng Fan
  2019-12-18  2:56 ` [PATCH 2/3] tty: serial: fsl_lpuart: support UPIO_MEM32 for lpuart32 Peng Fan
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 7+ messages in thread
From: Peng Fan @ 2019-12-18  2:56 UTC (permalink / raw)
  To: gregkh, jslaby
  Cc: linux-serial, linux-kernel, dl-linux-imx, Alice Guo, Peng Fan

From: Peng Fan <peng.fan@nxp.com>

EARLYCON_DECLARE is just a wrapper of OF_EARLYCON_DECLARE,
since we already have OF_EARLYCON_DECLARE for lpuart and lpuart32,
so no need EARLYCON_DECLARE.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
---
 drivers/tty/serial/fsl_lpuart.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/drivers/tty/serial/fsl_lpuart.c b/drivers/tty/serial/fsl_lpuart.c
index 4e128d19e0ad..54c7735406f8 100644
--- a/drivers/tty/serial/fsl_lpuart.c
+++ b/drivers/tty/serial/fsl_lpuart.c
@@ -2397,8 +2397,6 @@ OF_EARLYCON_DECLARE(lpuart, "fsl,vf610-lpuart", lpuart_early_console_setup);
 OF_EARLYCON_DECLARE(lpuart32, "fsl,ls1021a-lpuart", lpuart32_early_console_setup);
 OF_EARLYCON_DECLARE(lpuart32, "fsl,imx7ulp-lpuart", lpuart32_imx_early_console_setup);
 OF_EARLYCON_DECLARE(lpuart32, "fsl,imx8qxp-lpuart", lpuart32_imx_early_console_setup);
-EARLYCON_DECLARE(lpuart, lpuart_early_console_setup);
-EARLYCON_DECLARE(lpuart32, lpuart32_early_console_setup);
 
 #define LPUART_CONSOLE	(&lpuart_console)
 #define LPUART32_CONSOLE	(&lpuart32_console)
-- 
2.16.4


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH 2/3] tty: serial: fsl_lpuart: support UPIO_MEM32 for lpuart32
  2019-12-18  2:56 [PATCH 0/3] tty: serial: lpuart: cleanup and improve for earlycon Peng Fan
  2019-12-18  2:56 ` [PATCH 1/3] tty: serial: fsl_lpuart: drop EARLYCON_DECLARE Peng Fan
@ 2019-12-18  2:56 ` Peng Fan
  2019-12-18  2:56 ` [PATCH 2/3] tty: serial: lpuart: " Peng Fan
  2019-12-18  2:56 ` [PATCH 3/3] tty: serial: fsl_lpuart: drop earlycon entry for i.MX8QXP Peng Fan
  3 siblings, 0 replies; 7+ messages in thread
From: Peng Fan @ 2019-12-18  2:56 UTC (permalink / raw)
  To: gregkh, jslaby
  Cc: linux-serial, linux-kernel, dl-linux-imx, Alice Guo, Peng Fan

From: Peng Fan <peng.fan@nxp.com>

"earlycon" no need to specify the value string since it uses
stdout-path parameters. However when earlycon and normal console
are not using the same uart port, we need specify value string
to earlycon, this is what we need to do when support dual linux
using jailhouse hypervisor. The 2nd linux will use the uart
of the 1st linux as earlycon.

earlycon=lpuart32,mmio32,0x5a060010,115200 not work for i.MX8QXP.
It is because lpuart32_early_console_setup not support little endian.

Since the original code is to support UPIO_MEM32BE, so if not
UPIO_MEM32, we still take it as UPIO_MEM32BE

Acked-by: Fugang Duan <fugang.duan@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
---
 drivers/tty/serial/fsl_lpuart.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/tty/serial/fsl_lpuart.c b/drivers/tty/serial/fsl_lpuart.c
index 54c7735406f8..6ad0af073e62 100644
--- a/drivers/tty/serial/fsl_lpuart.c
+++ b/drivers/tty/serial/fsl_lpuart.c
@@ -2376,7 +2376,9 @@ static int __init lpuart32_early_console_setup(struct earlycon_device *device,
 	if (!device->port.membase)
 		return -ENODEV;
 
-	device->port.iotype = UPIO_MEM32BE;
+	if (device->port.iotype != UPIO_MEM32)
+		device->port.iotype = UPIO_MEM32BE;
+
 	device->con->write = lpuart32_early_write;
 	return 0;
 }
-- 
2.16.4


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH 2/3] tty: serial: lpuart: support UPIO_MEM32 for lpuart32
  2019-12-18  2:56 [PATCH 0/3] tty: serial: lpuart: cleanup and improve for earlycon Peng Fan
  2019-12-18  2:56 ` [PATCH 1/3] tty: serial: fsl_lpuart: drop EARLYCON_DECLARE Peng Fan
  2019-12-18  2:56 ` [PATCH 2/3] tty: serial: fsl_lpuart: support UPIO_MEM32 for lpuart32 Peng Fan
@ 2019-12-18  2:56 ` " Peng Fan
  2019-12-18 12:26   ` Peng Fan
  2019-12-18  2:56 ` [PATCH 3/3] tty: serial: fsl_lpuart: drop earlycon entry for i.MX8QXP Peng Fan
  3 siblings, 1 reply; 7+ messages in thread
From: Peng Fan @ 2019-12-18  2:56 UTC (permalink / raw)
  To: gregkh, jslaby
  Cc: linux-serial, linux-kernel, dl-linux-imx, Alice Guo, Peng Fan

From: Peng Fan <peng.fan@nxp.com>

"earlycon" no need to specify the value string since it uses
stdout-path parameters. However when earlycon and normal console
are not using the same uart port, we need specify value string
to earlycon, this is what we need to do when support dual linux
using jailhouse hypervisor. The 2nd linux will use the uart
of the 1st linux as earlycon.

earlycon=lpuart32,mmio32,0x5a060010,115200 not work for i.MX8QXP.
It is because lpuart32_early_console_setup not support little endian.

Since the original code is to support UPIO_MEM32BE, so if not
UPIO_MEM32, we still take it as UPIO_MEM32BE

Acked-by: Fugang Duan <fugang.duan@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
---
 drivers/tty/serial/fsl_lpuart.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/tty/serial/fsl_lpuart.c b/drivers/tty/serial/fsl_lpuart.c
index 54c7735406f8..6ad0af073e62 100644
--- a/drivers/tty/serial/fsl_lpuart.c
+++ b/drivers/tty/serial/fsl_lpuart.c
@@ -2376,7 +2376,9 @@ static int __init lpuart32_early_console_setup(struct earlycon_device *device,
 	if (!device->port.membase)
 		return -ENODEV;
 
-	device->port.iotype = UPIO_MEM32BE;
+	if (device->port.iotype != UPIO_MEM32)
+		device->port.iotype = UPIO_MEM32BE;
+
 	device->con->write = lpuart32_early_write;
 	return 0;
 }
-- 
2.16.4


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH 3/3] tty: serial: fsl_lpuart: drop earlycon entry for i.MX8QXP
  2019-12-18  2:56 [PATCH 0/3] tty: serial: lpuart: cleanup and improve for earlycon Peng Fan
                   ` (2 preceding siblings ...)
  2019-12-18  2:56 ` [PATCH 2/3] tty: serial: lpuart: " Peng Fan
@ 2019-12-18  2:56 ` Peng Fan
  3 siblings, 0 replies; 7+ messages in thread
From: Peng Fan @ 2019-12-18  2:56 UTC (permalink / raw)
  To: gregkh, jslaby
  Cc: linux-serial, linux-kernel, dl-linux-imx, Alice Guo, Peng Fan

From: Peng Fan <peng.fan@nxp.com>

i.MX8QXP lpuart is compatible with i.MX7ULP, so no need
an extra  entry for i.MX8QXP.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
---
 drivers/tty/serial/fsl_lpuart.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/tty/serial/fsl_lpuart.c b/drivers/tty/serial/fsl_lpuart.c
index 6ad0af073e62..00cf72e9e9e8 100644
--- a/drivers/tty/serial/fsl_lpuart.c
+++ b/drivers/tty/serial/fsl_lpuart.c
@@ -2398,7 +2398,6 @@ static int __init lpuart32_imx_early_console_setup(struct earlycon_device *devic
 OF_EARLYCON_DECLARE(lpuart, "fsl,vf610-lpuart", lpuart_early_console_setup);
 OF_EARLYCON_DECLARE(lpuart32, "fsl,ls1021a-lpuart", lpuart32_early_console_setup);
 OF_EARLYCON_DECLARE(lpuart32, "fsl,imx7ulp-lpuart", lpuart32_imx_early_console_setup);
-OF_EARLYCON_DECLARE(lpuart32, "fsl,imx8qxp-lpuart", lpuart32_imx_early_console_setup);
 
 #define LPUART_CONSOLE	(&lpuart_console)
 #define LPUART32_CONSOLE	(&lpuart32_console)
-- 
2.16.4


^ permalink raw reply	[flat|nested] 7+ messages in thread

* RE: [PATCH 2/3] tty: serial: lpuart: support UPIO_MEM32 for lpuart32
  2019-12-18  2:56 ` [PATCH 2/3] tty: serial: lpuart: " Peng Fan
@ 2019-12-18 12:26   ` Peng Fan
  2019-12-19 16:43     ` gregkh
  0 siblings, 1 reply; 7+ messages in thread
From: Peng Fan @ 2019-12-18 12:26 UTC (permalink / raw)
  To: gregkh, jslaby; +Cc: linux-serial, linux-kernel, dl-linux-imx, Alice Guo

Hi Greg,

> Subject: [PATCH 2/3] tty: serial: lpuart: support UPIO_MEM32 for lpuart32

This patch was sent out wrongly. Not affect the other three patches which
belongs the whole patch set described in cover-letter.

Should I sent out v2? Or you are fine if the other 3 patches are ok?

Thanks,
Peng.

> 
> From: Peng Fan <peng.fan@nxp.com>
> 
> "earlycon" no need to specify the value string since it uses stdout-path
> parameters. However when earlycon and normal console are not using the
> same uart port, we need specify value string to earlycon, this is what we need
> to do when support dual linux using jailhouse hypervisor. The 2nd linux will
> use the uart of the 1st linux as earlycon.
> 
> earlycon=lpuart32,mmio32,0x5a060010,115200 not work for i.MX8QXP.
> It is because lpuart32_early_console_setup not support little endian.
> 
> Since the original code is to support UPIO_MEM32BE, so if not UPIO_MEM32,
> we still take it as UPIO_MEM32BE
> 
> Acked-by: Fugang Duan <fugang.duan@nxp.com>
> Signed-off-by: Peng Fan <peng.fan@nxp.com>
> ---
>  drivers/tty/serial/fsl_lpuart.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/tty/serial/fsl_lpuart.c b/drivers/tty/serial/fsl_lpuart.c index
> 54c7735406f8..6ad0af073e62 100644
> --- a/drivers/tty/serial/fsl_lpuart.c
> +++ b/drivers/tty/serial/fsl_lpuart.c
> @@ -2376,7 +2376,9 @@ static int __init
> lpuart32_early_console_setup(struct earlycon_device *device,
>  	if (!device->port.membase)
>  		return -ENODEV;
> 
> -	device->port.iotype = UPIO_MEM32BE;
> +	if (device->port.iotype != UPIO_MEM32)
> +		device->port.iotype = UPIO_MEM32BE;
> +
>  	device->con->write = lpuart32_early_write;
>  	return 0;
>  }
> --
> 2.16.4


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 2/3] tty: serial: lpuart: support UPIO_MEM32 for lpuart32
  2019-12-18 12:26   ` Peng Fan
@ 2019-12-19 16:43     ` gregkh
  0 siblings, 0 replies; 7+ messages in thread
From: gregkh @ 2019-12-19 16:43 UTC (permalink / raw)
  To: Peng Fan; +Cc: jslaby, linux-serial, linux-kernel, dl-linux-imx, Alice Guo

On Wed, Dec 18, 2019 at 12:26:09PM +0000, Peng Fan wrote:
> Hi Greg,
> 
> > Subject: [PATCH 2/3] tty: serial: lpuart: support UPIO_MEM32 for lpuart32
> 
> This patch was sent out wrongly. Not affect the other three patches which
> belongs the whole patch set described in cover-letter.
> 
> Should I sent out v2? Or you are fine if the other 3 patches are ok?

Please send out a whole new v2 series.

thanks,

greg k-h

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, back to index

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-12-18  2:56 [PATCH 0/3] tty: serial: lpuart: cleanup and improve for earlycon Peng Fan
2019-12-18  2:56 ` [PATCH 1/3] tty: serial: fsl_lpuart: drop EARLYCON_DECLARE Peng Fan
2019-12-18  2:56 ` [PATCH 2/3] tty: serial: fsl_lpuart: support UPIO_MEM32 for lpuart32 Peng Fan
2019-12-18  2:56 ` [PATCH 2/3] tty: serial: lpuart: " Peng Fan
2019-12-18 12:26   ` Peng Fan
2019-12-19 16:43     ` gregkh
2019-12-18  2:56 ` [PATCH 3/3] tty: serial: fsl_lpuart: drop earlycon entry for i.MX8QXP Peng Fan

Linux-Serial Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-serial/0 linux-serial/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-serial linux-serial/ https://lore.kernel.org/linux-serial \
		linux-serial@vger.kernel.org
	public-inbox-index linux-serial

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.linux-serial


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git