Re: [PATCH 0/3] platform/surface: Add DTX detachment system driver

From: Hans de Goede
Date: Wed Mar 17 2021 - 13:47:40 EST


Hi,

On 3/8/21 7:48 PM, Maximilian Luz wrote:
> The Microsoft Surface Book series devices consist of a so-called
> clipboard part (containing the CPU, touchscreen, and primary battery)
> and a base part (containing keyboard, secondary battery, and optional
> discrete GPU). These parts can be separated, i.e. the clipboard can be
> detached and used as tablet.
>
> This detachment process is managed by a subsystem of the Surface System
> Aggregator Module (SSAM). As that process is a bit more complex, i.e.
> can involve user interaction, it seems the best way to implement this is
> to provide a somewhat cleaned-up version of this interface to userspace.
>
> This series adds a driver (and documentation) for the detachment system
> which provides such an interface. See the commit message of the first
> patch for more details and a link to a user-space daemon using this
> interface. Support for the Surface Book 3 is added in patch 2,
> user-space API documentation in patch 3.

Thank you for your patch-series, I've applied the series to my
review-hans branch:
https://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git/log/?h=review-hans

Note it will show up in my review-hans branch once I've pushed my
local branch there, which might take a while.

Once I've run some tests on this branch the patches there will be
added to the platform-drivers-x86/for-next branch and eventually
will be included in the pdx86 pull-request to Linus for the next
merge-window.

Regards,

Hans


>
> Regards,
> Max
>
> Maximilian Luz (3):
> platform/surface: Add DTX driver
> platform/surface: dtx: Add support for native SSAM devices
> docs: driver-api: Add Surface DTX driver documentation
>
> .../surface_aggregator/clients/dtx.rst | 718 +++++++++
> .../surface_aggregator/clients/index.rst | 1 +
> .../userspace-api/ioctl/ioctl-number.rst | 2 +
> MAINTAINERS | 8 +
> drivers/platform/surface/Kconfig | 20 +
> drivers/platform/surface/Makefile | 1 +
> drivers/platform/surface/surface_dtx.c | 1289 +++++++++++++++++
> include/uapi/linux/surface_aggregator/dtx.h | 146 ++
> 8 files changed, 2185 insertions(+)
> create mode 100644 Documentation/driver-api/surface_aggregator/clients/dtx.rst
> create mode 100644 drivers/platform/surface/surface_dtx.c
> create mode 100644 include/uapi/linux/surface_aggregator/dtx.h
>