| [ |
| { |
| type: "DriverManagerHandler", |
| name: "driver_manager_handler", |
| config: {} |
| }, |
| { |
| type: "ShutdownWatcher", |
| name: "shutdown_watcher" |
| }, |
| { |
| type: "SystemShutdownHandler", |
| name: "sys_shutdown", |
| config: { |
| shutdown_timeout_s: 3600 |
| }, |
| dependencies: { |
| driver_manager_handler_node: "driver_manager_handler", |
| shutdown_watcher_node: "shutdown_watcher" |
| } |
| }, |
| { |
| type: "CrashReportHandler", |
| name: "crash_handler" |
| }, |
| { |
| type: "CpuStatsHandler", |
| name: "cpu_stats" |
| }, |
| { |
| type: "DeviceControlHandler", |
| name: "cpu_dev", |
| config: { |
| driver_path: "/dev/class/cpu-ctrl/000" |
| } |
| }, |
| { |
| type: "CpuControlHandler", |
| name: "cpu_control", |
| config: { |
| driver_path: "/dev/class/cpu-ctrl/000", |
| capacitance: 1.2E-10, |
| logical_cpu_numbers: [ |
| 0, |
| 1, |
| 2, |
| 3 |
| ], |
| min_cpu_clock_speed: 1000000000.0 |
| }, |
| dependencies: { |
| cpu_stats_handler_node: "cpu_stats", |
| cpu_dev_handler_node: "cpu_dev" |
| } |
| }, |
| { |
| type: "TemperatureHandler", |
| name: "temperature_soc_pll", |
| config: { |
| driver_path: "/dev/sys/platform/05:03:a/thermal", |
| cache_duration_ms: 50 |
| } |
| }, |
| { |
| type: "TemperatureHandler", |
| name: "temperature_therm_dsp", |
| config: { |
| driver_path: "/dev/sys/platform/03:03:27/thermistor-device/therm-dsp", |
| cache_duration_ms: 50 |
| } |
| }, |
| { |
| type: "TemperatureHandler", |
| name: "temperature_therm_wifi", |
| config: { |
| driver_path: "/dev/sys/platform/03:03:27/thermistor-device/therm-wifi", |
| 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", |
| dependencies: { |
| platform_metrics_node: "platform_metrics" |
| } |
| }, |
| { |
| type: "ThermalPolicy", |
| name: "thermal_policy", |
| dependencies: { |
| temperature_handler_node: "temperature_soc_pll", |
| cpu_control_nodes: [ |
| "cpu_control" |
| ], |
| system_power_handler_node: "sys_shutdown", |
| thermal_load_notify_nodes: [ |
| "thermal_state_handler" |
| ], |
| platform_metrics_node: "platform_metrics" |
| }, |
| config: { |
| controller_params: { |
| sample_interval: 1.0, |
| filter_time_constant: 5.0, |
| target_temperature: 80.0, |
| e_integral_min: -12.0, |
| e_integral_max: 0.0, |
| sustainable_power: 0.952, |
| proportional_gain: 0.0, |
| integral_gain: 0.08 |
| }, |
| thermal_shutdown_temperature: 95.0 |
| } |
| }, |
| { |
| type: "ThermalShutdown", |
| name: "thermal_shutdown_therm_dsp", |
| dependencies: { |
| system_shutdown_node: "sys_shutdown", |
| temperature_handler_node: "temperature_therm_dsp", |
| platform_metrics_node: "platform_metrics" |
| }, |
| config: { |
| thermal_shutdown_temperature_c: 73.0, |
| poll_interval_s: 1, |
| filter_time_constant_s: 1 |
| } |
| }, |
| { |
| type: "ThermalShutdown", |
| name: "thermal_shutdown_therm_wifi", |
| dependencies: { |
| system_shutdown_node: "sys_shutdown", |
| temperature_handler_node: "temperature_therm_wifi", |
| platform_metrics_node: "platform_metrics" |
| }, |
| config: { |
| thermal_shutdown_temperature_c: 73.0, |
| poll_interval_s: 1, |
| filter_time_constant_s: 1 |
| } |
| } |
| ] |