blob: 1dc1c281efe7ac3146ffd5837e1e23cc28f25994 [file]
[
{
type: "SystemShutdownHandler",
name: "sys_shutdown",
},
{
type: "CrashReportHandler",
name: "crash_handler",
},
{
type: "TemperatureHandler",
name: "temperature_soc_pll",
config: {
sensor_name: "CPU thermal",
cache_duration_ms: 50,
},
},
{
type: "PlatformMetrics",
name: "platform_metrics",
config: {
cpu_temperature_poll_interval_s: 1,
throttle_debounce_timeout_s: 60,
},
dependencies: {
cpu_temperature_handler_node: "temperature_soc_pll",
crash_report_handler_node: "crash_handler",
},
},
{
type: "ThermalStateHandler",
name: "thermal_state_handler",
config: {
enable_cpu_thermal_state_connector: true,
enable_client_state_connector: true,
},
// platform_metrics are disabled for this node.
},
{
type: "ThermalStateHandler",
name: "thermal_state_handle_for_metrics",
config: {
enable_cpu_thermal_state_connector: false,
enable_client_state_connector: false,
},
dependencies: {
platform_metrics_node: "platform_metrics",
},
},
{
// Calculates thermal load used to trigger audio limiting trip points. The reboot threshold
// is much less than that of thermal_policy and is not expected to be reached.
type: "ThermalLoadDriver",
name: "thermal_load_driver",
config: {
temperature_input_configs: [
{
temperature_handler_node_name: "temperature_soc_pll",
onset_temperature_c: 70.0,
reboot_temperature_c: 120.0,
poll_interval_s: 1,
polls_per_history_entry: 30, // Every 30s
num_history_entries: 360, // Three hours of history
filter_time_constant_s: 5,
},
],
},
dependencies: {
system_shutdown_node: "sys_shutdown",
thermal_load_notify_nodes: [
"thermal_state_handler",
],
temperature_handler_node_names: [
"temperature_soc_pll",
],
platform_metrics_node: "platform_metrics",
},
},
{
type: "ThermalPolicy",
name: "thermal_policy",
dependencies: {
temperature_handler_node: "temperature_soc_pll",
system_power_handler_node: "sys_shutdown",
thermal_load_notify_nodes: [
"thermal_state_handle_for_metrics",
],
cpu_thermal_load_notify_node: "thermal_state_handler",
platform_metrics_node: "platform_metrics",
},
config: {
controller_params: {
sample_interval: 1.0,
filter_time_constant: 5.0,
target_temperature: 94.0,
e_integral_min: -39.37,
e_integral_max: 0.0,
},
thermal_shutdown_temperature: 100.0,
},
},
]