mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
synced 2025-09-01 15:14:52 +00:00

Enable throttling down the CPU frequency when an alert temperature threshold is reached before the critical temperature for shutdown. Signed-off-by: João Paulo Gonçalves <joao.goncalves@toradex.com> Link: https://lore.kernel.org/r/20250623-b4-verdin-am62p-cooling-device-v1-1-cc185ba5843d@toradex.com Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
102 lines
2.3 KiB
Plaintext
102 lines
2.3 KiB
Plaintext
// SPDX-License-Identifier: GPL-2.0-only OR MIT
|
|
/*
|
|
* Copyright (C) 2023-2024 Texas Instruments Incorporated - https://www.ti.com/
|
|
*/
|
|
|
|
#include <dt-bindings/thermal/thermal.h>
|
|
|
|
thermal_zones: thermal-zones {
|
|
main0_thermal: main0-thermal {
|
|
polling-delay-passive = <250>; /* milliSeconds */
|
|
polling-delay = <500>; /* milliSeconds */
|
|
thermal-sensors = <&wkup_vtm0 0>;
|
|
|
|
trips {
|
|
main0_alert: main0-alert {
|
|
temperature = <115000>;
|
|
hysteresis = <2000>;
|
|
type = "passive";
|
|
};
|
|
|
|
main0_crit: main0-crit {
|
|
temperature = <125000>; /* milliCelsius */
|
|
hysteresis = <2000>; /* milliCelsius */
|
|
type = "critical";
|
|
};
|
|
};
|
|
|
|
cooling-maps {
|
|
map0 {
|
|
trip = <&main0_alert>;
|
|
cooling-device =
|
|
<&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
|
<&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
|
<&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
|
<&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
|
|
};
|
|
};
|
|
};
|
|
|
|
main1_thermal: main1-thermal {
|
|
polling-delay-passive = <250>; /* milliSeconds */
|
|
polling-delay = <500>; /* milliSeconds */
|
|
thermal-sensors = <&wkup_vtm0 1>;
|
|
|
|
trips {
|
|
main1_alert: main1-alert {
|
|
temperature = <115000>;
|
|
hysteresis = <2000>;
|
|
type = "passive";
|
|
};
|
|
|
|
main1_crit: main1-crit {
|
|
temperature = <125000>; /* milliCelsius */
|
|
hysteresis = <2000>; /* milliCelsius */
|
|
type = "critical";
|
|
};
|
|
};
|
|
|
|
cooling-maps {
|
|
map0 {
|
|
trip = <&main1_alert>;
|
|
cooling-device =
|
|
<&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
|
<&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
|
<&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
|
<&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
|
|
};
|
|
};
|
|
};
|
|
|
|
main2_thermal: main2-thermal {
|
|
polling-delay-passive = <250>; /* milliSeconds */
|
|
polling-delay = <500>; /* milliSeconds */
|
|
thermal-sensors = <&wkup_vtm0 2>;
|
|
|
|
trips {
|
|
main2_alert: main2-alert {
|
|
temperature = <115000>;
|
|
hysteresis = <2000>;
|
|
type = "passive";
|
|
};
|
|
|
|
main2_crit: main2-crit {
|
|
temperature = <125000>; /* milliCelsius */
|
|
hysteresis = <2000>; /* milliCelsius */
|
|
type = "critical";
|
|
};
|
|
};
|
|
|
|
cooling-maps {
|
|
map0 {
|
|
trip = <&main2_alert>;
|
|
cooling-device =
|
|
<&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
|
<&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
|
<&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
|
<&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
|
|
};
|
|
};
|
|
};
|
|
};
|