[PATCH v6 0/1] platform/x86/tuxedo: Add virtual LampArray for TUXEDO NB04 devices
From: Werner Sembach
Date: Thu Apr 03 2025 - 17:37:02 EST
Next version and hopefully the final one? Lets see ^^.
I integrated more coding style suggestions from Ilpo he gave me on a different
patch, but were applicable here too.
For the why I named the subfolder nb04 and some functions *wmi_xx* see this:
https://gitlab.com/tuxedocomputers/development/packages/linux/-/tree/tuxedo-drivers_upstream_wip/drivers/platform/x86/tuxedo?ref_type=heads
- We have several ODMs identified in the board_vendor dmi string (NB01, NB02,
NB04, and NB05) and are planing to upstream drivers for all of them. So I
already incorporated it in the folder and module name.
- On NB04 devices there is a wmi_ab interface for the keyboard and a wmi_bs
interface for power control and some device informations. Util functions that
will eventually be used in both drivers are named *wmi_xx*
I also hope it was ok that I significantly cut down the cc list that was ever
expanding since v1.
v2: Integrated Armins feedback and fixed kernel test robot warnings.
v3: Fixed borked subject line of v2.
v4: Remove unrequired WMI mutex.
Move device checking from probe to init.
Fix device checking working exactly reverse as it should.
Fix null pointer dereference because,
hdev->driver_data != hdev->dev.driver_data.
v5: Move everything to subfolder nb04 in preparation for the eventual
upstreaming of other tuxedo-driver parts.
Integrated Ilpos coding style feedback.
Use dev_set/get_drvdata() based on Armins feedback.
v6: Integrated more of Ilpo coding style feedback from a different LKML
patch-thread (less files, local functions prefixed with a short string).
Werner Sembach (1):
platform/x86/tuxedo: Add virtual LampArray for TUXEDO NB04 devices
MAINTAINERS | 6 +
drivers/platform/x86/Kconfig | 2 +
drivers/platform/x86/Makefile | 3 +
drivers/platform/x86/tuxedo/Kconfig | 8 +
drivers/platform/x86/tuxedo/Makefile | 8 +
drivers/platform/x86/tuxedo/nb04/Kconfig | 15 +
drivers/platform/x86/tuxedo/nb04/Makefile | 10 +
drivers/platform/x86/tuxedo/nb04/wmi_ab.c | 847 ++++++++++++++++++++
drivers/platform/x86/tuxedo/nb04/wmi_util.c | 95 +++
drivers/platform/x86/tuxedo/nb04/wmi_util.h | 109 +++
10 files changed, 1103 insertions(+)
create mode 100644 drivers/platform/x86/tuxedo/Kconfig
create mode 100644 drivers/platform/x86/tuxedo/Makefile
create mode 100644 drivers/platform/x86/tuxedo/nb04/Kconfig
create mode 100644 drivers/platform/x86/tuxedo/nb04/Makefile
create mode 100644 drivers/platform/x86/tuxedo/nb04/wmi_ab.c
create mode 100644 drivers/platform/x86/tuxedo/nb04/wmi_util.c
create mode 100644 drivers/platform/x86/tuxedo/nb04/wmi_util.h
--
2.43.0