1Kernel driver exynos4_tmu 2================= 3 4Supported chips: 5* ARM SAMSUNG EXYNOS4 series of SoC 6 Prefix: 'exynos4-tmu' 7 Datasheet: Not publicly available 8 9Authors: Donggeun Kim <dg77.kim@samsung.com> 10 11Description 12----------- 13 14This driver allows to read temperature inside SAMSUNG EXYNOS4 series of SoC. 15 16The chip only exposes the measured 8-bit temperature code value 17through a register. 18Temperature can be taken from the temperature code. 19There are three equations converting from temperature to temperature code. 20 21The 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 37TMU(Thermal Management Unit) in EXYNOS4 generates interrupt 38when temperature exceeds pre-defined levels. 39The maximum number of configurable threshold is four. 40The 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 49When an interrupt occurs, this driver notify user space of 50one of four threshold levels for the interrupt 51through kobject_uevent_env and sysfs_notify functions. 52Although an interrupt condition for level_0 can be set, 53it is not notified to user space through sysfs_notify function. 54 55Sysfs Interface 56--------------- 57name name of the temperature sensor 58 RO 59 60temp1_input temperature 61 RO 62 63temp1_max temperature for level_1 interrupt 64 RO 65 66temp1_crit temperature for level_2 interrupt 67 RO 68 69temp1_emergency temperature for level_3 interrupt 70 RO 71 72temp1_max_alarm alarm for level_1 interrupt 73 RO 74 75temp1_crit_alarm 76 alarm for level_2 interrupt 77 RO 78 79temp1_emergency_alarm 80 alarm for level_3 interrupt 81 RO 82