[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <6abf897b-bbde-4586-941d-9915f15f1934@arm.com>
Date: Tue, 15 Apr 2025 09:36:56 +0100
From: Lukasz Luba <lukasz.luba@....com>
To: Anand Moon <linux.amoon@...il.com>
Cc: Bartlomiej Zolnierkiewicz <bzolnier@...il.com>,
"open list:SAMSUNG THERMAL DRIVER" <linux-pm@...r.kernel.org>,
Justin Stitt <justinstitt@...gle.com>, Bill Wendling <morbo@...gle.com>,
Zhang Rui <rui.zhang@...el.com>, Daniel Lezcano <daniel.lezcano@...aro.org>,
open list <linux-kernel@...r.kernel.org>,
"moderated list:ARM/SAMSUNG S3C, S5P AND EXYNOS ARM ARCHITECTURES"
<linux-arm-kernel@...ts.infradead.org>,
"open list:CLANG/LLVM BUILD SUPPORT:Keyword:b(?i:clang|llvm)b"
<llvm@...ts.linux.dev>,
"open list:SAMSUNG THERMAL DRIVER" <linux-samsung-soc@...r.kernel.org>,
"Rafael J. Wysocki" <rafael@...nel.org>,
Krzysztof Kozlowski <krzk@...nel.org>,
Nick Desaulniers <nick.desaulniers+lkml@...il.com>,
Nathan Chancellor <nathan@...nel.org>, Alim Akhtar <alim.akhtar@...sung.com>
Subject: Re: [PATCH v5 3/3] drivers/thermal/exymos: Fixed the efuse min max
value for exynos5422
On 4/10/25 07:37, Anand Moon wrote:
> As per Exynos5422 user manual e-Fuse range min~max range is 16~76.
> if e-Fuse value is out of this range, then thermal sensor may not
> sense thermal data properly. Refactors the efuse value
> initialization logic within exynos_map_dt_data function by
> replacing the nested if-else statements with a switch statement.
> Ensures proper initialization of efuse values based on the SOC type.
>
> Signed-off-by: Anand Moon <linux.amoon@...il.com>
> ---
> v5: None
> v4: None
> v3: Improve the logic to convert if/else to switch
> ---
> drivers/thermal/samsung/exynos_tmu.c | 19 +++++++++++++++----
> 1 file changed, 15 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/thermal/samsung/exynos_tmu.c b/drivers/thermal/samsung/exynos_tmu.c
> index ac3b9d2c900c..a71cde0a4b17 100644
> --- a/drivers/thermal/samsung/exynos_tmu.c
> +++ b/drivers/thermal/samsung/exynos_tmu.c
> @@ -899,12 +899,23 @@ static int exynos_map_dt_data(struct platform_device *pdev)
> data->gain = 8;
> data->reference_voltage = 16;
> data->efuse_value = 55;
> - if (data->soc != SOC_ARCH_EXYNOS5420 &&
> - data->soc != SOC_ARCH_EXYNOS5420_TRIMINFO)
> + data->max_efuse_value = 100;
> + switch (data->soc) {
> + case SOC_ARCH_EXYNOS3250:
> + case SOC_ARCH_EXYNOS4412:
> + case SOC_ARCH_EXYNOS5250:
> + case SOC_ARCH_EXYNOS5260:
> data->min_efuse_value = 40;
> - else
> + break;
> + case SOC_ARCH_EXYNOS5420:
> + case SOC_ARCH_EXYNOS5420_TRIMINFO:
> + data->min_efuse_value = 16;
> + data->max_efuse_value = 76;
> + break;
> + default:
> data->min_efuse_value = 0;
> - data->max_efuse_value = 100;
> + break;
> + }
> break;
> case SOC_ARCH_EXYNOS5433:
> data->tmu_set_low_temp = exynos5433_tmu_set_low_temp;
I should have added that in earlier version: LGTM,
Reviewed-by: Lukasz Luba <lukasz.luba@....com>
Powered by blists - more mailing lists