Re: [PATCH 6/7] mmc: sdhci-msm: Adapt the driver to use OPPs to set clocks/performance state

From: Viresh Kumar
Date: Fri Mar 16 2018 - 00:41:43 EST


On 16-03-18, 09:38, Rajendra Nayak wrote:
> @@ -1540,6 +1571,9 @@ static int sdhci_msm_probe(struct platform_device *pdev)
> pm_runtime_disable(&pdev->dev);
> pm_runtime_set_suspended(&pdev->dev);
> pm_runtime_put_noidle(&pdev->dev);
> + dev_pm_opp_of_remove_table(&pdev->dev);

You can't do this if there is no OPP table. Probably you should just
make it part of the below if block.

> + if (msm_host->opp_table)
> + dev_pm_opp_put_clkname(msm_host->opp_table);
> clk_disable:
> clk_bulk_disable_unprepare(ARRAY_SIZE(msm_host->bulk_clks),
> msm_host->bulk_clks);
> @@ -1564,6 +1598,9 @@ static int sdhci_msm_remove(struct platform_device *pdev)
> pm_runtime_get_sync(&pdev->dev);
> pm_runtime_disable(&pdev->dev);
> pm_runtime_put_noidle(&pdev->dev);
> + dev_pm_opp_of_remove_table(&pdev->dev);

And this too.

> + if (msm_host->opp_table)
> + dev_pm_opp_put_clkname(msm_host->opp_table);
>
> clk_bulk_disable_unprepare(ARRAY_SIZE(msm_host->bulk_clks),
> msm_host->bulk_clks);

Acked-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>

--
viresh