thermal: Low power shutdown policy bringup

Bug: 363336093
Bug: 361454856
Bug: 363070211
Test: emul_temp battery and VIRTUAL-SKIN for idle, camera use cases
and check thermal log.

Flag: EXEMPT config change
Change-Id: Ic01a4b5c8bdfa242e05bd560297d4e04d1159fc3
This commit is contained in:
TeYuan Wang 2024-10-31 01:14:53 +00:00 committed by Kame(TeYuan) Wang
parent 6673cb2352
commit bd612e022b
10 changed files with 367 additions and 0 deletions

View file

@ -27,6 +27,7 @@ PRODUCT_COPY_FILES += \
ifneq (,$(filter $(TARGET_DEVICE),komodo caiman tokay)) ifneq (,$(filter $(TARGET_DEVICE),komodo caiman tokay))
PRODUCT_COPY_FILES += \ PRODUCT_COPY_FILES += \
$(TARGET_VENDOR_THERMAL_CONFIG_PATH)/thermal_info_config_$(TARGET_DEVICE)_proto.json:$(TARGET_COPY_OUT_VENDOR)/etc/thermal_info_config_proto.json \ $(TARGET_VENDOR_THERMAL_CONFIG_PATH)/thermal_info_config_$(TARGET_DEVICE)_proto.json:$(TARGET_COPY_OUT_VENDOR)/etc/thermal_info_config_proto.json \
$(TARGET_VENDOR_THERMAL_CONFIG_PATH)/thermal_info_config_lpm_$(TARGET_DEVICE).json:$(TARGET_COPY_OUT_VENDOR)/etc/thermal_info_config_lpm.json \
$(TARGET_VENDOR_THERMAL_CONFIG_PATH)/vt_estimation_model_$(TARGET_DEVICE).tflite:$(TARGET_COPY_OUT_VENDOR)/etc/vt_estimation_model.tflite \ $(TARGET_VENDOR_THERMAL_CONFIG_PATH)/vt_estimation_model_$(TARGET_DEVICE).tflite:$(TARGET_COPY_OUT_VENDOR)/etc/vt_estimation_model.tflite \
$(TARGET_VENDOR_THERMAL_CONFIG_PATH)/vt_prediction_lstm_model_$(TARGET_DEVICE).tflite:$(TARGET_COPY_OUT_VENDOR)/etc/vt_prediction_lstm_model.tflite $(TARGET_VENDOR_THERMAL_CONFIG_PATH)/vt_prediction_lstm_model_$(TARGET_DEVICE).tflite:$(TARGET_COPY_OUT_VENDOR)/etc/vt_prediction_lstm_model.tflite
ifneq (,$(filter $(TARGET_BUILD_VARIANT), userdebug eng)) ifneq (,$(filter $(TARGET_BUILD_VARIANT), userdebug eng))

View file

