[PATCH v2 0/2] hwmon: add Axiado AX3000 and AX3005 PWM fan support
Petar Stepanovic
pstepanovic at axiado.com
Thu Sep 3 01:38:38 PDT 2026
This series adds support for the fan controller found on the Axiado
AX3000 and AX3005 SoCs.
The controller provides a hardware tachometer block for measuring the
rotational speed of one fan. Fan speed is controlled through a PWM
signal supplied by an external PWM controller.
The tachometer counts fan pulses in hardware and reports the accumulated
count through an MMIO register when the measurement interval expires.
The generic pwm-fan driver counts tachometer interrupts in software and
therefore cannot directly operate this hardware counter block.
The driver registers with the hwmon subsystem and provides the
following standard sysfs attributes:
- fan1_input for the measured fan speed in RPM
- pwm1 for fan-speed control in the range 0 to 255
The number of tachometer pulses generated per fan revolution can be
configured using the pulses-per-revolution devicetree property. If the
property is not specified, the driver uses two pulses per revolution.
The series includes:
- Devicetree binding documentation
- Axiado PWM fan hwmon driver
- hwmon driver documentation
- MAINTAINERS entry
The driver was tested on AX3000 and AX3005 platforms.
Signed-off-by: Petar Stepanovic <pstepanovic at axiado.com>
---
Changes in v2:
- Represent the physical fan as a child node of the tachometer
controller and reference fan-common.yaml.
- Move pwms and pulses-per-revolution to the fan child node.
- Update the driver to obtain the PWM and pulses-per-revolution
property from the fan child node.
- Rename PWM_MAX to AX_TACH_PWM_VAL_MAX.
- Remove unnecessary locking when reading the cached PWM value.
- Remove the trailing comma from the OF match-table terminator.
- Fix minor formatting issues.
- Link to v1: https://lore.kernel.org/r/20260806-axiado-ax3000-pwm-fan-v1-0-f6db4cf2166b@axiado.com
To: Petar Stepanovic <pstepanovic at axiado.com>
To: Akhila Kavi <akavi at axiado.com>
To: Prasad Bolisetty <pbolisetty at axiado.com>
To: Guenter Roeck <linux at roeck-us.net>
To: Rob Herring <robh at kernel.org>
To: Krzysztof Kozlowski <krzk+dt at kernel.org>
To: Conor Dooley <conor+dt at kernel.org>
To: Tzu-Hao Wei <twei at axiado.com>
To: Karthikeyan Mitran <kmitran at axiado.com>
To: Jonathan Corbet <corbet at lwn.net>
To: Shuah Khan <skhan at linuxfoundation.org>
To: Uwe Kleine-König <ukleinek at kernel.org>
Cc: linux-hwmon at vger.kernel.org
Cc: devicetree at vger.kernel.org
Cc: linux-arm-kernel at lists.infradead.org
Cc: linux-kernel at vger.kernel.org
Cc: linux-doc at vger.kernel.org
Cc: linux-pwm at vger.kernel.org
---
Petar Stepanovic (2):
dt-bindings: hwmon: add Axiado AX3000 and AX3005 PWM fan controller
hwmon: add Axiado AX3000 and AX3005 PWM fan controller driver
.../bindings/hwmon/axiado,ax3000-pwm-fan.yaml | 72 ++++
Documentation/hwmon/axiado-pwm-fan.rst | 38 ++
Documentation/hwmon/index.rst | 1 +
MAINTAINERS | 10 +
drivers/hwmon/Kconfig | 12 +
drivers/hwmon/Makefile | 1 +
drivers/hwmon/axiado-pwm-fan.c | 412 +++++++++++++++++++++
7 files changed, 546 insertions(+)
---
base-commit: 28807a684f870463e059fbc8cb22f5b780b94fe4
change-id: 20260520-axiado-ax3000-pwm-fan-36a89de6db61
Best regards,
--
Petar Stepanovic <pstepanovic at axiado.com>
More information about the linux-arm-kernel
mailing list