Put the driver into the shape with all new bells and whistles from the kernel. The first three patches marked as fixes, but there is no hurry (as it was for ages like this in the kernel) to pipe them to stable. That's why I sent all in one series and it's good for tty-next. Tested on Intel Merrifield with MAX3111e connected. Andy Shevchenko (16): serial: max3100: Lock port->lock when calling uart_handle_cts_change() serial: max3100: Update uart_driver_registered on driver removal serial: max3100: Fix bitwise types serial: max3100: Make struct plat_max3100 local serial: max3100: Remove custom HW shutdown support serial: max3100: Replace custom polling timeout with standard one serial: max3100: Enable TIOCM_LOOP serial: max3100: Get crystal frequency via device property serial: max3100: Remove duplicating irq field serial: max3100: Switch to use dev_err_probe() serial: max3100: Replace MODULE_ALIAS() with respective ID tables serial: max3100: Switch to DEFINE_SIMPLE_DEV_PM_OPS() serial: max3100: Extract to_max3100_port() helper macro serial: max3100: Remove unneeded forward declaration serial: max3100: Sort headers serial: max3100: Update Kconfig entry drivers/tty/serial/Kconfig | 7 +- drivers/tty/serial/max3100.c | 320 +++++++++++++-------------------- include/linux/serial_max3100.h | 48 ----- 3 files changed, 131 insertions(+), 244 deletions(-) delete mode 100644 include/linux/serial_max3100.h -- 2.43.0.rc1.1.gbec44491f096