2015-06-15 02:53:22 +00:00
|
|
|
/*
|
|
|
|
* Device tree sources for Exynos5422 thermal zone
|
|
|
|
*
|
|
|
|
* Copyright (c) 2015 Lukasz Majewski <l.majewski@samsung.com>
|
|
|
|
* Anand Moon <linux.amoon@gmail.com>
|
|
|
|
*
|
|
|
|
* This program is free software; you can redistribute it and/or modify
|
|
|
|
* it under the terms of the GNU General Public License version 2 as
|
|
|
|
* published by the Free Software Foundation.
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
|
|
|
|
#include <dt-bindings/thermal/thermal.h>
|
|
|
|
|
|
|
|
/ {
|
|
|
|
thermal-zones {
|
|
|
|
cpu0_thermal: cpu0-thermal {
|
|
|
|
thermal-sensors = <&tmu_cpu0 0>;
|
2016-02-18 05:13:03 +00:00
|
|
|
polling-delay-passive = <250>;
|
2015-06-15 02:53:22 +00:00
|
|
|
polling-delay = <0>;
|
|
|
|
trips {
|
|
|
|
cpu_alert0: cpu-alert-0 {
|
|
|
|
temperature = <50000>; /* millicelsius */
|
|
|
|
hysteresis = <5000>; /* millicelsius */
|
|
|
|
type = "active";
|
|
|
|
};
|
|
|
|
cpu_alert1: cpu-alert-1 {
|
|
|
|
temperature = <60000>; /* millicelsius */
|
|
|
|
hysteresis = <5000>; /* millicelsius */
|
|
|
|
type = "active";
|
|
|
|
};
|
|
|
|
cpu_alert2: cpu-alert-2 {
|
|
|
|
temperature = <70000>; /* millicelsius */
|
|
|
|
hysteresis = <5000>; /* millicelsius */
|
|
|
|
type = "active";
|
|
|
|
};
|
|
|
|
cpu_crit0: cpu-crit-0 {
|
|
|
|
temperature = <120000>; /* millicelsius */
|
|
|
|
hysteresis = <0>; /* millicelsius */
|
|
|
|
type = "critical";
|
|
|
|
};
|
2016-02-18 05:13:03 +00:00
|
|
|
/*
|
|
|
|
* Exyunos542x support only 4 trip-points
|
|
|
|
* so for these polling mode is required.
|
|
|
|
* Start polling at temperature level of last
|
|
|
|
* interrupt-driven trip: cpu_alert2
|
|
|
|
*/
|
|
|
|
cpu_alert3: cpu-alert-3 {
|
|
|
|
temperature = <70000>; /* millicelsius */
|
|
|
|
hysteresis = <10000>; /* millicelsius */
|
|
|
|
type = "passive";
|
|
|
|
};
|
|
|
|
cpu_alert4: cpu-alert-4 {
|
|
|
|
temperature = <85000>; /* millicelsius */
|
|
|
|
hysteresis = <10000>; /* millicelsius */
|
|
|
|
type = "passive";
|
|
|
|
};
|
|
|
|
|
2015-06-15 02:53:22 +00:00
|
|
|
};
|
|
|
|
cooling-maps {
|
|
|
|
map0 {
|
|
|
|
trip = <&cpu_alert0>;
|
|
|
|
cooling-device = <&fan0 0 1>;
|
|
|
|
};
|
|
|
|
map1 {
|
|
|
|
trip = <&cpu_alert1>;
|
|
|
|
cooling-device = <&fan0 1 2>;
|
|
|
|
};
|
|
|
|
map2 {
|
|
|
|
trip = <&cpu_alert2>;
|
|
|
|
cooling-device = <&fan0 2 3>;
|
|
|
|
};
|
2016-02-18 05:13:03 +00:00
|
|
|
/*
|
|
|
|
* When reaching cpu_alert3, reduce CPU
|
|
|
|
* by 2 steps. On Exynos5422/5800 that would
|
|
|
|
* be: 1500 MHz and 1100 MHz.
|
|
|
|
*/
|
|
|
|
map3 {
|
|
|
|
trip = <&cpu_alert3>;
|
|
|
|
cooling-device = <&cpu0 0 2>;
|
|
|
|
};
|
|
|
|
map4 {
|
|
|
|
trip = <&cpu_alert3>;
|
|
|
|
cooling-device = <&cpu4 0 2>;
|
|
|
|
};
|
|
|
|
|
|
|
|
/*
|
|
|
|
* When reaching cpu_alert4, reduce CPU
|
|
|
|
* further, down to 600 MHz (11 steps for big,
|
|
|
|
* 7 steps for LITTLE).
|
|
|
|
*/
|
|
|
|
map5 {
|
|
|
|
trip = <&cpu_alert4>;
|
|
|
|
cooling-device = <&cpu0 3 7>;
|
|
|
|
};
|
|
|
|
map6 {
|
|
|
|
trip = <&cpu_alert4>;
|
|
|
|
cooling-device = <&cpu4 3 11>;
|
|
|
|
};
|
2015-06-15 02:53:22 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|