Based on kernel version 3.9. Page generated on 2013-05-02 23:15 EST.
1 Kernel driver exynos4_tmu 2 ================= 3 4 Supported chips: 5 * ARM SAMSUNG EXYNOS4 series of SoC 6 Prefix: 'exynos4-tmu' 7 Datasheet: Not publicly available 8 9 Authors: Donggeun Kim <dg77.kim@samsung.com> 10 11 Description 12 ----------- 13 14 This driver allows to read temperature inside SAMSUNG EXYNOS4 series of SoC. 15 16 The chip only exposes the measured 8-bit temperature code value 17 through a register. 18 Temperature can be taken from the temperature code. 19 There are three equations converting from temperature to temperature code. 20 21 The three equations are: 22 1. Two point trimming 23 Tc = (T - 25) * (TI2 - TI1) / (85 - 25) + TI1 24 25 2. One point trimming 26 Tc = T + TI1 - 25 27 28 3. No trimming 29 Tc = T + 50 30 31 Tc: Temperature code, T: Temperature, 32 TI1: Trimming info for 25 degree Celsius (stored at TRIMINFO register) 33 Temperature code measured at 25 degree Celsius which is unchanged 34 TI2: Trimming info for 85 degree Celsius (stored at TRIMINFO register) 35 Temperature code measured at 85 degree Celsius which is unchanged 36 37 TMU(Thermal Management Unit) in EXYNOS4 generates interrupt 38 when temperature exceeds pre-defined levels. 39 The maximum number of configurable threshold is four. 40 The threshold levels are defined as follows: 41 Level_0: current temperature > trigger_level_0 + threshold 42 Level_1: current temperature > trigger_level_1 + threshold 43 Level_2: current temperature > trigger_level_2 + threshold 44 Level_3: current temperature > trigger_level_3 + threshold 45 46 The threshold and each trigger_level are set 47 through the corresponding registers. 48 49 When an interrupt occurs, this driver notify kernel thermal framework 50 with the function exynos4_report_trigger. 51 Although an interrupt condition for level_0 can be set, 52 it can be used to synchronize the cooling action.