Re: [PATCH] dts: Disable DMA support on the BK4 vf610 device's fsl_lpuart driver

From: Robin Murphy
Date: Wed Oct 09 2019 - 10:40:04 EST


On 09/10/2019 15:30, Lukasz Majewski wrote:
This change disables the DMA support (RX/TX) on the NXP's fsl_lpuart
driver - the PIO mode is used instead. This change is necessary for better
robustness of BK4's device use cases with many potentially interrupted
short serial transfers.

Without it the driver hangs when some distortion happens on UART lines.

Signed-off-by: Lukasz Majewski <lukma@xxxxxxx>
---
arch/arm/boot/dts/vf610-bk4.dts | 4 ++++
1 file changed, 4 insertions(+)

diff --git a/arch/arm/boot/dts/vf610-bk4.dts b/arch/arm/boot/dts/vf610-bk4.dts
index 0f3870d3b099..ad20f3442d40 100644
--- a/arch/arm/boot/dts/vf610-bk4.dts
+++ b/arch/arm/boot/dts/vf610-bk4.dts
@@ -259,24 +259,28 @@
&uart0 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart0>;
+ dma-names = "","";

This looks like a horrible hack - is there any reason not to just strip things at compile-time, i.e. "/delete-property/ dmas;"?

Robin.

status = "okay";
};
&uart1 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart1>;
+ dma-names = "","";
status = "okay";
};
&uart2 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart2>;
+ dma-names = "","";
status = "okay";
};
&uart3 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart3>;
+ dma-names = "","";
status = "okay";
};