Skip to contentSkip to conversation

mmc/sdhci-acpi: enable sdhci-acpi device to suspend/resume asynchronously

PATCH In review Fu, Zhonghui 1 participant 2 messages Nov 16, 2015 – Nov 23, 2015

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH v3 1/1 mmc/sdhci-acpi: enable sdhci-acpi device to suspend/resume asynchronously

Now, PM core supports asynchronous suspend/resume mode for devices during system suspend/resume, and the power state transition of one device may be completed in separate kernel thread. PM core ensures all power state transition timing dependency between devices. This patch enables sdhci-acpi device to suspend/resume asynchronously. This will take advantage of multicore and improve system suspend/resume speed. After enabling the sdhci-acpi devices and all their child devices to suspend/resume asynchronously on ASUS T100TA, the system suspend-to-idle time is reduced from 1645ms to 1096ms, and the system resume time is reduced from 940ms to 908ms.

---
Changes in v3:
- Add test result in commit message

 drivers/mmc/host/sdhci-acpi.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)
drivers/mmc/host/sdhci-acpi.c +2 -0
index f6047fc..3d27f2d 100644
@@ -388,6 +388,8 @@ static int sdhci_acpi_probe(struct platform_device *pdev)
 		pm_runtime_enable(dev);
 	}
 
+	device_enable_async_suspend(dev);
+
 	return 0;
 
 err_free:

-- 1.7.1

#1 lore raw

Any comments are welcome.

Thanks,
Zhonghui

Quoted 34 lines · Zhonghui

Now, PM core supports asynchronous suspend/resume mode for devices during system suspend/resume, and the power state transition of one device may be completed in separate kernel thread. PM core ensures all power state transition timing dependency between devices. This patch enables sdhci-acpi device to suspend/resume asynchronously. This will take advantage of multicore and improve system suspend/resume speed. After enabling the sdhci-acpi devices and all their child devices to suspend/resume asynchronously on ASUS T100TA, the system suspend-to-idle time is reduced from 1645ms to 1096ms, and the system resume time is reduced from 940ms to 908ms.

---
Changes in v3:
- Add test result in commit message

 drivers/mmc/host/sdhci-acpi.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)
drivers/mmc/host/sdhci-acpi.c +2 -1
index f6047fc..3d27f2d 100644
@@ -388,6 +388,8 @@ static int sdhci_acpi_probe(struct platform_device *pdev)
 		pm_runtime_enable(dev);
 	}
 
+	device_enable_async_suspend(dev);
+
 	return 0;
 
 err_free:
-- 1.7.1