]> git.itanic.dy.fi Git - linux-stable/commitdiff
serial: 8250_exar: Don't remove GPIO device on suspend
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Mon, 19 Feb 2024 15:04:57 +0000 (17:04 +0200)
committerSasha Levin <sashal@kernel.org>
Tue, 26 Mar 2024 22:17:30 +0000 (18:17 -0400)
[ Upstream commit 73b5a5c00be39e23b194bad10e1ea8bb73eee176 ]

It seems a copy&paste mistake that suspend callback removes the GPIO
device. There is no counterpart of this action, means once suspended
there is no more GPIO device available untile full unbind-bind cycle
is performed. Remove suspicious GPIO device removal in suspend.

Fixes: d0aeaa83f0b0 ("serial: exar: split out the exar code from 8250_pci")
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20240219150627.2101198-2-andriy.shevchenko@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/tty/serial/8250/8250_exar.c

index 23366f868ae3a8391f631e9952eb70baf9959076..dab94835b6f5fe5173c7254d5dd6301d8ee002cb 100644 (file)
@@ -753,6 +753,7 @@ static void exar_pci_remove(struct pci_dev *pcidev)
        for (i = 0; i < priv->nr; i++)
                serial8250_unregister_port(priv->line[i]);
 
+       /* Ensure that every init quirk is properly torn down */
        if (priv->board->exit)
                priv->board->exit(pcidev);
 }
@@ -767,10 +768,6 @@ static int __maybe_unused exar_suspend(struct device *dev)
                if (priv->line[i] >= 0)
                        serial8250_suspend_port(priv->line[i]);
 
-       /* Ensure that every init quirk is properly torn down */
-       if (priv->board->exit)
-               priv->board->exit(pcidev);
-
        return 0;
 }