drivers: misc: therm_est: Add timer trip support
authorJinyoung Park <jinyoungp@nvidia.com>
Fri, 29 Mar 2013 16:48:57 +0000 (01:48 +0900)
committerDan Willemsen <dwillemsen@nvidia.com>
Sat, 14 Sep 2013 20:08:33 +0000 (13:08 -0700)
commit3846258e8c662bc1287451010303107fb06eda23
treee9bef3df8123ea66798e27a0a8fc3ae30cf74874
parent90708f9c67c23a2d39b778c3841b36264e86c069
drivers: misc: therm_est: Add timer trip support

Timer trip provides a way to change trip temp dynamically based on timestamp
when the trip is enabled.
- Timer trip can be various numbers on a trip.
- If the trip is enabled, then timer will be started with time_after delay
  in the corresponding timer trip. After the timer expires, trip_temp and
  hysteresis in the corresponding timer trip will be used to trip_temp for
  the trip.
- When the timer has expired, index of timer trip will be increased a step
  and then start the timer with time_after delay in newly indexed timer trip.
- When temp is below trip temp, index of timer trip will be decreased a step
  and then stop the timer and start the timer with time_after delay in newly
  indexed timer trip.
- The timer will be stopped if there is no more next timer trip on the trip,
  or the trip is disabled.

This change is based on http://git-master/r/198853 which is the timer
trip on Rel-16. The difference between two changes is that this change
can be used timer trip on multiple trip points, but the previous change
on Rel-16 can be used timer trip on only a trip point.

Bug 1233363
Bug 1236444

Signed-off-by: Jinyoung Park <jinyoungp@nvidia.com>
Reviewed-on: http://git-master/r/214612
(cherry picked from commit 1894b17754662f4cdc7a1176a62767fc8a97601c)

Change-Id: I999f496862fe131e4209b25b308f2223ac7cc350
Signed-off-by: Jinyoung Park <jinyoungp@nvidia.com>
Reviewed-on: http://git-master/r/220222
Reviewed-by: Automatic_Commit_Validation_User
GVS: Gerrit_Virtual_Submit
Reviewed-by: Diwakar Tundlam <dtundlam@nvidia.com>
drivers/misc/therm_est.c
include/linux/therm_est.h