linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3] ARM: dts: armada-xp-98dx3236: Switch to armada-38x-uart serial node
@ 2019-06-25 22:11 Joshua Scott
  2019-06-27 15:37 ` Gregory CLEMENT
  0 siblings, 1 reply; 2+ messages in thread
From: Joshua Scott @ 2019-06-25 22:11 UTC (permalink / raw)
  To: linux-arm-kernel, Jason Cooper, Andrew Lunn, Gregory Clement,
	Sebastian Hesselbarth
  Cc: Joshua Scott, stable

Switch to the "marvell,armada-38x-uart" driver variant to empty
the UART buffer before writing to the UART_LCR register.

Signed-off-by: Joshua Scott <joshua.scott@alliedtelesis.co.nz>
Tested-by: Andrew Lunn <andrew@lunn.ch>
Acked-by: Gregory CLEMENT <gregory.clement@bootlin.com>.
Cc: stable@vger.kernel.org
Fixes: 43e28ba87708 ("ARM: dts: Use armada-370-xp as a base for armada-xp-98dx3236")

---
Changes in v3:

Updated title, added tested-by, and Fixes tag

Changes in v2:

Andrew Lunn was able to test on a Marvell 370RD reference design, and
the character loss issue did not occur.

The fix has now been changed to only affect the following SOCs:
 * 98DX323x
 * 98DX3333
 * 98DX4251

v1 message:

We have found that like the armada 38x, other Marvell SOCs can lose
characters when the UART_LCR register is written to without first
waiting for the buffer to empty.

We have observed this behaviour on the following Marvell switch SOCs:

 * 98DX323x
 * 98DX3333
 * 98DX4251

However, we do not currently have access to non-switch SOCs which share
the same parent device-tree.

The question we have is, should the fix be applied to the common
armada-370-xp device-tree, or should it be restricted to only affect the
SOCs listed above.

If anybody is able to check, we would like to find out if the issue
affects other armada-xp / armada-370 based SOCs.

The issue can be reproduced, if logging in using the serial port, with:
    resize && echo "hello world"

On affected devices, the first couple letters of "hello world" are
lost. On some SOCs this can be seen at 115200 baud, and on others
we have had to slow down to 9600 to see the issue.

Cheers,
Joshua Scott
---
 arch/arm/boot/dts/armada-xp-98dx3236.dtsi | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/arch/arm/boot/dts/armada-xp-98dx3236.dtsi b/arch/arm/boot/dts/armada-xp-98dx3236.dtsi
index 59753470cd34..267d0c178e55 100644
--- a/arch/arm/boot/dts/armada-xp-98dx3236.dtsi
+++ b/arch/arm/boot/dts/armada-xp-98dx3236.dtsi
@@ -336,3 +336,11 @@
 	status = "disabled";
 };
 
+&uart0 {
+	compatible = "marvell,armada-38x-uart";
+};
+
+&uart1 {
+	compatible = "marvell,armada-38x-uart";
+};
+
-- 
2.21.0


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

* Re: [PATCH v3] ARM: dts: armada-xp-98dx3236: Switch to armada-38x-uart serial node
  2019-06-25 22:11 [PATCH v3] ARM: dts: armada-xp-98dx3236: Switch to armada-38x-uart serial node Joshua Scott
@ 2019-06-27 15:37 ` Gregory CLEMENT
  0 siblings, 0 replies; 2+ messages in thread
From: Gregory CLEMENT @ 2019-06-27 15:37 UTC (permalink / raw)
  To: Joshua Scott, linux-arm-kernel, Jason Cooper, Andrew Lunn,
	Sebastian Hesselbarth
  Cc: Joshua Scott, stable

Joshua Scott <joshua.scott@alliedtelesis.co.nz> writes:

> Switch to the "marvell,armada-38x-uart" driver variant to empty
> the UART buffer before writing to the UART_LCR register.
>
> Signed-off-by: Joshua Scott <joshua.scott@alliedtelesis.co.nz>
> Tested-by: Andrew Lunn <andrew@lunn.ch>
> Acked-by: Gregory CLEMENT <gregory.clement@bootlin.com>.
> Cc: stable@vger.kernel.org
> Fixes: 43e28ba87708 ("ARM: dts: Use armada-370-xp as a base for
> armada-xp-98dx3236")

Applied on mvebu/fixes

Thanks,

Gregory


>
> ---
> Changes in v3:
>
> Updated title, added tested-by, and Fixes tag
>
> Changes in v2:
>
> Andrew Lunn was able to test on a Marvell 370RD reference design, and
> the character loss issue did not occur.
>
> The fix has now been changed to only affect the following SOCs:
>  * 98DX323x
>  * 98DX3333
>  * 98DX4251
>
> v1 message:
>
> We have found that like the armada 38x, other Marvell SOCs can lose
> characters when the UART_LCR register is written to without first
> waiting for the buffer to empty.
>
> We have observed this behaviour on the following Marvell switch SOCs:
>
>  * 98DX323x
>  * 98DX3333
>  * 98DX4251
>
> However, we do not currently have access to non-switch SOCs which share
> the same parent device-tree.
>
> The question we have is, should the fix be applied to the common
> armada-370-xp device-tree, or should it be restricted to only affect the
> SOCs listed above.
>
> If anybody is able to check, we would like to find out if the issue
> affects other armada-xp / armada-370 based SOCs.
>
> The issue can be reproduced, if logging in using the serial port, with:
>     resize && echo "hello world"
>
> On affected devices, the first couple letters of "hello world" are
> lost. On some SOCs this can be seen at 115200 baud, and on others
> we have had to slow down to 9600 to see the issue.
>
> Cheers,
> Joshua Scott
> ---
>  arch/arm/boot/dts/armada-xp-98dx3236.dtsi | 8 ++++++++
>  1 file changed, 8 insertions(+)
>
> diff --git a/arch/arm/boot/dts/armada-xp-98dx3236.dtsi b/arch/arm/boot/dts/armada-xp-98dx3236.dtsi
> index 59753470cd34..267d0c178e55 100644
> --- a/arch/arm/boot/dts/armada-xp-98dx3236.dtsi
> +++ b/arch/arm/boot/dts/armada-xp-98dx3236.dtsi
> @@ -336,3 +336,11 @@
>  	status = "disabled";
>  };
>  
> +&uart0 {
> +	compatible = "marvell,armada-38x-uart";
> +};
> +
> +&uart1 {
> +	compatible = "marvell,armada-38x-uart";
> +};
> +
> -- 
> 2.21.0
>

-- 
Gregory Clement, Bootlin
Embedded Linux and Kernel engineering
http://bootlin.com

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

end of thread, other threads:[~2019-06-27 15:42 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-06-25 22:11 [PATCH v3] ARM: dts: armada-xp-98dx3236: Switch to armada-38x-uart serial node Joshua Scott
2019-06-27 15:37 ` Gregory CLEMENT

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).