From: Rafael J. Wysocki <r...@sisk.pl>

Make sh_mmcif populate the pm_qos_req member of struct mmc_host, to
let the core know that it should create the pm_latency_limit_ms
host attribute for it, and set the defaul value of that attribute
to 100 ms.

Signed-off-by: Rafael J. Wysocki <r...@sisk.pl>
---
 drivers/mmc/host/sh_mmcif.c |    9 +++++++++
 1 file changed, 9 insertions(+)

Index: linux/drivers/mmc/host/sh_mmcif.c
===================================================================
--- linux.orig/drivers/mmc/host/sh_mmcif.c
+++ linux/drivers/mmc/host/sh_mmcif.c
@@ -57,6 +57,7 @@
 #include <linux/pagemap.h>
 #include <linux/platform_device.h>
 #include <linux/pm_runtime.h>
+#include <linux/slab.h>
 #include <linux/spinlock.h>
 #include <linux/module.h>
 
@@ -1327,6 +1328,12 @@ static int __devinit sh_mmcif_probe(stru
        if (ret < 0)
                goto clean_up2;
 
+       mmc->pm_qos_req = kzalloc(sizeof(*mmc->pm_qos_req), GFP_KERNEL);
+       if (mmc->pm_qos_req)
+               mmc->pm_qos_val = 100;
+       else
+               dev_err(&pdev->dev, "Not enough memory for PM QoS.\n");
+
        INIT_DELAYED_WORK(&host->timeout_work, mmcif_timeout_work);
 
        sh_mmcif_writel(host->addr, MMCIF_CE_INT_MASK, MASK_ALL);
@@ -1397,6 +1404,8 @@ static int __devexit sh_mmcif_remove(str
 
        platform_set_drvdata(pdev, NULL);
 
+       kfree(host->mmc->pm_qos_req);
+
        clk_disable(host->hclk);
        mmc_free_host(host->mmc);
        pm_runtime_put_sync(&pdev->dev);

--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to