diff mbox series

cpufreq: imx6q: Fixes unwanted cpu overclocking on i.MX6ULL

Message ID 20200211115807.57292-1-cniedermaier@dh-electronics.com (mailing list archive)
State New, archived
Headers show
Series cpufreq: imx6q: Fixes unwanted cpu overclocking on i.MX6ULL | expand

Commit Message

Christoph Niedermaier Feb. 11, 2020, 11:58 a.m. UTC
imx6ul_opp_check_speed_grading is called for both i.MX6UL and i.MX6ULL.
Since the i.MX6ULL was introduced to a separate ocotp compatible node
later, it is possible that the i.MX6ULL has also dtbs with
"fsl,imx6ull-ocotp". On a system without nvmem-cell speed grade a
missing check on this node causes a driver fail without considering
the cpu speed grade.

This patch prevents unwanted cpu overclocking on i.MX6ULL with compatible
node "fsl,imx6ull-ocotp" in old dtbs without nvmem-cell speed grade.

Fixes: 2733fb0d0699 ("cpufreq: imx6q: read OCOTP through nvmem for imx6ul/imx6ull")
Signed-off-by: Christoph Niedermaier <cniedermaier@dh-electronics.com>
---
 drivers/cpufreq/imx6q-cpufreq.c | 3 +++
 1 file changed, 3 insertions(+)

Comments

Viresh Kumar Feb. 12, 2020, 4:12 a.m. UTC | #1
On 11-02-20, 12:58, Christoph Niedermaier wrote:
> imx6ul_opp_check_speed_grading is called for both i.MX6UL and i.MX6ULL.
> Since the i.MX6ULL was introduced to a separate ocotp compatible node
> later, it is possible that the i.MX6ULL has also dtbs with
> "fsl,imx6ull-ocotp". On a system without nvmem-cell speed grade a
> missing check on this node causes a driver fail without considering
> the cpu speed grade.
> 
> This patch prevents unwanted cpu overclocking on i.MX6ULL with compatible
> node "fsl,imx6ull-ocotp" in old dtbs without nvmem-cell speed grade.
> 
> Fixes: 2733fb0d0699 ("cpufreq: imx6q: read OCOTP through nvmem for imx6ul/imx6ull")
> Signed-off-by: Christoph Niedermaier <cniedermaier@dh-electronics.com>
> ---
>  drivers/cpufreq/imx6q-cpufreq.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/drivers/cpufreq/imx6q-cpufreq.c b/drivers/cpufreq/imx6q-cpufreq.c
> index 648a09a1778a..1fcbbd53a48a 100644
> --- a/drivers/cpufreq/imx6q-cpufreq.c
> +++ b/drivers/cpufreq/imx6q-cpufreq.c
> @@ -281,6 +281,9 @@ static int imx6ul_opp_check_speed_grading(struct device *dev)
>  
>  		np = of_find_compatible_node(NULL, NULL, "fsl,imx6ul-ocotp");
>  		if (!np)
> +			np = of_find_compatible_node(NULL, NULL,
> +						     "fsl,imx6ull-ocotp");
> +		if (!np)
>  			return -ENOENT;
>  
>  		base = of_iomap(np, 0);

Applied. Thanks.
diff mbox series

Patch

diff --git a/drivers/cpufreq/imx6q-cpufreq.c b/drivers/cpufreq/imx6q-cpufreq.c
index 648a09a1778a..1fcbbd53a48a 100644
--- a/drivers/cpufreq/imx6q-cpufreq.c
+++ b/drivers/cpufreq/imx6q-cpufreq.c
@@ -281,6 +281,9 @@  static int imx6ul_opp_check_speed_grading(struct device *dev)
 
 		np = of_find_compatible_node(NULL, NULL, "fsl,imx6ul-ocotp");
 		if (!np)
+			np = of_find_compatible_node(NULL, NULL,
+						     "fsl,imx6ull-ocotp");
+		if (!np)
 			return -ENOENT;
 
 		base = of_iomap(np, 0);