serial: 8250_aspeed_vuart: initialize vuart->port in aspeed_vuart_probe()
authorZev Weiss <zev@bewilderbeest.net>
Mon, 10 May 2021 01:42:30 +0000 (20:42 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 13 May 2021 14:16:29 +0000 (16:16 +0200)
Previously this had only been initialized if we hit the throttling path
in aspeed_vuart_handle_irq(); moving it to the probe function is a
slight consistency improvement and avoids redundant reinitialization in
the interrupt handler.  It also serves as preparation for converting the
driver's I/O accesses to use port->port.membase instead of its own
vuart->regs.

Signed-off-by: Zev Weiss <zev@bewilderbeest.net>
Link: https://lore.kernel.org/r/20210510014231.647-3-zev@bewilderbeest.net
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/8250/8250_aspeed_vuart.c

index 9e8b2e8e32b6461adbe7f85da9841225490bf803..249164dc397b9d4aacb10fa28a4e2e75ff54ecbd 100644 (file)
@@ -349,11 +349,9 @@ static int aspeed_vuart_handle_irq(struct uart_port *port)
                        struct aspeed_vuart *vuart = port->private_data;
                        __aspeed_vuart_set_throttle(up, true);
 
-                       if (!timer_pending(&vuart->unthrottle_timer)) {
-                               vuart->port = up;
+                       if (!timer_pending(&vuart->unthrottle_timer))
                                mod_timer(&vuart->unthrottle_timer,
                                          jiffies + unthrottle_timeout);
-                       }
 
                } else {
                        count = min(space, 256);
@@ -511,6 +509,7 @@ static int aspeed_vuart_probe(struct platform_device *pdev)
                goto err_clk_disable;
 
        vuart->line = rc;
+       vuart->port = serial8250_get_port(vuart->line);
 
        rc = of_parse_phandle_with_fixed_args(
                np, "aspeed,sirq-polarity-sense", 2, 0,