forked from Minki/linux
28928a3ce1
In Odroid XU3 Lite board, the temperature levels reported for thermal zone 0 were weird. In warm room: /sys/class/thermal/thermal_zone0/temp:32000 /sys/class/thermal/thermal_zone1/temp:51000 /sys/class/thermal/thermal_zone2/temp:55000 /sys/class/thermal/thermal_zone3/temp:54000 /sys/class/thermal/thermal_zone4/temp:51000 Sometimes after booting the value was even equal to ambient temperature which is highly unlikely to be a real temperature of sensor in SoC. The thermal sensor's calibration (trimming) is based on fused values. In case of the board above, the fused values are: 35, 52, 43, 58 and 43 (corresponding to each TMU device). However driver defined a minimum value for fused data as 40 and for smaller values it was using a hard-coded 55 instead. This lead to mapping data from sensor to wrong temperatures for thermal zone 0. Various vendor 3.10 trees (Hardkernel's based on Samsung LSI, Artik 10) do not impose any limits on fused values. Since we do not have any knowledge about these limits, use 0 as a minimum accepted fused value. This should essentially allow accepting any reasonable fused value thus behaving like vendor driver. The exynos5420-tmu-sensor-conf.dtsi is copied directly from existing exynos4412 with one change - the samsung,tmu_min_efuse_value. Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org> Acked-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> Acked-by: Eduardo Valentin <edubezval@gmail.com> Reviewed-by: Javier Martinez Canillas <javier@osg.samsung.com> Tested-by: Javier Martinez Canillas <javier@osg.samsung.com> Reviewed-by: Anand Moon <linux.amoon@gmail.com> Tested-by: Anand Moon <linux.amoon@gmail.com>
26 lines
836 B
Plaintext
26 lines
836 B
Plaintext
/*
|
|
* Device tree sources for Exynos5420 TMU sensor configuration
|
|
*
|
|
* Copyright (c) 2014 Lukasz Majewski <l.majewski@samsung.com>
|
|
* Copyright (c) 2017 Krzysztof Kozlowski <krzk@kernel.org>
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License version 2 as
|
|
* published by the Free Software Foundation.
|
|
*
|
|
*/
|
|
|
|
#include <dt-bindings/thermal/thermal_exynos.h>
|
|
|
|
#thermal-sensor-cells = <0>;
|
|
samsung,tmu_gain = <8>;
|
|
samsung,tmu_reference_voltage = <16>;
|
|
samsung,tmu_noise_cancel_mode = <4>;
|
|
samsung,tmu_efuse_value = <55>;
|
|
samsung,tmu_min_efuse_value = <0>;
|
|
samsung,tmu_max_efuse_value = <100>;
|
|
samsung,tmu_first_point_trim = <25>;
|
|
samsung,tmu_second_point_trim = <85>;
|
|
samsung,tmu_default_temp_offset = <50>;
|
|
samsung,tmu_cal_type = <TYPE_ONE_POINT_TRIMMING>;
|