mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-22 06:57:57 +00:00
670dedbbd7
Backport cpufreq changes from upstream so that the MediaTek MT7988 SoC
can be supported.
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
(cherry picked from commit e4555d69a1
)
48 lines
1.6 KiB
Diff
48 lines
1.6 KiB
Diff
From 230a74d459244411db91bfd678f17fcf7aedfcd0 Mon Sep 17 00:00:00 2001
|
|
From: Jia-Wei Chang <jia-wei.chang@mediatek.com>
|
|
Date: Fri, 24 Mar 2023 18:11:27 +0800
|
|
Subject: [PATCH 17/21] cpufreq: mediatek: fix passing zero to 'PTR_ERR'
|
|
|
|
In order to prevent passing zero to 'PTR_ERR' in
|
|
mtk_cpu_dvfs_info_init(), we fix the return value of of_get_cci() using
|
|
error pointer by explicitly casting error number.
|
|
|
|
Signed-off-by: Jia-Wei Chang <jia-wei.chang@mediatek.com>
|
|
Fixes: 0daa47325bae ("cpufreq: mediatek: Link CCI device to CPU")
|
|
Reported-by: Dan Carpenter <error27@gmail.com>
|
|
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
|
|
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
|
|
---
|
|
drivers/cpufreq/mediatek-cpufreq.c | 10 +++++-----
|
|
1 file changed, 5 insertions(+), 5 deletions(-)
|
|
|
|
--- a/drivers/cpufreq/mediatek-cpufreq.c
|
|
+++ b/drivers/cpufreq/mediatek-cpufreq.c
|
|
@@ -373,13 +373,13 @@ static struct device *of_get_cci(struct
|
|
struct platform_device *pdev;
|
|
|
|
np = of_parse_phandle(cpu_dev->of_node, "mediatek,cci", 0);
|
|
- if (IS_ERR_OR_NULL(np))
|
|
- return NULL;
|
|
+ if (!np)
|
|
+ return ERR_PTR(-ENODEV);
|
|
|
|
pdev = of_find_device_by_node(np);
|
|
of_node_put(np);
|
|
- if (IS_ERR_OR_NULL(pdev))
|
|
- return NULL;
|
|
+ if (!pdev)
|
|
+ return ERR_PTR(-ENODEV);
|
|
|
|
return &pdev->dev;
|
|
}
|
|
@@ -401,7 +401,7 @@ static int mtk_cpu_dvfs_info_init(struct
|
|
info->ccifreq_bound = false;
|
|
if (info->soc_data->ccifreq_supported) {
|
|
info->cci_dev = of_get_cci(info->cpu_dev);
|
|
- if (IS_ERR_OR_NULL(info->cci_dev)) {
|
|
+ if (IS_ERR(info->cci_dev)) {
|
|
ret = PTR_ERR(info->cci_dev);
|
|
dev_err(cpu_dev, "cpu%d: failed to get cci device\n", cpu);
|
|
return -ENODEV;
|