@ -888,6 +888,26 @@
"ResetOnInit": true, "ResetOnInit": true,
"Type": "Property" "Type": "Property"
}, },
{
"Name": "ntc_critical_trip",
"Path": "/dev/thermal/tz-by-name/quiet_therm/trip_point_1_temp",
"Values": [
"60000",
"70000"
],
"DefaultIndex": 0,
"ResetOnInit": true
},
{
"Name": "ntc_hot_trip",
"Path": "/dev/thermal/tz-by-name/quiet_therm/trip_point_2_temp",
"Values": [
"65000",
"75000"
],
"DefaultIndex": 0,
"ResetOnInit": true
},
{ {
"Name": "MIFTargetLoad", "Name": "MIFTargetLoad",
"Path": "/sys/class/devfreq/17000010.devfreq_mif/interactive/target_load", "Path": "/sys/class/devfreq/17000010.devfreq_mif/interactive/target_load",
@ -3398,6 +3418,18 @@
"Duration": 0, "Duration": 0,
"Value": "1" "Value": "1"
}, },
{
"PowerHint": "THERMAL_ShutdownMode_EMERGENCY",
"Node": "ntc_critical_trip",
"Duration": 0,
"Value": "70000"
},
{
"PowerHint": "THERMAL_ShutdownMode_EMERGENCY",
"Node": "ntc_hot_trip",
"Duration": 0,
"Value": "75000"
},
{ {
"PowerHint": "GAME", "PowerHint": "GAME",
"Node": "PMU_POLL", "Node": "PMU_POLL",

View file

@ -888,6 +888,26 @@
"ResetOnInit": true, "ResetOnInit": true,
"Type": "Property" "Type": "Property"
}, },
{
"Name": "ntc_critical_trip",
"Path": "/dev/thermal/tz-by-name/quiet_therm/trip_point_1_temp",
"Values": [
"60000",
"70000"
],
"DefaultIndex": 0,
"ResetOnInit": true
},
{
"Name": "ntc_hot_trip",
"Path": "/dev/thermal/tz-by-name/quiet_therm/trip_point_2_temp",
"Values": [
"65000",
"75000"
],
"DefaultIndex": 0,
"ResetOnInit": true
},
{ {
"Name": "MIFTargetLoad", "Name": "MIFTargetLoad",
"Path": "/sys/class/devfreq/17000010.devfreq_mif/interactive/target_load", "Path": "/sys/class/devfreq/17000010.devfreq_mif/interactive/target_load",
@ -3398,6 +3418,18 @@
"Duration": 0, "Duration": 0,
"Value": "1" "Value": "1"
}, },
{
"PowerHint": "THERMAL_ShutdownMode_EMERGENCY",
"Node": "ntc_critical_trip",
"Duration": 0,
"Value": "70000"
},
{
"PowerHint": "THERMAL_ShutdownMode_EMERGENCY",
"Node": "ntc_hot_trip",
"Duration": 0,
"Value": "75000"
},
{ {
"PowerHint": "GAME", "PowerHint": "GAME",
"Node": "PMU_POLL", "Node": "PMU_POLL",

View file

@ -888,6 +888,26 @@
"ResetOnInit": true, "ResetOnInit": true,
"Type": "Property" "Type": "Property"
}, },
{
"Name": "ntc_critical_trip",
"Path": "/dev/thermal/tz-by-name/quiet_therm/trip_point_1_temp",
"Values": [
"60000",
"70000"
],
"DefaultIndex": 0,
"ResetOnInit": true
},
{
"Name": "ntc_hot_trip",
"Path": "/dev/thermal/tz-by-name/quiet_therm/trip_point_2_temp",
"Values": [
"65000",
"75000"
],
"DefaultIndex": 0,
"ResetOnInit": true
},
{ {
"Name": "MIFTargetLoad", "Name": "MIFTargetLoad",
"Path": "/sys/class/devfreq/17000010.devfreq_mif/interactive/target_load", "Path": "/sys/class/devfreq/17000010.devfreq_mif/interactive/target_load",
@ -3398,6 +3418,18 @@
"Duration": 0, "Duration": 0,
"Value": "1" "Value": "1"
}, },
{
"PowerHint": "THERMAL_ShutdownMode_EMERGENCY",
"Node": "ntc_critical_trip",
"Duration": 0,
"Value": "70000"
},
{
"PowerHint": "THERMAL_ShutdownMode_EMERGENCY",
"Node": "ntc_hot_trip",
"Duration": 0,
"Value": "75000"
},
{ {
"PowerHint": "GAME", "PowerHint": "GAME",
"Node": "PMU_POLL", "Node": "PMU_POLL",

View file

@ -49,6 +49,11 @@
"Name":"battery", "Name":"battery",
"Type":"BATTERY", "Type":"BATTERY",
"HotThreshold":["NAN", "NAN", "NAN", "NAN", "NAN", "NAN", 60.0], "HotThreshold":["NAN", "NAN", "NAN", "NAN", "NAN", "NAN", 60.0],
"HotHysteresis":[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.9],
"SendCallback": true,
"TripPointIgnorable": true,
"PollingDelay": 60000,
"PassiveDelay": 60000,
"Multiplier":0.001 "Multiplier":0.001
}, },
{ {

View file

@ -49,6 +49,11 @@
"Name":"battery", "Name":"battery",
"Type":"BATTERY", "Type":"BATTERY",
"HotThreshold":["NAN", "NAN", "NAN", "NAN", "NAN", "NAN", 60.0], "HotThreshold":["NAN", "NAN", "NAN", "NAN", "NAN", "NAN", 60.0],
"HotHysteresis":[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.9],
"SendCallback": true,
"TripPointIgnorable": true,
"PollingDelay": 60000,
"PassiveDelay": 60000,
"Multiplier":0.001 "Multiplier":0.001
}, },
{ {

View file

@ -0,0 +1,85 @@
{
"Include": ["thermal_info_config.json"],
"Sensors":[
{
"Name":"SkinShutdownModeHighPower",
"Type":"UNKNOWN",
"VirtualSensor":true,
"Formula":"COUNT_THRESHOLD",
"Combination":["VIRTUAL-SKIN", "PARTIAL_SYSTEM_POWER"],
"CombinationType":["SENSOR", "ODPM"],
"Coefficient":[55000.0, 1000.0],
"HotThreshold":["NAN", "NAN", "NAN", "NAN", "NAN", "NAN", 2.0],
"HotHysteresis":[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.9],
"Multiplier":1
},
{
"Name":"BatteryShutdownModeHighPower",
"Type":"UNKNOWN",
"VirtualSensor":true,
"Formula":"COUNT_THRESHOLD",
"Combination":["battery", "PARTIAL_SYSTEM_POWER"],
"CombinationType":["SENSOR", "ODPM"],
"Coefficient":[60000.0, 1000.0],
"HotThreshold":["NAN", "NAN", "NAN", "NAN", "NAN", "NAN", 2.0],
"HotHysteresis":[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.9],
"Multiplier":1
},
{
"Name":"battery",
"Type":"BATTERY",
"HotThreshold":["NAN", "NAN", "NAN", "NAN", "NAN", 60.0, 65.0],
"HotHysteresis":[0.0, 0.0, 0.0, 0.0, 0.0, 5.0, 1.9],
"SeverityReference": "BatteryShutdownModeHighPower",
"SendCallback": true,
"TripPointIgnorable": true,
"PollingDelay": 60000,
"PassiveDelay": 60000,
"Multiplier":0.001
},
{
"Name":"ShutdownMode",
"Type":"UNKNOWN",
"VirtualSensor":true,
"TriggerSensor": ["north_therm", "soc_therm", "charging_therm", "disp_therm", "quiet_therm", "usb_pwr_therm", "rfpa_therm", "btmspkr_therm"],
"Formula":"WEIGHTED_AVG",
"Combination":["VIRTUAL-SKIN"],
"Coefficient":[1.0],
"HotThreshold":["NAN", "NAN", "NAN", "NAN", "NAN", 55.0, "NAN"],
"HotHysteresis":[0.0, 1.9, 1.9, 1.9, 1.9, 4.9, 1.9],
"SeverityReference": "battery",
"Multiplier":0.001,
"SendCallback": true,
"SendPowerHint": true,
"PollingDelay":300000,
"PassiveDelay":7000
},
{
"Name": "VIRTUAL-SKIN",
"Type": "SKIN",
"Version": "6.1",
"VirtualSensor": true,
"TriggerSensor": ["north_therm", "soc_therm", "charging_therm", "disp_therm", "quiet_therm", "usb_pwr_therm", "rfpa_therm", "btmspkr_therm"],
"Formula": "MAXIMUM",
"Combination": ["VIRTUAL-SKIN-MODEL-UPDATED", "VIRTUAL-SKIN-LEGACY"],
"Coefficient": [1.0, "VIRTUAL-SKIN-LEGACY-SHUTDOWN"],
"CoefficientType":["CONSTANT", "SENSOR"],
"HotThreshold": ["NAN", 39.0, 43.0, 45.0, 46.5, 52.0, 65.0],
"HotHysteresis": [0.0, 1.9, 1.9, 1.9, 1.4, 1.9, 1.9],
"SeverityReference": "SkinShutdownModeHighPower",
"Multiplier": 0.001,
"SendCallback": true,
"PollingDelay": 300000,
"PassiveDelay": 7000,
"PredictorInfo": {
"Sensor": "VIRTUAL-SKIN-LSTM-MODEL"
},
"BindedCdevInfo": [
{
"CdevRequest": "gxp-cooling",
"LimitInfo": [0, 0, 0, 0, 0, 6, 6]
}
]
}
]
}

View file

@ -0,0 +1,85 @@
{
"Include": ["thermal_info_config.json"],
"Sensors":[
{
"Name":"SkinShutdownModeHighPower",
"Type":"UNKNOWN",
"VirtualSensor":true,
"Formula":"COUNT_THRESHOLD",
"Combination":["VIRTUAL-SKIN", "PARTIAL_SYSTEM_POWER"],
"CombinationType":["SENSOR", "ODPM"],
"Coefficient":[55000.0, 1000.0],
"HotThreshold":["NAN", "NAN", "NAN", "NAN", "NAN", "NAN", 2.0],
"HotHysteresis":[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.9],
"Multiplier":1
},
{
"Name":"BatteryShutdownModeHighPower",
"Type":"UNKNOWN",
"VirtualSensor":true,
"Formula":"COUNT_THRESHOLD",
"Combination":["battery", "PARTIAL_SYSTEM_POWER"],
"CombinationType":["SENSOR", "ODPM"],
"Coefficient":[60000.0, 1000.0],
"HotThreshold":["NAN", "NAN", "NAN", "NAN", "NAN", "NAN", 2.0],
"HotHysteresis":[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.9],
"Multiplier":1
},
{
"Name":"battery",
"Type":"BATTERY",
"HotThreshold":["NAN", "NAN", "NAN", "NAN", "NAN", 60.0, 65.0],
"HotHysteresis":[0.0, 0.0, 0.0, 0.0, 0.0, 5.0, 1.9],
"SeverityReference": "BatteryShutdownModeHighPower",
"SendCallback": true,
"TripPointIgnorable": true,
"PollingDelay": 60000,
"PassiveDelay": 60000,
"Multiplier":0.001
},
{
"Name":"ShutdownMode",
"Type":"UNKNOWN",
"VirtualSensor":true,
"TriggerSensor": ["north_therm", "soc_therm", "charging_therm", "disp_therm", "quiet_therm", "usb_pwr_therm", "rfpa_therm", "btmspkr_therm"],
"Formula":"WEIGHTED_AVG",
"Combination":["VIRTUAL-SKIN"],
"Coefficient":[1.0],
"HotThreshold":["NAN", "NAN", "NAN", "NAN", "NAN", 55.0, "NAN"],
"HotHysteresis":[0.0, 1.9, 1.9, 1.9, 1.9, 4.9, 1.9],
"SeverityReference": "battery",
"Multiplier":0.001,
"SendCallback": true,
"SendPowerHint": true,
"PollingDelay":300000,
"PassiveDelay":7000
},
{
"Name": "VIRTUAL-SKIN",
"Type": "SKIN",
"Version": "6.1",
"VirtualSensor": true,
"TriggerSensor": ["north_therm", "soc_therm", "charging_therm", "disp_therm", "quiet_therm", "usb_pwr_therm", "rfpa_therm", "btmspkr_therm"],
"Formula": "MAXIMUM",
"Combination": ["VIRTUAL-SKIN-MODEL-UPDATED", "VIRTUAL-SKIN-LEGACY"],
"Coefficient": [1.0, "VIRTUAL-SKIN-LEGACY-SHUTDOWN"],
"CoefficientType":["CONSTANT", "SENSOR"],
"HotThreshold": ["NAN", 39.0, 43.0, 45.0, 46.5, 52.0, 65.0],
"HotHysteresis": [0.0, 1.9, 1.9, 1.9, 1.4, 1.9, 1.9],
"SeverityReference": "SkinShutdownModeHighPower",
"Multiplier": 0.001,
"SendCallback": true,
"PollingDelay": 300000,
"PassiveDelay": 7000,
"PredictorInfo": {
"Sensor": "VIRTUAL-SKIN-LSTM-MODEL"
},
"BindedCdevInfo": [
{
"CdevRequest": "gxp-cooling",
"LimitInfo": [0, 0, 0, 0, 0, 6, 6]
}
]
}
]
}

View file

@ -0,0 +1,85 @@
{
"Include": ["thermal_info_config.json"],
"Sensors":[
{
"Name":"SkinShutdownModeHighPower",
"Type":"UNKNOWN",
"VirtualSensor":true,
"Formula":"COUNT_THRESHOLD",
"Combination":["VIRTUAL-SKIN", "PARTIAL_SYSTEM_POWER"],
"CombinationType":["SENSOR", "ODPM"],
"Coefficient":[55000.0, 1000.0],
"HotThreshold":["NAN", "NAN", "NAN", "NAN", "NAN", "NAN", 2.0],
"HotHysteresis":[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.9],
"Multiplier":1
},
{
"Name":"BatteryShutdownModeHighPower",
"Type":"UNKNOWN",
"VirtualSensor":true,
"Formula":"COUNT_THRESHOLD",
"Combination":["battery", "PARTIAL_SYSTEM_POWER"],
"CombinationType":["SENSOR", "ODPM"],
"Coefficient":[60000.0, 1000.0],
"HotThreshold":["NAN", "NAN", "NAN", "NAN", "NAN", "NAN", 2.0],
"HotHysteresis":[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.9],
"Multiplier":1
},
{
"Name":"battery",
"Type":"BATTERY",
"HotThreshold":["NAN", "NAN", "NAN", "NAN", "NAN", 60.0, 65.0],
"HotHysteresis":[0.0, 0.0, 0.0, 0.0, 0.0, 5.0, 1.9],
"SeverityReference": "BatteryShutdownModeHighPower",
"SendCallback": true,
"TripPointIgnorable": true,
"PollingDelay": 60000,
"PassiveDelay": 60000,
"Multiplier":0.001
},
{
"Name":"ShutdownMode",
"Type":"UNKNOWN",
"VirtualSensor":true,
"TriggerSensor": ["north_therm", "soc_therm", "charging_therm", "disp_therm", "quiet_therm", "usb_pwr_therm", "rfpa_therm", "btmspkr_therm"],
"Formula":"WEIGHTED_AVG",
"Combination":["VIRTUAL-SKIN"],
"Coefficient":[1.0],
"HotThreshold":["NAN", "NAN", "NAN", "NAN", "NAN", 55.0, "NAN"],
"HotHysteresis":[0.0, 1.9, 1.9, 1.9, 1.9, 4.9, 1.9],
"SeverityReference": "battery",
"Multiplier":0.001,
"SendCallback": true,
"SendPowerHint": true,
"PollingDelay":300000,
"PassiveDelay":7000
},
{
"Name": "VIRTUAL-SKIN",
"Type": "SKIN",
"Version": "6.1",
"VirtualSensor": true,
"TriggerSensor": ["north_therm", "soc_therm", "charging_therm", "disp_therm", "quiet_therm", "usb_pwr_therm", "rfpa_therm", "btmspkr_therm"],
"Formula": "MAXIMUM",
"Combination": ["VIRTUAL-SKIN-MODEL-UPDATED", "VIRTUAL-SKIN-LEGACY"],
"Coefficient": [1.0, "VIRTUAL-SKIN-LEGACY-SHUTDOWN"],
"CoefficientType":["CONSTANT", "SENSOR"],
"HotThreshold": ["NAN", 39.0, 43.0, 45.0, 46.5, 52.0, 60.0],
"HotHysteresis": [0.0, 1.9, 1.9, 1.9, 1.4, 1.9, 1.9],
"SeverityReference": "SkinShutdownModeHighPower",
"Multiplier": 0.001,
"SendCallback": true,
"PollingDelay": 300000,
"PassiveDelay": 7000,
"PredictorInfo": {
"Sensor": "VIRTUAL-SKIN-LSTM-MODEL"
},
"BindedCdevInfo": [
{
"CdevRequest": "gxp-cooling",
"LimitInfo": [0, 0, 0, 0, 0, 6, 6]
}
]
}
]
}

View file

@ -49,6 +49,11 @@
"Name":"battery", "Name":"battery",
"Type":"BATTERY", "Type":"BATTERY",
"HotThreshold":["NAN", "NAN", "NAN", "NAN", "NAN", "NAN", 60.0], "HotThreshold":["NAN", "NAN", "NAN", "NAN", "NAN", "NAN", 60.0],
"HotHysteresis":[0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.9],
"SendCallback": true,
"TripPointIgnorable": true,
"PollingDelay": 60000,
"PassiveDelay": 60000,
"Multiplier":0.001 "Multiplier":0.001
}, },
{ {