Thread (3 messages) 3 messages, 2 authors, 2025-06-11

RE: [PATCH v2] mmc: sdhci-of-arasan: Add shutdown callback

From: Paul P, Alvin <hidden>
Date: 2025-06-11 10:23:15
Also in: linux-mmc, lkml

[AMD Official Use Only - AMD Internal Distribution Only]

Hi,
-----Original Message-----
From: Ulf Hansson <redacted>
Sent: Monday, June 9, 2025 6:56 PM
To: Paul P, Alvin <redacted>
Cc: Simek, Michal <michal.simek@amd.com>; adrian.hunter@intel.com; git
(AMD-Xilinx) [off-list ref]; linux-arm-kernel@lists.infradead.org; linux-
mmc@vger.kernel.org; linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2] mmc: sdhci-of-arasan: Add shutdown callback

Caution: This message originated from an External Source. Use proper caution
when opening attachments, clicking links, or responding.


On Thu, 29 May 2025 at 12:49, Paul Alvin [off-list ref] wrote:
quoted
Implement shutdown hook to suspend host and disable all mmc clocks to
increase power saving during shutdown or reboot.
So how long is the shutdown process for the platform? What do we really gain?

In general we don't quite care about power-savings during shutdown, as we are
going to turn off things anyway, right?
Agree, this patch may not be particularly useful for the shutdown use case, but in kexec flow during system restart preparation, it triggers device shutdown. This patch ensures a proper host shutdown by using sdhci platform suspend.

Will update the commit description to reflect the same.

Thanks,
Alvin
quoted
Signed-off-by: Paul Alvin <redacted>
---

Changes in v2:
- Make use of platform suspend instead of driver suspend as driver
  suspend will only get defined if PMC_SLEEP is configured which
  results in build failure if it is not configured.
- Updated commit description.

 drivers/mmc/host/sdhci-of-arasan.c | 6 ++++++
 1 file changed, 6 insertions(+)
diff --git a/drivers/mmc/host/sdhci-of-arasan.c
b/drivers/mmc/host/sdhci-of-arasan.c
index 8c29676ab662..4abdad3c4e5b 100644
--- a/drivers/mmc/host/sdhci-of-arasan.c
+++ b/drivers/mmc/host/sdhci-of-arasan.c
@@ -2056,6 +2056,11 @@ static void sdhci_arasan_remove(struct
platform_device *pdev)
quoted
        clk_disable_unprepare(clk_ahb);  }

+static void sdhci_arasan_shutdown(struct platform_device *pdev) {
+       sdhci_pltfm_suspend(&pdev->dev); }
+
 static struct platform_driver sdhci_arasan_driver = {
        .driver = {
                .name = "sdhci-arasan", @@ -2065,6 +2070,7 @@ static
struct platform_driver sdhci_arasan_driver = {
        },
        .probe = sdhci_arasan_probe,
        .remove = sdhci_arasan_remove,
+       .shutdown = sdhci_arasan_shutdown,
 };

 module_platform_driver(sdhci_arasan_driver);
--
2.44.1
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help