Hi all, Any chance these series can be considered? They still apply on top of the mainline kernel.
On Fri, Feb 27, 2026 at 3:03 PM Jared Kangas <[email protected]> wrote: > > Hi Larisa, > > On Mon, Feb 16, 2026 at 04:01:52PM +0100, Larisa Grigore wrote: > > This patchset enhances the LINFlexD UART driver and its device tree > > bindings to > > support DMA transfers, configurable clock inputs, dynamic baudrate changes, > > and > > termios features. It also includes a series of fixes and improvements to > > ensure > > reliable operation across various modes and configurations. > > > > The changes added can be summarized as follows: > > 1. Fixes with respect to FIFO handling, locking, interrupt related > > registers and > > INITM mode transition. > > Tested this series with the default devicetree configuration by booting > the board to a login prompt about 200 times. Without the series applied, > I was seeing a bug roughly every 30-50 boots where the kernel would > would hang in linflex_console_putchar() waiting for DTFTFF. In my tests > with the series applied, I didn't see any regressions and the bug no > longer appeared. Thanks for the fix! > > Tested-by: Jared Kangas <[email protected]> # S32G3, interrupt-driven > FWIW I also reproduced the issue Jared faced. Current state of the LinFLEX serial driver in mainline seems a bit buggy and I can confirm that these fix the problem. Tested-by: Enric Balletbo i Serra <[email protected]> > > 2. Removal of the earlycon workaround, as proper FIFO handling and INITM > > transitions now ensure stable behavior. > > 3. Support for configurable stop bits and dynamic baudrate changes based on > > clock inputs and termios settings. > > 4. Optional DMA support for RX and TX paths, preventing character loss > > during > > high-throughput operations like copy-paste. Cyclic DMA is used for RX to > > avoid > > gaps between transactions. > > > > Larisa Grigore (8): > > serial: linflexuart: Clean SLEEP bit in LINCR1 after suspend > > serial: linflexuart: Check FIFO full before writing > > serial: linflexuart: Correctly clear UARTSR in buffer mode > > serial: linflexuart: Update RXEN/TXEN outside INITM mode > > serial: linflexuart: Ensure FIFO is empty when entering INITM > > serial: linflexuart: Revert earlycon workaround > > serial: linflexuart: Add support for configurable stop bits > > serial: linflexuart: Add DMA support > > > > Radu Pirea (5): > > serial: linflexuart: Fix locking in set_termios > > dt-bindings: serial: fsl-linflexuart: add clock input properties > > dt-bindings: serial: fsl-linflexuart: add dma properties > > serial: linflexuart: Add support for changing baudrate > > serial: linflexuart: Avoid stopping DMA during receive operations > > > > .../bindings/serial/fsl,s32-linflexuart.yaml | 31 + > > drivers/tty/serial/fsl_linflexuart.c | 972 +++++++++++++++--- > > 2 files changed, 846 insertions(+), 157 deletions(-) > > > > -- > > 2.47.0 > > >
