Fifth version of a hwmon driver to monitor the fan's rpm on Microsoft Surface devices, originally submitted in [1], [2], [3], v4 at [4]. Only change since v4 is rebasing on mainline kernel tree's master. Changes in v5: - Rebased on mainline kernel tree's master branch. Changes in v4: - Return 0 from surface_fan_hwmon_read instead of ret. - Use PTR_ERR_OR_ZERO in probe instead of if statement. Changes in v3: - Removed type and attr checks in read and is_visible. - Removed assigning sdev to ssam_device drvdata. - Propagate return from __ssam_fan_rpm_get. - Renamed hwmon chip name from 'fan' to 'surface_fan'. - Removed unnecessary platform_device header. Changes in v2: - Removed all unsupported sysfs attributes from the hwmon driver, leaving the fan input as the only supported attribute. [1] https://lore.kernel.org/linux-hwmon/20231220234415.5219-1-ivor@xxxxxxxxxxxx/T/ [2] https://lore.kernel.org/linux-hwmon/20231228003444.5580-1-ivor@xxxxxxxxxxxx/T/ [3] https://lore.kernel.org/linux-hwmon/20240113183306.9566-1-ivor@xxxxxxxxxxxx/T/ [4] https://lore.kernel.org/linux-hwmon/20240130230654.4218-1-ivor@xxxxxxxxxxxx/T/ Ivor Wanders (2): hwmon: add fan speed monitoring driver for Surface devices platform/surface: aggregator_registry: add entry for fan speed Documentation/hwmon/index.rst | 1 + Documentation/hwmon/surface_fan.rst | 25 +++++ MAINTAINERS | 8 ++ drivers/hwmon/Kconfig | 13 +++ drivers/hwmon/Makefile | 1 + drivers/hwmon/surface_fan.c | 91 +++++++++++++++++++ .../surface/surface_aggregator_registry.c | 7 ++ 7 files changed, 146 insertions(+) create mode 100644 Documentation/hwmon/surface_fan.rst create mode 100644 drivers/hwmon/surface_fan.c -- 2.17.1