Thanks everyone for the comments. I apply most of the comments on version 1 but there is still a pending point with the Jiri comment about the safety of: struct tty_struct *tty = p->port.state->port.tty; I thought about adding a check with tty_port_initialized() before accessing the pointer, but I saw some other places where that same pointer is accessed without further protection, at least from what I see. Changes from v1 to v2: - Use UART_CAP_NOTEMT instead of UART_CAP_TEMT - Use some predefined macro to reduce magicness - Reset active_timer in temt timer handler - add uart_get_byte_size - set UART_CAP_NOTEMT in uart_config for PORT_16550A_FSL64 - Improve commit messages - Improve grammar and spelling - Add Giulio and Heiko SoB to reflect previous work Eric Tremblay (3): serial: 8250: Handle UART without interrupt on TEMT using em485 serial: 8250: Add UART_CAP_NOTEMT on PORT_16550A_FSL64 serial: 8250: add compatible for fsl,16550-FIFO64 drivers/tty/serial/8250/8250.h | 1 + drivers/tty/serial/8250/8250_of.c | 2 + drivers/tty/serial/8250/8250_port.c | 68 ++++++++++++++++++++++++++++- drivers/tty/serial/serial_core.c | 29 ++++++++---- include/linux/serial_8250.h | 2 + include/linux/serial_core.h | 2 + 6 files changed, 94 insertions(+), 10 deletions(-) -- 2.17.1