Explanation of several properties, which allow PWM fan working as a cooling
device, have been embraced in this commit.

Signed-off-by: Lukasz Majewski <l.majew...@samsung.com>
Acked-by: Eduardo Valentin <edubez...@gmail.com>
---
Changes for v2:
- Rename cooling-pwm-values to cooling-levels
- Remove default-pulse-width property and stick to default hwmon policy
Changes for v3:
- Changing commit title from "hwmon: dts: Doc:" to "Documentation: dts"
- Remove unnecessary properties
- Set maximal cooling level to 230 instead of 255
Changes for v4:
- None
Changes for v5:
- Move thermal-zones description to example section
- Extending example section
Changes for v6:
- cooling-{min|max}-state properties added to pwm-fan binding
- Mandatory properties for thermal-zones added
- Indentation fixed
---
 .../devicetree/bindings/hwmon/pwm-fan.txt          | 29 ++++++++++++++++++++--
 1 file changed, 27 insertions(+), 2 deletions(-)

diff --git a/Documentation/devicetree/bindings/hwmon/pwm-fan.txt 
b/Documentation/devicetree/bindings/hwmon/pwm-fan.txt
index 610757c..c6d5332 100644
--- a/Documentation/devicetree/bindings/hwmon/pwm-fan.txt
+++ b/Documentation/devicetree/bindings/hwmon/pwm-fan.txt
@@ -3,10 +3,35 @@ Bindings for a fan connected to the PWM lines
 Required properties:
 - compatible   : "pwm-fan"
 - pwms         : the PWM that is used to control the PWM fan
+- cooling-levels      : PWM duty cycle values in a range from 0 to 255
+                       which correspond to thermal cooling states
 
 Example:
-       pwm-fan {
+       fan0: pwm-fan {
                compatible = "pwm-fan";
-               status = "okay";
+               cooling-min-state = <0>;
+               cooling-max-state = <3>;
+               #cooling-cells = <2>;
                pwms = <&pwm 0 10000 0>;
+               cooling-levels = <0 102 170 230>;
        };
+
+       thermal-zones {
+               cpu_thermal: cpu-thermal {
+                            thermal-sensors = <&tmu 0>;
+                            polling-delay-passive = <0>;
+                            polling-delay = <0>;
+                            trips {
+                                       cpu_alert1: cpu-alert1 {
+                                                   temperature = <100000>; /* 
millicelsius */
+                                                   hysteresis = <2000>; /* 
millicelsius */
+                                                   type = "passive";
+                                       };
+                            };
+                            cooling-maps {
+                                       map0 {
+                                                   trip = <&cpu_alert1>;
+                                                   cooling-device = <&fan0 0 
1>;
+                                       };
+                            };
+               };
-- 
2.0.0.rc2

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to