[PATCH v2 3/3] cpufreq: imx6q: add of_init_opp_table
Shawn Guo
shawn.guo at linaro.org
Thu Dec 19 20:55:57 EST 2013
On Thu, Dec 19, 2013 at 12:35:38PM -0800, John Tobias wrote:
> Add a routine check to see if the platform supplied the OPP table.
> Incase there's no OPP table exist, it will try to initialise it.
>
> It's been tested on iMX6SL board where the platform doesn't have
> an OPP table.
>
> Signed-off-by: John Tobias <john.tobias.ph at gmail.com>
> ---
> drivers/cpufreq/imx6q-cpufreq.c | 11 +++++++++++
> 1 file changed, 11 insertions(+)
>
> diff --git a/drivers/cpufreq/imx6q-cpufreq.c b/drivers/cpufreq/imx6q-cpufreq.c
> index 4b3f18e..8c56898 100644
> --- a/drivers/cpufreq/imx6q-cpufreq.c
> +++ b/drivers/cpufreq/imx6q-cpufreq.c
> @@ -166,6 +166,17 @@ static int imx6q_cpufreq_probe(struct platform_device *pdev)
> return -ENOENT;
> }
>
> + /* Get the OPP table, if the platform did not supply it. */
> + num = dev_pm_opp_get_opp_count(cpu_dev);
> + if (num < 0) {
> + ret = of_init_opp_table(cpu_dev);
> + if (ret < 0) {
> + dev_err(cpu_dev, "failed to init OPP table\n");
> + ret = -ENODEV;
> + goto put_node;
> + }
> + }
> +
Oh, no. dev_pm_opp_get_opp_count() is already being called in
imx6q_cpufreq_probe(). Why don't you just plug your code into there?
Shawn
> arm_clk = devm_clk_get(cpu_dev, "arm");
> pll1_sys_clk = devm_clk_get(cpu_dev, "pll1_sys");
> pll1_sw_clk = devm_clk_get(cpu_dev, "pll1_sw");
> --
> 1.8.3.2
>
More information about the linux-arm-kernel
mailing list