These changes were made to support a custom board where one PWM output is routed to two fans, each of which has a tachometer signal routed to a GPIO input on the SoC. While debugging on this board it was found that the RPM readings were being overestimated due to a bug in the calculation code so I've included a fix for that. As the custom board doesn't currently support the latest mainline kernel I've tested these changes on a SanCloud BeagleBone Enhanced using an oscilloscope to check the PWM output and a signal generator to simulate the fan tachometer signals. I've tested variants of the device tree with 0, 1 and 2 fan tachometer inputs configured to ensure the logic in the probe function is correct. The device tree bindings changes have been submitted in a separate patch. These changes can also be pulled from: https://gitlab.com/pbarker.dev/staging/linux.git tag: for-hwmon/pwm-fan_2020-09-20 Paul Barker (2): hwmon: pwm-fan: Support multiple tachometer inputs hwmon: pwm-fan: Fix RPM calculation drivers/hwmon/pwm-fan.c | 164 ++++++++++++++++++++++++---------------- 1 file changed, 100 insertions(+), 64 deletions(-) base-commit: 2835d860d3fcc3e4829e96987544e811d35dee48 -- 2.28.0