| EXYNOS EMULATION MODE | |
| ======================== | |
| Copyright (C) 2012 Samsung Electronics | |
| Written by Jonghwa Lee <jonghwa3.lee@samsung.com> | |
| Description | |
| ----------- | |
| Exynos 4x12 (4212, 4412) and 5 series provide emulation mode for thermal management unit. | |
| Thermal emulation mode supports software debug for TMU's operation. User can set temperature | |
| manually with software code and TMU will read current temperature from user value not from | |
| sensor's value. | |
| Enabling CONFIG_THERMAL_EMULATION option will make this support available. | |
| When it's enabled, sysfs node will be created as | |
| /sys/devices/virtual/thermal/thermal_zone'zone id'/emul_temp. | |
| The sysfs node, 'emul_node', will contain value 0 for the initial state. When you input any | |
| temperature you want to update to sysfs node, it automatically enable emulation mode and | |
| current temperature will be changed into it. | |
| (Exynos also supports user changable delay time which would be used to delay of | |
| changing temperature. However, this node only uses same delay of real sensing time, 938us.) | |
| Exynos emulation mode requires synchronous of value changing and enabling. It means when you | |
| want to update the any value of delay or next temperature, then you have to enable emulation | |
| mode at the same time. (Or you have to keep the mode enabling.) If you don't, it fails to | |
| change the value to updated one and just use last succeessful value repeatedly. That's why | |
| this node gives users the right to change termerpature only. Just one interface makes it more | |
| simply to use. | |
| Disabling emulation mode only requires writing value 0 to sysfs node. | |
| TEMP 120 | | |
| | | |
| 100 | | |
| | | |
| 80 | | |
| | +----------- | |
| 60 | | | | |
| | +-------------| | | |
| 40 | | | | | |
| | | | | | |
| 20 | | | +---------- | |
| | | | | | | |
| 0 |______________|_____________|__________|__________|_________ | |
| A A A A TIME | |
| |<----->| |<----->| |<----->| | | |
| | 938us | | | | | | | |
| emulation : 0 50 | 70 | 20 | 0 | |
| current temp : sensor 50 70 20 sensor |