[PATCH 0/3] platform/surface: Add support for tablet-mode switch on Surface Pro 9

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]


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(-)


[Index of Archives]     [Linux Kernel Development]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux