From: Jiri Slaby (SUSE) Date: Tue, 24 Jun 2025 08:06:40 +0000 (+0200) Subject: serial: 8250: document doubled "type == PORT_8250_CIR" check X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=543a5af343402d007689f2ec8cfc11670b368b8c;p=users%2Fjedix%2Flinux-maple.git serial: 8250: document doubled "type == PORT_8250_CIR" check The check for "port.type == PORT_8250_CIR" is present twice in serial8250_register_8250_port(). The latter was already tried to be dropped by 1104321a7b3b ("serial: Delete dead code for CIR serial ports") and then reverted by 9527b82ae3af ("Revert "serial: Delete dead code for CIR serial ports""). Document this weirdness with a reason. Signed-off-by: "Jiri Slaby (SUSE)" Suggested-by: Andy Shevchenko Acked-by: Andy Shevchenko Cc: "Maciej S. Szmigiero" Link: https://lore.kernel.org/all/aFcDOx1bdB34I5hS@surfacebook.localdomain/ Reviewed-by: Ilpo Järvinen Link: https://lore.kernel.org/r/20250624080641.509959-5-jirislaby@kernel.org Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/tty/serial/8250/8250_core.c b/drivers/tty/serial/8250/8250_core.c index a6ecb8575da4f..feb920c5b2e80 100644 --- a/drivers/tty/serial/8250/8250_core.c +++ b/drivers/tty/serial/8250/8250_core.c @@ -717,6 +717,7 @@ int serial8250_register_8250_port(const struct uart_8250_port *up) nr_uarts++; } + /* Check if it is CIR already. We check this below again, see there why. */ if (uart->port.type == PORT_8250_CIR) { ret = -ENODEV; goto unlock; @@ -815,6 +816,7 @@ int serial8250_register_8250_port(const struct uart_8250_port *up) if (up->dl_write) uart->dl_write = up->dl_write; + /* Check the type (again)! It might have changed by the port.type assignment above. */ if (uart->port.type != PORT_8250_CIR) { if (uart_console_registered(&uart->port)) pm_runtime_get_sync(uart->port.dev);