| 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 |
| |
| Optional properties: |
| - fan-supply : phandle to the regulator that provides power to the fan |
| - interrupts : This contains a single interrupt specifier which |
| describes the tachometer output of the fan as an |
| interrupt source. The output signal must generate a |
| defined number of interrupts per fan revolution, which |
| require that it must be self resetting edge interrupts. |
| See interrupt-controller/interrupts.txt for the format. |
| - pulses-per-revolution : define the tachometer pulses per fan revolution as |
| an integer (default is 2 interrupts per revolution). |
| The value must be greater than zero. |
| |
| Example: |
| fan0: pwm-fan { |
| compatible = "pwm-fan"; |
| #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>; |
| }; |
| }; |
| }; |
| |
| Example 2: |
| fan0: pwm-fan { |
| compatible = "pwm-fan"; |
| pwms = <&pwm 0 40000 0>; |
| fan-supply = <®_fan>; |
| interrupt-parent = <&gpio5>; |
| interrupts = <1 IRQ_TYPE_EDGE_FALLING>; |
| pulses-per-revolution = <2>; |
| }; |