Skip to content
Maximilian Luz edited this page Jul 3, 2020 · 4 revisions

Welcome to the Surface System Aggregator Module driver wiki!

This Linux kernel module adds support for the embedded controller (Surface/System Aggregator Module) on Microsoft Surface devices and the functionality attached to that controller. This includes: Keyboard and touchpad support for Surface Laptops (1, 2, and 3), battery status, performance modes, discrete GPU power control (Surface Book 2 and 3) and more. For details regarding those features and which devices are supported, please have a look at Features.

We recommend that you run a kernel provided by https://github.com/linux-surface/linux-surface which already contains this module (so if you run it you don't have to install it separately), however, since v5.7, you can also manually install this module, without any additional patches required. Prior to v5.7 you will need to use a kernel with the patches provided in this repository applied. For more details on the installation process, see Testing/Installing.

Clone this wiki locally