[prev in list] [next in list] [prev in thread] [next in thread] 

List:       linux-serial
Subject:    [PATCH 0/8] Serial: imx: various fixes
From:       Sergey Organov <sorganov () gmail ! com>
Date:       2019-05-30 15:29:42
Message-ID: 20190530152950.25377-1-sorganov () gmail ! com
[Download RAW message or body]

WARNING: conditionally tested patches, -- see CAVEAT below for
details.

The original problem that caused these changes was broken bytes being
sent/received at random on RTS/CTS handshake switch (i.e., on
setting/clearing termios CRTSCTS bit).

As it went, a few other problems were found and fixed, and then the
fix for original issue has been split into multiple patches that seem
to make sense by themselves. Thus, the "serial: imx: fix data breakage
on termios change", that finally fixes the issue, depends on 2
preceding patches.

The last patch in the series, "serial: imx: use Tx ready rather than
Tx empty irq" is independent of the rest and doesn't fix any serious
issue, but it should get rid of holes in continuous output,
specifically in PIO mode.

CAVEAT:

Originally, patches have been tested (and are still in use) on a board
based on iMX6SX ARM chip, but they are made on top of 4.9.146 Linux
kernel with 'imx_4.9.11_1.0.0_ga' branch of 'linux-imx' (imx vendor)
repo merged in, to be able to run on actual hardware (bare 4.9.x Linux
panics on iMX6SX).

These series is that original set rebased on top of mainstream Linux
v5.1, and the result has only been checked to compile, i.e., no run
tests were performed, as I can't run any mainstream Linux on my board.

I also have similar series on top of mainstream v4.9.146, if that's
more appropriate. However, those series have 1 more patch, that
happenes to match one that's already included in v5.1.

Sergey Organov (8):
  serial: imx: fix DTR inversion
  serial: imx: fix breaking RTS/CTS handshake by mctrl change
  serial: imx: preserve RTS state over termios change
  serial: imx: get rid of unbounded busy-waiting loop
  serial: imx: do not stop Rx/Tx on termios change
  serial: imx: do not disable individual irqs during termios change
  serial: imx: fix data breakage on termios change
  serial: imx: use Tx ready rather than Tx empty irq

 drivers/tty/serial/imx.c | 68 +++++++++++++++++++++++-------------------------
 1 file changed, 32 insertions(+), 36 deletions(-)

-- 
2.10.0.1.g57b01a3

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic