Re: [PATCH] serial: imx: disable DMA for RS-485 on i.MX6 SMP

From: Clemens Gruber
Date: Sun Jul 02 2017 - 16:18:12 EST

Hi Fabio, Hi Romain,

On Fri, Jun 30, 2017 at 09:15:31AM -0300, Fabio Estevam wrote:
> Hi Clemens,
> On Wed, Jun 21, 2017 at 11:12 AM, Fabio Estevam <festevam@xxxxxxxxx> wrote:
> >> I'd also prefer fixing the underlying problem.
> >
> > Yes, that would be much better.
> Just saw Romain's patch series that addresses several imx uart DMA issues:
> If you have a chance, please give it a try to see if it helps on the
> RS485 DMA case.

Thanks, I just finished my first tests with Romain's patch series:

It looks like these patches fixed some of the bugs, causing this
behavior, but not all: The behavior changed, the rest of the circular
buffer is no longer sent out as seen in the previous bug report

But now, with the patch series applied, if I transmit "Test", the logic
analyzer records the following:

Most of the time it looked like this (T e T e s s t t LF LF), but in a
few cases I observed another pattern (T e T s e s t t LF LF) when
transmitting "Test" by calling echo Test > /dev/ttymxc4.

If I do a echo A > /dev/ttymxc4 as in my first bug report, now I always
see the pattern A LF A LF on the TX line, but no longer A LF A LF 0 0 ..

Interestingly, the bug does not appear the first time I try echo A after
a reboot.

Romain: What board did you use to test your patch series?
The RS485 bug, I reported, only appears on i.MX6D and i.MX6Q, but not on
single-core / non-SMP systems. Would be great if you could reproduce it!