[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20260112000931.61703-1-marnix.rijnart@iwell.eu>
Date: Mon, 12 Jan 2026 01:08:23 +0100
From: Marnix Rijnart <marnix.rijnart@...ll.eu>
To: Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Jiri Slaby <jirislaby@...nel.org>
Cc: linux-kernel@...r.kernel.org,
linux-serial@...r.kernel.org,
regressions@...ts.linux.dev,
Marnix Rijnart <marnix.rijnart@...ll.eu>,
stable@...r.kernel.org
Subject: [PATCH v3] serial: 8250_pci: Fix broken RS485 for F81504/508/512
Fintek F81504/508/512 can support both RTS_ON_SEND and RTS_AFTER_SEND,
but pci_fintek_rs485_supported only announces the former.
This makes it impossible to unset SER_RS485_RTS_ON_SEND from
userspace because of uart_sanitize_serial_rs485(). Some devices
with these chips need RTS low on TX, so they are effectively broken.
Fix this by announcing the support for SER_RS485_RTS_AFTER_SEND,
similar to commit 068d35a7be65 ("serial: sc16is7xx: announce support
for SER_RS485_RTS_ON_SEND").
Fixes: 4afeced55baa ("serial: core: fix sanitizing check for RTS settings")
Cc: stable@...r.kernel.org
Signed-off-by: Marnix Rijnart <marnix.rijnart@...ll.eu>
---
Changes in v3:
- Rewrite commit message to clarify problem
- Use longer commit hashes
- v2: https://patch.msgid.link/20260111135933.31316-1-marnix.rijnart@iwell.eu
Changes in v2:
- Added fixes tags
- Cc stable
- v1: https://patch.msgid.link/20250923221756.26770-1-marnix.rijnart@iwell.eu
---
drivers/tty/serial/8250/8250_pci.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/tty/serial/8250/8250_pci.c b/drivers/tty/serial/8250/8250_pci.c
index 152f914c599d..a9da222bd174 100644
--- a/drivers/tty/serial/8250/8250_pci.c
+++ b/drivers/tty/serial/8250/8250_pci.c
@@ -1645,7 +1645,7 @@ static int pci_fintek_rs485_config(struct uart_port *port, struct ktermios *term
}
static const struct serial_rs485 pci_fintek_rs485_supported = {
- .flags = SER_RS485_ENABLED | SER_RS485_RTS_ON_SEND,
+ .flags = SER_RS485_ENABLED | SER_RS485_RTS_ON_SEND | SER_RS485_RTS_AFTER_SEND,
/* F81504/508/512 does not support RTS delay before or after send */
};
--
2.52.0
Powered by blists - more mailing lists