Hi, On 6/24/22 20:36, Maximilian Luz wrote: > This series adds a driver providing a tablet mode switch on the Surface > Pro 8, Surface Pro X, and Surface Laptop Studio. > > These devices provide posture information via subsystems of the Surface > Aggregator Module (SAM; embedded controller). While the specific > subsystems used for the Pro and Laptop models differ, large parts of the > respective subsystem drivers would be equal. Therefore, we essentially > provide a generic framework for tablet-mode switches via the Surface > Aggregator module and use that to implement specific support for the KIP > and POS subsystems used on the aforementioned devices. > > In addition, this series first introduces some helper macros for > synchronous stack-allocated SAM requests used in the subsequent patches, > extending the already existing ones. > > Further, this series adds the respective firmware nodes to the Surface > Aggregator Registry. 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 > > Maximilian Luz (4): > platform/surface: aggregator: Add helper macros for requests with > argument and return value > platform/surface: Add KIP/POS tablet-mode switch driver > platform/surface: aggregator_registry: Add support for tablet mode > switch on Surface Pro 8 > platform/surface: aggregator_registry: Add support for tablet mode > switch on Surface Laptop Studio > > .../sysfs-bus-surface_aggregator-tabletsw | 57 ++ > MAINTAINERS | 6 + > drivers/platform/surface/Kconfig | 23 + > drivers/platform/surface/Makefile | 1 + > .../surface/surface_aggregator_registry.c | 15 +- > .../surface/surface_aggregator_tabletsw.c | 533 ++++++++++++++++++ > include/linux/surface_aggregator/controller.h | 125 ++++ > include/linux/surface_aggregator/device.h | 36 ++ > 8 files changed, 795 insertions(+), 1 deletion(-) > create mode 100644 Documentation/ABI/testing/sysfs-bus-surface_aggregator-tabletsw > create mode 100644 drivers/platform/surface/surface_aggregator_tabletsw.c >