The x86 Platform Drivers For Linux 5.12 Have Several Prominent Additions
The "platform-drivers-x86" area of the kernel that is primarily made up of driver support around Intel/AMD laptops and other platform drivers is seeing a number of noteworthy additions for the newly-opened Linux 5.12 merge window.
The highlights of these x86 platform driver changes for Linux 5.12 include:
- The community-made, reverse-engineered support for the Microsoft Surface System Aggregator Module (SAM) is now in place. This is part of the effort for improving Microsoft Surface device support on Linux. The "system aggregator module" is basically the embedded controller found on later versions of Surface hardware. SAM is responsible for battery status handling, thermal reporting, touchpad input, HID keyboard behavior, and more. SAM was originally introduced with the Surface Pro 4 and Surface Book 1 while continues to be used by their latest devices. Thus with Linux 5.12 is much better Microsoft Surface support.
- Lenovo Laptop Platform Profile support is on the way thanks to Lenovo for their newer ThinkPad and IdeaPad laptops. This allows controlling the laptop's behavior around power versus thermal/battery life considerations. Via sysfs the platform profile can be manipulated for either low-power, cool operation, quiet operation, balanced thermal/power, or wanting the best performance. Based on the value, the firmware will adjust its behavior. This ties in as well with Intel DPTF, the Dynamic Platform Thermal Framework.
- Various Lenovo IdeaPad driver improvements.
- The ThinkPad ACPI driver can now also handle keyboard language setting controls.
- Intel Sapphire Rapids intel-uncore-freq support.
- Intel-Speed-Select now supports configuring the turbo rate limit from within the tool.
- Dropping of Intel MID / smartphone support going back to the Moorestown era. The platform-drivers-x86 code has been removed while other pull requests for the other subsystems will drop their Intel MID code in Linux 5.12 too.
The full list of patches via the pull request.