On Mon, Sep 16, 2024 at 07:26:42PM +0200, Johan Hovold wrote: > The receiver should be enabled in the startup() callback and there is no > need to stop it on every termios update. > > Since commit 6f3c3cafb115 ("serial: qcom-geni: disable interrupts during > console writes") the calls to manipulate the secondary interrupts, which > were done without holding the port lock, can lead to the receiver being > left disabled when set_termios() races with the console code (e.g. when > init opens the tty during boot). > > Fixes: 6f3c3cafb115 ("serial: qcom-geni: disable interrupts during console writes") > Signed-off-by: Johan Hovold <johan+linaro@xxxxxxxxxx> Turns out the DMA implementation is broken and currently depends on these bogus calls to stop and restart rx in set_termios(). I won't have time to look at this for a couple of weeks due to conferences, so please hold off on merging these until I'm back. Johan