From 42b314da9b13f5aad38c7a58bc4191b08d6b2156 Mon Sep 17 00:00:00 2001
From: Ashwin Gundarapu <linuxuser509@zohomail.in>
Date: Fri, 22 May 2026 19:39:12 +0530
Subject: [PATCH] mmc: sdhci-pci-gli: Fix GL9767 s0ix sleep blocking
Add missing suspend callback for GL9767 chip. Without this, the
SD card reader remains active during system suspend, preventing
the CPU from entering low-power s0ix states.
Use the same suspend function as GL9763e, which properly powers
down the device during suspend.
Link: https://bugzilla.kernel.org/show_bug.cgi?id=219284
Signed-off-by: Ashwin Gundarapu <linuxuser509@zohomail.in>
---
drivers/mmc/host/sdhci-pci-gli.c | 17 +++++++++--------
1 file changed, 9 insertions(+), 8 deletions(-)
diff --git a/drivers/mmc/host/sdhci-pci-gli.c b/drivers/mmc/host/sdhci-pci-gli.c
index 6e4084407662..b6251cdde228 100644
--- a/drivers/mmc/host/sdhci-pci-gli.c
+++ b/drivers/mmc/host/sdhci-pci-gli.c
@@ -2121,13 +2121,14 @@ static const struct sdhci_ops sdhci_gl9767_ops = {
};
const struct sdhci_pci_fixes sdhci_gl9767 = {
- .quirks = SDHCI_QUIRK_NO_ENDATTR_IN_NOPDESC,
- .quirks2 = SDHCI_QUIRK2_BROKEN_DDR50,
- .probe_slot = gli_probe_slot_gl9767,
- .add_host = sdhci_pci_uhs2_add_host,
- .remove_host = sdhci_pci_uhs2_remove_host,
- .ops = &sdhci_gl9767_ops,
+ .quirks = SDHCI_QUIRK_NO_ENDATTR_IN_NOPDESC,
+ .quirks2 = SDHCI_QUIRK2_BROKEN_DDR50,
+ .probe_slot = gli_probe_slot_gl9767,
+ .add_host = sdhci_pci_uhs2_add_host,
+ .remove_host = sdhci_pci_uhs2_remove_host,
+ .ops = &sdhci_gl9767_ops,
#ifdef CONFIG_PM_SLEEP
- .resume = sdhci_pci_gli_resume,
+ .suspend = gl9763e_suspend,
+ .resume = sdhci_pci_gli_resume,
#endif
-};
+};
\ No newline at end of file
--
2.43.0