linux/Documentation/hwmon/pwm-fan.rst

Kernel driver pwm-fan
=====================

This driver enables the use of a PWM module to drive a fan. It uses the
generic PWM interface thus it is hardware independent. It can be used on
many SoCs, as long as the SoC supplies a PWM line driver that exposes
the generic PWM API.

Author: Kamil Debski <[email protected]>

Description
-----------

The driver implements a simple interface for driving a fan connected to
a PWM output. It uses the generic PWM interface, thus it can be used with
a range of SoCs. The driver exposes the fan to the user space through
the hwmon's sysfs interface.

The fan rotation speed returned via the optional 'fan1_input' is extrapolated
from the sampled interrupts from the tachometer signal within 1 second.

The driver provides the following sensor accesses in sysfs:

=============== ======= =======================================================
fan1_input	ro	fan tachometer speed in RPM
pwm1_enable	rw	keep enable mode, defines behaviour when pwm1=0
			0 -> disable pwm and regulator
			1 -> enable pwm; if pwm==0, disable pwm, keep regulator enabled
			2 -> enable pwm; if pwm==0, keep pwm and regulator enabled
			3 -> enable pwm; if pwm==0, disable pwm and regulator
pwm1		rw	relative speed (0-255), 255=max. speed.
=============== ======= =======================================================