Linux 5.19 Heavy On Intel Power Management & Thermal Improvements
The power management, ACPI, and thermal control updates are ready for Linux 5.19. This cycle there is a lot of PM/thermal work as usual on the Arm side while Intel also continues with a lot of changes from new hardware support to improving overheat handling of laptops for S0ix handling.
It's busy as always working to improve Linux power management and thermal handling for hardware from smartphones up through high performance servers. Among the power management changes for Linux 5.19 include:
- The Intel Run-Time Average Power Limiting (RAPL) power-capping driver adds support for Raptor Lake and Alder Lake N processors.
- Alder Lake support in the Intel Idle driver.
- The Intel P-State driver now properly handles frequency invariance handling when turbo mode is disabled using the /sys/devices/system/cpu/intel_pstate/no_turbo sysfs interface. When the user opts to disable the turbo mode using that run-time interface, the frequency invariance handling would be thrown off.
- Sapphire Rapids Out-of-Band (OOB) mode support for the Intel P-State driver.
- A Linaro-led fix to avoid unnecessary frequency updates when the frequency reported by the hardware is slightly different than what is shown by the frequency table -- e.g. 499 vs. 500MHz. The patch in current form allows up to a 1MHz deviation without leading to frequency updates.
- The ACPI table override is now preserved during the hibernation process.
- CPU-based scaling support has been added to the passive devfreq governor.
- The Energy Model code has been extended to allow for artificial models where the power values may not be on a uniform scale with other devices providing power information. This is an Arm-led change for the artificial Energy Model.
More details on the power management changes via this pull request.
Meanwhile the ACPI updates include additions such as support for the Microsoft Windows 11 _OSI string, adding the ARM Performance Monitoring Unit Table in the ACPICA code, improved handling of PCI devices that are in D3cold state during system initialization, support for high frequency impedance notification to the DPTF driver, and other additions. The ACPI change around D3cold devices at system initialization will ensure now that the PCI devices are initially powered up along with their children to ensure proper device enumeration.
Along similar topics, the thermal control updates have been merged. This pull includes the new thermal library and temperature capture tool in the kernel source tree. This pull also improves the overheat condition handling during suspend-to-idle within the Intel PCH thermal driver and a variety of other fixes and improvements.
The improved Intel PCH overheat handling during suspend-to-idle is the change covered in detail earlier this month within Intel Has A Solution For Hot Linux Laptops Draining The Battery While Trying To Sleep.