tmio_mmc / PM: Use PM QoS latency constraint
authorRafael J. Wysocki <rjw@sisk.pl>
Tue, 13 Mar 2012 00:01:51 +0000 (01:01 +0100)
committerRafael J. Wysocki <rjw@sisk.pl>
Tue, 13 Mar 2012 21:37:21 +0000 (22:37 +0100)
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>
drivers/mmc/host/tmio_mmc_pio.c

index abad01b37cfbbab50761cafda285d40e67346b3b..fc3eb1a7fe246e86ff240165f77bf3dea78803dc 100644 (file)
@@ -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);