Re: [PATCH v4 0/6] platform/x86: Add Lenovo Gaming Series WMI Drivers

From: Derek John Clark
Date: Mon Mar 17 2025 - 02:40:29 EST


On Sun, Mar 16, 2025 at 11:33 PM Derek J. Clark
<derekjohn.clark@xxxxxxxxx> wrote:
>
> Adds support for the Lenovo "Gaming Series" of laptop hardware that use
> WMI interfaces that control various power settings. There are multiple WMI
> interfaces that work in concert to provide getting and setting values as
> well as validation of input. Currently only the "Gamezone", "Other
> Mode", and "LENOVO_CAPABILITY_DATA_01" interfaces are implemented, but
> I attempted to structure the driver so that adding the "Custom Mode",
> "Lighting", and other data block interfaces would be trivial in a later
> patches.
>
> This driver is distinct from, but should be considered a replacement for
> this patch:
> https://lore.kernel.org/all/20241118100503.14228-1-jonmail@xxxxxxx/
>
> This driver attempts to standardize the exposed sysfs by mirroring the
> asus-armoury driver currently under review. As such, a lot of
> inspiration has been drawn from that driver.
> https://lore.kernel.org/platform-driver-x86/20250316230724.100165-1-luke@xxxxxxxxxx/
>
> The drivers have been tested by me on the Lenovo Legion Go and Legion Go
> S.
>
> Suggested-by: Mario Limonciello <superm1@xxxxxxxxxx>
> Signed-off-by: Derek J. Clark <derekjohn.clark@xxxxxxxxx>
> ---
> v4:
> - Added lenovo-wmi-events driver
> - Added headers for every driver
> - Fixes requested from v3 review
> v3:
> https://lore.kernel.org/platform-driver-x86/20250225220037.16073-1-derekjohn.clark@xxxxxxxxx/
> v2:
> https://lore.kernel.org/platform-driver-x86/20250102004854.14874-1-derekjohn.clark@xxxxxxxxx/
> v1:
> https://lore.kernel.org/platform-driver-x86/20241217230645.15027-1-derekjohn.clark@xxxxxxxxx/
> Derek J. Clark (6):
> platform/x86: Add lenovo-wmi-* driver Documentation
> platform/x86: Add lenovo-wmi-helpers
> platform/x86: Add Lenovo WMI Events Driver
> platform/x86: Add Lenovo Capability Data 01 WMI Driver
> platform/x86: Add Lenovo Other Mode WMI Driver
> platform/x86: Add Lenovo Gamezone WMI Driver
>
> .../wmi/devices/lenovo-wmi-gamezone.rst | 203 ++++++
> .../wmi/devices/lenovo-wmi-other-method.rst | 108 +++
> MAINTAINERS | 17 +
> drivers/platform/x86/Kconfig | 40 ++
> drivers/platform/x86/Makefile | 5 +
> drivers/platform/x86/lenovo-wmi-capdata01.c | 136 ++++
> drivers/platform/x86/lenovo-wmi-capdata01.h | 29 +
> drivers/platform/x86/lenovo-wmi-events.c | 132 ++++
> drivers/platform/x86/lenovo-wmi-events.h | 21 +
> drivers/platform/x86/lenovo-wmi-gamezone.c | 380 +++++++++++
> drivers/platform/x86/lenovo-wmi-gamezone.h | 18 +
> drivers/platform/x86/lenovo-wmi-helpers.c | 64 ++
> drivers/platform/x86/lenovo-wmi-helpers.h | 24 +
> drivers/platform/x86/lenovo-wmi-other.c | 626 ++++++++++++++++++
> drivers/platform/x86/lenovo-wmi-other.h | 19 +
> 15 files changed, 1822 insertions(+)
> create mode 100644 Documentation/wmi/devices/lenovo-wmi-gamezone.rst
> create mode 100644 Documentation/wmi/devices/lenovo-wmi-other-method.rst
> create mode 100644 drivers/platform/x86/lenovo-wmi-capdata01.c
> create mode 100644 drivers/platform/x86/lenovo-wmi-capdata01.h
> create mode 100644 drivers/platform/x86/lenovo-wmi-events.c
> create mode 100644 drivers/platform/x86/lenovo-wmi-events.h
> create mode 100644 drivers/platform/x86/lenovo-wmi-gamezone.c
> create mode 100644 drivers/platform/x86/lenovo-wmi-gamezone.h
> create mode 100644 drivers/platform/x86/lenovo-wmi-helpers.c
> create mode 100644 drivers/platform/x86/lenovo-wmi-helpers.h
> create mode 100644 drivers/platform/x86/lenovo-wmi-other.c
> create mode 100644 drivers/platform/x86/lenovo-wmi-other.h
>
> --
> 2.49.0
>

All,

I accidentally attached some misnamed patches that I didn't realize
got duplicated. The correct patches are all v4 X/6. Apologies for the
confusion.

Cheers,
Derek.