StarFive Fan-Tach controller can support up to 16 fan tach input.
The series has been tested on the EVB1 board.
Change since v4:
PATCH 1:
- Convert the fan node from fan@0 to fan-0.
- Add the phandle of the PWM node.
- Remove the reg property under the fan node.
- Remove the properties "#address-cells" and "#size-cells".
- Convert the keyword "fan tach" to "pwm fan"
PATCH 2:
- Add PWM fan speed control through up to 8 PWM channels supplied by an external
PWM controller, exposed as pwm[1-8].
- Add support for one PWM channel driving up to two fans.
- Add suspend/resume support to disable and restore PWM outputs across system sleep.
- Add pwm_lock to serialize PWM updates with PM operations.
- Convert the keyword "fan tach" to "pwm fan"
v4: https://lore.kernel.org/all/20260830011941.40199-1-changhuang.liang@starfivetech.com/
v3: https://lore.kernel.org/all/20260824030234.9321-1-changhuang.liang@starfivetech.com/
v2: https://lore.kernel.org/all/20260819091601.41077-1-changhuang.liang@starfivetech.com/
v1: https://lore.kernel.org/all/20260428082337.743546-1-changhuang.liang@starfivetech.com/
Changhuang Liang (2):
dt-bindings: hwmon: Add starfive,jhb100-pwm-fan
hwmon: (starfive-pwm-fan) Add PWM fan driver for StarFive JHB100
.../hwmon/starfive,jhb100-pwm-fan.yaml | 87 ++
Documentation/hwmon/index.rst | 1 +
Documentation/hwmon/starfive-pwm-fan.rst | 45 ++
MAINTAINERS | 8 +
drivers/hwmon/Kconfig | 15 +
drivers/hwmon/Makefile | 1 +
drivers/hwmon/starfive-pwm-fan.c | 762 ++++++++++++++++++
7 files changed, 919 insertions(+)
create mode 100644 Documentation/devicetree/bindings/hwmon/starfive,jhb100-pwm-fan.yaml
create mode 100644 Documentation/hwmon/starfive-pwm-fan.rst
create mode 100644 drivers/hwmon/starfive-pwm-fan.c
--
2.25.1