mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Maximilian Luz <luzmaximilian@gmail.com>
To: Hans de Goede <hdegoede@redhat.com>
Cc: Mark Gross <markgross@kernel.org>,
	platform-driver-x86@vger.kernel.org,
	linux-kernel@vger.kernel.org,
	Maximilian Luz <luzmaximilian@gmail.com>
Subject: [PATCH 0/3] platform/surface: Add support for tablet-mode switch on Surface Pro 9
Date: Sat,  4 Mar 2023 20:46:08 +0100	[thread overview]
Message-ID: <20230304194611.87770-1-luzmaximilian@gmail.com> (raw)

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


             reply	other threads:[~2023-03-04 19:46 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-03-04 19:46 Maximilian Luz [this message]
2023-03-04 19:46 ` [PATCH 1/3] platform/surface: aggregator_tabletsw: Properly handle different posture source IDs Maximilian Luz
2023-03-04 19:46 ` [PATCH 2/3] platform/surface: aggregator_tabletsw: Add support for Type-Cover posture source Maximilian Luz
2023-03-04 19:46 ` [PATCH 3/3] platform/surface: aggregator_registry: Add support for tablet-mode switch on Surface Pro 9 Maximilian Luz
2023-03-16 13:47 ` [PATCH 0/3] platform/surface: " Hans de Goede

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230304194611.87770-1-luzmaximilian@gmail.com \
    --to=luzmaximilian@gmail.com \
    --cc=hdegoede@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=markgross@kernel.org \
    --cc=platform-driver-x86@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®