ANDROID: GKI: drivers: thermal: Indicate in DT the trips are for temperature falling

SoCs may need to handle the case where the temperature is below the
timing closure temperatures of the logic. At low temperature, the timing
closures may not be met. The compensative action at such temperatures is
to increase the voltage, by switching to a higher OPP.

Thermal governors need to understand that the temperatures are
descending in order to correctly estimate the mitigative actions.

Change-Id: I56eb249a853d9c8ed9a96ff8a41a1ba87abb29f4
Bug: 149945768
Signed-off-by: Lina Iyer <ilina@codeaurora.org>
Signed-off-by: Ram Chandrasekar <rkumbako@codeaurora.org>
(cherry picked commit from 8a12149c26)
Signed-off-by: Hridya Valsaraju <hridya@google.com>
This commit is contained in:
Hridya Valsaraju
2020-02-26 15:21:09 -08:00
parent 6a7f798013
commit 82bda5d639
3 changed files with 14 additions and 0 deletions

View File

@@ -165,6 +165,11 @@ Optional property:
2000mW, while on a 10'' tablet is around
4500mW.
- tracks-low: Indicates that the temperature sensor tracks the low
Type: bool thresholds, so the governors may mitigate by ensuring
timing closures and other low temperature operating
issues.
Note: The delay properties are bound to the maximum dT/dt (temperature
derivative over time) in two situations for a thermal zone:
(i) - when passive cooling is activated (polling-delay-passive); and

View File

@@ -992,6 +992,9 @@ int __init of_parse_thermal_zones(void)
tzp->slope = tz->slope;
tzp->offset = tz->offset;
if (of_property_read_bool(child, "tracks-low"))
tzp->tracks_low = true;
zone = thermal_zone_device_register(child->name, tz->ntrips,
mask, tz,
ops, tzp,

View File

@@ -327,6 +327,12 @@ struct thermal_zone_params {
* Used by thermal zone drivers (default 0).
*/
int offset;
/*
* @tracks_low: Indicates that the thermal zone params are for
* temperatures falling below the thresholds.
*/
bool tracks_low;
};
struct thermal_genl_event {