serial: core: move RS485 configuration tasks from drivers into core
authorLino Sanfilippo <LinoSanfilippo@gmx.de>
Sun, 10 Apr 2022 10:46:34 +0000 (12:46 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 15 Apr 2022 09:30:21 +0000 (11:30 +0200)
commit0ed12afa5655512ee418047fb3546d229df20aa1
tree59ecd38227879d138e868183e07e69a08755a31f
parent368ab68b18de104719f386a5cfe3595673cc96de
serial: core: move RS485 configuration tasks from drivers into core

Several drivers that support setting the RS485 configuration via userspace
implement one or more of the following tasks:

- in case of an invalid RTS configuration (both RTS after send and RTS on
  send set or both unset) fall back to enable RTS on send and disable RTS
  after send

- nullify the padding field of the returned serial_rs485 struct

- copy the configuration into the uart port struct

- limit RTS delays to 100 ms

Move these tasks into the serial core to make them generic and to provide
a consistent behaviour among all drivers.

Signed-off-by: Lino Sanfilippo <LinoSanfilippo@gmx.de>
Link: https://lore.kernel.org/r/20220410104642.32195-2-LinoSanfilippo@gmx.de
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/serial_core.c