Nice catch. I would like to suggest to send this patch with proper "Fixes:" tag and do it separately from the patch series. The reason is that this patch fixes a bug which is not related to MCTRL_GPIO itself. 2016-03-22 16:12 GMT+03:00 <yegorslists@xxxxxxxxxxxxxx>: > From: Yegor Yefremov <yegorslists@xxxxxxxxxxxxxx> > > When in half-duplex mode RX will be disabled before TX, but not > enabled after deactivating transmitter. This patch enables > UART_IER_RLSI and UART_IER_RDI interrupts after TX is over. > > Cc: Matwey V. Kornilov <matwey@xxxxxxxxxx> > Signed-off-by: Yegor Yefremov <yegorslists@xxxxxxxxxxxxxx> Fixes: e490c9144cfa ("tty: Add software emulated RS485 support for 8250") > --- > drivers/tty/serial/8250/8250_port.c | 11 ++++++++++- > 1 file changed, 10 insertions(+), 1 deletion(-) > > diff --git a/drivers/tty/serial/8250/8250_port.c b/drivers/tty/serial/8250/8250_port.c > index e213da0..00ad263 100644 > --- a/drivers/tty/serial/8250/8250_port.c > +++ b/drivers/tty/serial/8250/8250_port.c > @@ -1403,9 +1403,18 @@ static void __do_stop_tx_rs485(struct uart_8250_port *p) > /* > * Empty the RX FIFO, we are not interested in anything > * received during the half-duplex transmission. > + * Enable previously disabled RX interrupts. > */ > - if (!(p->port.rs485.flags & SER_RS485_RX_DURING_TX)) > + if (!(p->port.rs485.flags & SER_RS485_RX_DURING_TX)) { > serial8250_clear_fifos(p); > + > + serial8250_rpm_get(p); > + > + p->ier |= UART_IER_RLSI | UART_IER_RDI; > + serial_port_out(&p->port, UART_IER, p->ier); > + > + serial8250_rpm_put(p); > + } > } > > static void serial8250_em485_handle_stop_tx(unsigned long arg) > -- > 2.1.4 > -- With best regards, Matwey V. Kornilov. Sternberg Astronomical Institute, Lomonosov Moscow State University, Russia 119991, Moscow, Universitetsky pr-k 13, +7 (495) 9392382 -- To unsubscribe from this list: send the line "unsubscribe linux-serial" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html