A few weeks back I reported on Linux kernel patches surfacing for implementing Microsoft’s AC{I Fan Extensions. This should help some HP devices and hardware from other OEMs for obtaining fan information reporting under Linux. The good news now is that the patches should be part of the upcoming Linux 6.19 kernel cycle.
The patches that came out last month were for implementing Microsoft’s _DSM interface for the ACPI fan device within the Linux kernel’s ACPI driver. Microsoft uses this interface for setting fan speed trip points. But some vendors like HP abuse the interface and with the current handling means stale/inaccurate fan information reporting right now under Linux. Open-source developer Armin Wolf explained on the patch series:
“Microsoft has designed a _DSM interface for the ACPI fan device that allows the OS to set fan speed trip points. The ACPI firmware will notify the ACPI fan device when said trip points are triggered.
Unfortunately some device manufacturers (like HP) blindly assume that the OS will use this _DSM interface and thus only update the fan speed value returned by the _FST control method when sending a notification to the ACPI fan device. This results in stale fan speed values being reported by the ACPI fan driver.
The first patch performs a simple cleanup in order to reduce the usage of the acpi_device struct. The second patch fixes an issue with some 64-bit ACPI implementations where an invalid value was reported instead of the standard ACPI placeholder value (0xFFFFFFFF). The third patch fixes an unrelated issue inside the hwmon support code while the next two patches add support for the ACPI fan notifications as specified in ACPI 11.2.3. The last patch finally adds support for the Microsoft _DSM interface.”
That work has been queued into the power management subsystem’s linux-next branch. With the code in the PM’s “linux-next” branch it should be submitted as part of the Linux 6.19 merge window when it opens in early December.
This in turn closes existing bug reports such as this year old bug report over missing fan information on an HP EliteBook 860 G10 laptop.
