mirror of https://gitee.com/openkylin/linux.git
58 lines
1.7 KiB
Plaintext
58 lines
1.7 KiB
Plaintext
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>;
|
|
};
|