As per Exynos5422 user manaul 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. Cc: Bartlomiej Zolnierkiewicz <bzolnier@xxxxxxxxx> Signed-off-by: Anand Moon <linux.amoon@xxxxxxxxx> --- v1: Fix the commit message --- drivers/thermal/samsung/exynos_tmu.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/drivers/thermal/samsung/exynos_tmu.c b/drivers/thermal/samsung/exynos_tmu.c index 58ff1b577c47..0faec0f16db6 100644 --- a/drivers/thermal/samsung/exynos_tmu.c +++ b/drivers/thermal/samsung/exynos_tmu.c @@ -926,12 +926,14 @@ 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) + if (data->soc == SOC_ARCH_EXYNOS5420 && + data->soc == SOC_ARCH_EXYNOS5420_TRIMINFO) { + data->min_efuse_value = 16; + data->max_efuse_value = 76; + } else { data->min_efuse_value = 40; - else - data->min_efuse_value = 0; - data->max_efuse_value = 100; + data->max_efuse_value = 100; + } break; case SOC_ARCH_EXYNOS5433: data->tmu_set_trip_temp = exynos5433_tmu_set_trip_temp; -- 2.36.1