This series adds support for the tablet-mode switch on the Surface Pro 9. On that device, the posture subsystem (POS) can be used to query the state of the Type-Cover (detached, laptop-mode, flipped-back, ...) and receive notifications when it changes. We can use this to implement a tablet mode switch, extending the driver already in use on the Surface Laptop Studio. More specifically, the posture subsystem allows for different posture sources, identified by a numerical ID, each of which can have different states. At the moment, however, the tablet-mode switch driver using the POS subsystem only supports the Surface Laptop Studio, and support for that is hard-coded. To support the Surface Pro 9, we therefore need to adapt the driver to properly disambiguate between different posture sources (patch 1) and then implement the respective functions for the source ID representing the Type-Cover (patch 2). Finally, we also need to add the respective device to the Surface Pro 9 entry in the aggregator registry, to allow the driver to load (patch 3). Maximilian Luz (3): platform/surface: aggregator_tabletsw: Properly handle different posture source IDs platform/surface: aggregator_tabletsw: Add support for Type-Cover posture source platform/surface: aggregator_registry: Add support for tablet-mode switch on Surface Pro 9 .../surface/surface_aggregator_registry.c | 2 +- .../surface/surface_aggregator_tabletsw.c | 180 ++++++++++++++---- 2 files changed, 142 insertions(+), 40 deletions(-) -- 2.39.2