Browse Source

tmio_mmc / PM: Use PM QoS latency constraint

Make tmio_mmc call dev_pm_qos_expose_latency_limit() to expose
the PM QoS latency limit to user space and specify the initial
value of it as 100 microseconds.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Rafael J. Wysocki 13 years ago
parent
commit
c419e611c3
1 changed files with 5 additions and 0 deletions
  1. 5 0
      drivers/mmc/host/tmio_mmc_pio.c

+ 5 - 0
drivers/mmc/host/tmio_mmc_pio.c

@@ -39,6 +39,7 @@
 #include <linux/module.h>
 #include <linux/pagemap.h>
 #include <linux/platform_device.h>
+#include <linux/pm_qos.h>
 #include <linux/pm_runtime.h>
 #include <linux/scatterlist.h>
 #include <linux/workqueue.h>
@@ -951,6 +952,8 @@ int __devinit tmio_mmc_host_probe(struct tmio_mmc_host **host,
 
 	mmc_add_host(mmc);
 
+	dev_pm_qos_expose_latency_limit(&pdev->dev, 100);
+
 	/* Unmask the IRQs we want to know about */
 	if (!_host->chan_rx)
 		irq_mask |= TMIO_MASK_READOP;
@@ -989,6 +992,8 @@ void tmio_mmc_host_remove(struct tmio_mmc_host *host)
 		|| host->mmc->caps & MMC_CAP_NONREMOVABLE)
 		pm_runtime_get_sync(&pdev->dev);
 
+	dev_pm_qos_hide_latency_limit(&pdev->dev);
+
 	mmc_remove_host(host->mmc);
 	cancel_work_sync(&host->done);
 	cancel_delayed_work_sync(&host->delayed_reset_work);