]> git.ipfire.org Git - thirdparty/kernel/stable.git/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:22:02 +0000 (18:22 -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 6e33c74e569f09f14aac26b57c7ef7510414d494..7c28d2752a4cdcd2db02217e9d8f188aaf9372b5 100644 (file)
@@ -688,6 +688,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);
 }
@@ -702,10 +703,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;
 }