| From: |
| Kurt Borja <kuurtb-AT-gmail.com> |
| To: |
| platform-driver-x86-AT-vger.kernel.org |
| Subject: |
| [PATCH v2 00/20] alienware-wmi driver rework |
| Date: |
| Sun, 29 Dec 2024 14:44:47 -0500 |
| Message-ID: |
| <20241229194506.8268-2-kuurtb@gmail.com> |
| Cc: |
| Dell.Client.Kernel-AT-dell.com, hdegoede-AT-redhat.com, ilpo.jarvinen-AT-linux.intel.com, linux-kernel-AT-vger.kernel.org, mario.limonciello-AT-amd.com, w_armin-AT-gmx.de, Kurt Borja <kuurtb-AT-gmail.com> |
| Archive-link: |
| Article |
Hi!
Happy holidays. :)
~ Kurt
---
v1 -> v2:
[2/20]
- Small correction in commit message
[5/20]
- Define the sysfs attributes without macros
[6/20]
- Reworded commit title
- Reorder variables in previous WMAX methods too
- Standarized sysfs method names in hdmi, amplifier and deepsleep
groups
- Dropped Armin's Reviewed-by tag because this patch changed a lot
[7/20]
- Return -ENOMEM in case priv allocation fails in alienfx_probe()
- Assign priv and platdata on variable declaration
- Drop intermediate *leds in alienfx_probe()
- Add quirk_entry to state container
- Use quirks from priv on hdmi_mux, amplifier, deepslp visibility
methods, to eventually be able to move these groups into
alienware-wmi-wmax.c
- Set PROBE_FORCE_SYNCHRONOUS to platform_driver, to avoid racing to
drvdata after using device_create_groups on [8/20]
[8/20]
- Create hdmi, amplifier, deepslp sysfs groups on wmax's probe
[9/20]
- Assign priv on variable declaration
- Directly return create thermal_profile() in alienware_awcc_setup()
[10/20]
- Refactored alienware_wmi_method following Armin's comments
- Fix legacy_wmi_update_led logic
[13/20]
- Split DMI table lower in the file
- Rename quirk_entry -> alienfx_quirks
- Rename awcc_features -> awcc_quirks
- Make hdmi_mux, amplifier and deepslp `bool`
[16/20]:
- Only add common resources on alienware.h
[17/20]
- Reworded commit message: now mentions some blocks were reordered
- Move #include <linux/dmi.h> where it belongs alphabetically
- Included hdmi, amplifier, deepslp groups in alienware-wmi-wmax.c
[18/20]
- static inline init functions in case drivers are not compiled
- Return errno in case drivers are not compiled
v1: https://lore.kernel.org/platform-driver-x86/2024122105591...
Kurt Borja (20):
alienware-wmi: Remove unnecessary check at module exit
alienware-wmi: Move Lighting Control State
alienware-wmi: Modify parse_rgb() signature
alienware-wmi: Improve hdmi_mux, amplifier and deepslp group creation
alienware-wmi: Improve rgb-zones group creation
alienware_wmi: General cleanup of WMAX methods
alienware-wmi: Add a state container for LED control feature
alienware-wmi: Add WMI Drivers
alienware-wmi: Add a state container for thermal control methods
alienware-wmi: Refactor LED control methods
alienware-wmi: Refactor hdmi, amplifier, deepslp methods
alienware-wmi: Refactor thermal control methods
alienware-wmi: Split DMI table
MAINTAINERS: Update ALIENWARE WMI DRIVER entry
platform/x86: Rename alienware-wmi.c
platform/x86: Add alienware-wmi.h
platform-x86: Split the alienware-wmi driver
platform/x86: dell: Modify Makefile alignment
platform/x86: Update alienware-wmi config entries
alienware-wmi: Update header and module information
MAINTAINERS | 4 +-
drivers/platform/x86/dell/Kconfig | 30 +-
drivers/platform/x86/dell/Makefile | 45 +-
.../platform/x86/dell/alienware-wmi-base.c | 492 +++++++
.../platform/x86/dell/alienware-wmi-legacy.c | 98 ++
.../platform/x86/dell/alienware-wmi-wmax.c | 775 ++++++++++
drivers/platform/x86/dell/alienware-wmi.c | 1269 -----------------
drivers/platform/x86/dell/alienware-wmi.h | 101 ++
8 files changed, 1518 insertions(+), 1296 deletions(-)
create mode 100644 drivers/platform/x86/dell/alienware-wmi-base.c
create mode 100644 drivers/platform/x86/dell/alienware-wmi-legacy.c
create mode 100644 drivers/platform/x86/dell/alienware-wmi-wmax.c
delete mode 100644 drivers/platform/x86/dell/alienware-wmi.c
create mode 100644 drivers/platform/x86/dell/alienware-wmi.h
base-commit: 03f8e0e05510dad6377cd5ef029594d30e6c096d
--
2.47.1