diff options
| -rw-r--r-- | arch/arm/mach-omap2/gpmc.c | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/arch/arm/mach-omap2/gpmc.c b/arch/arm/mach-omap2/gpmc.c index 437fb6f6df52..104bc2c50987 100644 --- a/arch/arm/mach-omap2/gpmc.c +++ b/arch/arm/mach-omap2/gpmc.c | |||
| @@ -204,11 +204,6 @@ static unsigned long gpmc_get_fclk_period(void) | |||
| 204 | { | 204 | { |
| 205 | unsigned long rate = clk_get_rate(gpmc_l3_clk); | 205 | unsigned long rate = clk_get_rate(gpmc_l3_clk); |
| 206 | 206 | ||
| 207 | if (rate == 0) { | ||
| 208 | printk(KERN_WARNING "gpmc_l3_clk not enabled\n"); | ||
| 209 | return 0; | ||
| 210 | } | ||
| 211 | |||
| 212 | rate /= 1000; | 207 | rate /= 1000; |
| 213 | rate = 1000000000 / rate; /* In picoseconds */ | 208 | rate = 1000000000 / rate; /* In picoseconds */ |
| 214 | 209 | ||
| @@ -1692,13 +1687,18 @@ static int gpmc_probe(struct platform_device *pdev) | |||
| 1692 | else | 1687 | else |
| 1693 | gpmc_irq = res->start; | 1688 | gpmc_irq = res->start; |
| 1694 | 1689 | ||
| 1695 | gpmc_l3_clk = clk_get(&pdev->dev, "fck"); | 1690 | gpmc_l3_clk = devm_clk_get(&pdev->dev, "fck"); |
| 1696 | if (IS_ERR(gpmc_l3_clk)) { | 1691 | if (IS_ERR(gpmc_l3_clk)) { |
| 1697 | dev_err(&pdev->dev, "error: clk_get\n"); | 1692 | dev_err(&pdev->dev, "Failed to get GPMC fck\n"); |
| 1698 | gpmc_irq = 0; | 1693 | gpmc_irq = 0; |
| 1699 | return PTR_ERR(gpmc_l3_clk); | 1694 | return PTR_ERR(gpmc_l3_clk); |
| 1700 | } | 1695 | } |
| 1701 | 1696 | ||
| 1697 | if (!clk_get_rate(gpmc_l3_clk)) { | ||
| 1698 | dev_err(&pdev->dev, "Invalid GPMC fck clock rate\n"); | ||
| 1699 | return -EINVAL; | ||
| 1700 | } | ||
| 1701 | |||
| 1702 | pm_runtime_enable(&pdev->dev); | 1702 | pm_runtime_enable(&pdev->dev); |
| 1703 | pm_runtime_get_sync(&pdev->dev); | 1703 | pm_runtime_get_sync(&pdev->dev); |
| 1704 | 1704 | ||
| @@ -1741,7 +1741,6 @@ static int gpmc_probe(struct platform_device *pdev) | |||
| 1741 | rc = gpmc_probe_dt(pdev); | 1741 | rc = gpmc_probe_dt(pdev); |
| 1742 | if (rc < 0) { | 1742 | if (rc < 0) { |
| 1743 | pm_runtime_put_sync(&pdev->dev); | 1743 | pm_runtime_put_sync(&pdev->dev); |
| 1744 | clk_put(gpmc_l3_clk); | ||
| 1745 | dev_err(gpmc_dev, "failed to probe DT parameters\n"); | 1744 | dev_err(gpmc_dev, "failed to probe DT parameters\n"); |
| 1746 | return rc; | 1745 | return rc; |
| 1747 | } | 1746 | } |
