[PATCH v2] serial: 8250_pci: Fix broken RS485 for F81504/508/512

Marnix Rijnart posted 1 patch 4 weeks ago
There is a newer version of this series
drivers/tty/serial/8250/8250_pci.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH v2] serial: 8250_pci: Fix broken RS485 for F81504/508/512
Posted by Marnix Rijnart 4 weeks ago
v1: https://patch.msgid.link/20250923221756.26770-1-marnix.rijnart@iwell.eu
Changes: 
 * Added fixes tags
 * Cc stable

Commit 4afeced ("serial: core: fix sanitizing check for RTS settings")
introduced a regression making it impossible to unset
SER_RS485_RTS_ON_SEND from userspace if SER_RS485_RTS_AFTER_SEND is
unsupported. Because these devices need RTS to be low on TX (fecf27a)
they are effectively broken.

The hardware supports both RTS_ON_SEND and RTS_AFTER_SEND,
so fix this by announcing support for SER_RS485_RTS_AFTER_SEND,
similar to commit 068d35a.

Fixes: 4afeced55baa ("serial: core: fix sanitizing check for RTS settings")
Fixes: fecf27a373f5 ("serial: 8250_pci: add RS485 for F81504/508/512")
Cc: stable@vger.kernel.org
Signed-off-by: Marnix Rijnart <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
Re: [PATCH v2] serial: 8250_pci: Fix broken RS485 for F81504/508/512
Posted by Greg Kroah-Hartman 4 weeks ago
On Sun, Jan 11, 2026 at 02:59:17PM +0100, Marnix Rijnart wrote:
> v1: https://patch.msgid.link/20250923221756.26770-1-marnix.rijnart@iwell.eu
> Changes: 
>  * Added fixes tags
>  * Cc stable
> 
> Commit 4afeced ("serial: core: fix sanitizing check for RTS settings")

Please use more digits here, "4afeced55baa", like you did in the Fixes:
lines.

> introduced a regression making it impossible to unset
> SER_RS485_RTS_ON_SEND from userspace if SER_RS485_RTS_AFTER_SEND is
> unsupported. Because these devices need RTS to be low on TX (fecf27a)
> they are effectively broken.
> 
> The hardware supports both RTS_ON_SEND and RTS_AFTER_SEND,
> so fix this by announcing support for SER_RS485_RTS_AFTER_SEND,
> similar to commit 068d35a.

You can line-wrap at 72 columns, and again, use more digits for the
commit, and spell out the full name of the commit.

> Fixes: 4afeced55baa ("serial: core: fix sanitizing check for RTS settings")
> Fixes: fecf27a373f5 ("serial: 8250_pci: add RS485 for F81504/508/512")
> Cc: stable@vger.kernel.org

So where does this need to be backported to, where the first commit is,
or the second?

thanks,

greg k-h
Re: [PATCH v2] serial: 8250_pci: Fix broken RS485 for F81504/508/512
Posted by Greg Kroah-Hartman 4 weeks ago
On Sun, Jan 11, 2026 at 02:59:17PM +0100, Marnix Rijnart wrote:
> v1: https://patch.msgid.link/20250923221756.26770-1-marnix.rijnart@iwell.eu
> Changes: 
>  * Added fixes tags
>  * Cc stable

This needs to go below the --- line, so that it doesn't show up in the
changelog.  The in-kernel documentation should explain this.

thanks,

greg k-h