Re: [PATCH] cpufreq: imx6q-cpufreq: Fix speed grading check for imx6qp
From: Lucas Stach
Date: Tue Dec 19 2017 - 12:02:33 EST
Am Dienstag, den 19.12.2017, 16:56 +0100 schrieb Stefan Riedmueller:
> Add compatibility for the i.MX 6QuadPlus to make it behave like the
> i.MX 6Quad, as both SOCs use the same operating points. Otherwise the
> i.MX 6QuadPlus tries to run with 1.2 GHz even though it only
> supports 1 GHz.
There is already an applied patch to fix this issue:
https://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git/commit/?h=bleeding-edge&id=ccc153a6de1f7741b5ef7c996f9be133772b2092
Regards,
Lucas
> Signed-off-by: Stefan Riedmueller <s.riedmueller@xxxxxxxxx>
> ---
> Âdrivers/cpufreq/imx6q-cpufreq.c | 8 +++++---
> Â1 file changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/cpufreq/imx6q-cpufreq.c b/drivers/cpufreq/imx6q-cpufreq.c
> index 628fe89..5ca1988 100644
> --- a/drivers/cpufreq/imx6q-cpufreq.c
> +++ b/drivers/cpufreq/imx6q-cpufreq.c
> @@ -218,7 +218,7 @@ static void imx6q_opp_check_speed_grading(struct device *dev)
> > Â Â* SPEED_GRADING[1:0] defines the max speed of ARM:
> > Â Â* 2b'11: 1200000000Hz;
> > Â Â* 2b'10: 996000000Hz;
> > - Â* 2b'01: 852000000Hz; -- i.MX6Q Only, exclusive with 996MHz.
> > + Â* 2b'01: 852000000Hz; -- i.MX6Q/QP Only, exclusive with 996MHz.
> > Â Â* 2b'00: 792000000Hz;
> > Â Â* We need to set the max speed of ARM according to fuse map.
> > Â Â*/
> @@ -227,13 +227,15 @@ static void imx6q_opp_check_speed_grading(struct device *dev)
> > Â val &= 0x3;
> Â
> > Â if ((val != OCOTP_CFG3_SPEED_1P2GHZ) &&
> > - ÂÂÂÂÂof_machine_is_compatible("fsl,imx6q"))
> > + ÂÂÂÂ(of_machine_is_compatible("fsl,imx6q") ||
> > + ÂÂÂÂÂof_machine_is_compatible("fsl,imx6qp")))
> > Â if (dev_pm_opp_disable(dev, 1200000000))
> > Â dev_warn(dev, "failed to disable 1.2GHz OPP\n");
> > Â if (val < OCOTP_CFG3_SPEED_996MHZ)
> > Â if (dev_pm_opp_disable(dev, 996000000))
> > Â dev_warn(dev, "failed to disable 996MHz OPP\n");
> > - if (of_machine_is_compatible("fsl,imx6q")) {
> > + if (of_machine_is_compatible("fsl,imx6q") ||
> > + ÂÂÂÂof_machine_is_compatible("fsl,imx6qp")) {
> > Â if (val != OCOTP_CFG3_SPEED_852MHZ)
> > Â if (dev_pm_opp_disable(dev, 852000000))
> > Â dev_warn(dev, "failed to disable 852MHz OPP\n");