diff options
| author | avinash philip <avinashphilip@ti.com> | 2013-06-12 16:30:56 +0530 | 
|---|---|---|
| committer | Tony Lindgren <tony@atomide.com> | 2013-06-12 09:56:30 -0700 | 
| commit | b3f5525c55ce5cb67af06f04dbbf28358da23a2c (patch) | |
| tree | fb08ef866e02d919b1ef6139d63c041134218fc7 /arch/arm/mach-omap2/gpmc.c | |
| parent | f34f37160c2960a763ed05d1e13b2ea75a48d0fb (diff) | |
ARM: OMAP2+: gpmc: Converts GPMC driver to pm_runtime capable
Support for pm_runtime add to GPMC driver.
Signed-off-by: Philip Avinash <avinashphilip@ti.com>
Signed-off-by: Pekon Gupta <pekon@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'arch/arm/mach-omap2/gpmc.c')
| -rw-r--r-- | arch/arm/mach-omap2/gpmc.c | 8 | 
1 files changed, 6 insertions, 2 deletions
| diff --git a/arch/arm/mach-omap2/gpmc.c b/arch/arm/mach-omap2/gpmc.c index 21b963604430..bac18b3ebbfb 100644 --- a/arch/arm/mach-omap2/gpmc.c +++ b/arch/arm/mach-omap2/gpmc.c @@ -30,6 +30,7 @@  #include <linux/of_mtd.h>  #include <linux/of_device.h>  #include <linux/mtd/nand.h> +#include <linux/pm_runtime.h>  #include <linux/platform_data/mtd-nand-omap2.h> @@ -1608,7 +1609,8 @@ static int gpmc_probe(struct platform_device *pdev)  		return PTR_ERR(gpmc_l3_clk);  	} -	clk_prepare_enable(gpmc_l3_clk); +	pm_runtime_enable(&pdev->dev); +	pm_runtime_get_sync(&pdev->dev);  	gpmc_dev = &pdev->dev; @@ -1648,7 +1650,7 @@ static int gpmc_probe(struct platform_device *pdev)  	rc = gpmc_probe_dt(pdev);  	if (rc < 0) { -		clk_disable_unprepare(gpmc_l3_clk); +		pm_runtime_put_sync(&pdev->dev);  		clk_put(gpmc_l3_clk);  		dev_err(gpmc_dev, "failed to probe DT parameters\n");  		return rc; @@ -1661,6 +1663,8 @@ static int gpmc_remove(struct platform_device *pdev)  {  	gpmc_free_irq();  	gpmc_mem_exit(); +	pm_runtime_put_sync(&pdev->dev); +	pm_runtime_disable(&pdev->dev);  	gpmc_dev = NULL;  	return 0;  } | 
