On Tue, 29 Oct 2024, Kurt Borja wrote: > This patch adds platform_profile support for Dell devices which implement > WMAX thermal interface, that are meant to be controlled by Alienware Command > Center (AWCC). These devices may include newer Alienware M-Series, Alienware > X-Series and Dell's G-Series. > > Tested on an Alienware x15 R1. > --- > v11: > - Minor changes on patch 4/5 > v10: > - `thermal` and `gmode` quirks are now manually selected because some > models with the WMAX interface don't have the necessary thermal > methods. > - Added force_platform_profile and force_gmode patch for a better user > experience > v9: > - Minor changes on patch 3/4 > v8: > - Aesthetic and readibility fixes on patch 3/4 > - Better commit message for patch 3/4 > v7: > - Platform profile implementation refactored in order to efficently > autodetect available thermal profiles > - Added GameShiftStatus method to documentation > - Implemented GameShiftStatus switch for devices that support it > v6: > - Removed quirk thermal_ustt. > - Now quirk thermal can take canonical thermal profile _tables_ defined > in enum WMAX_THERMAL_TABLES > - Added autodetect_thermal_profile > - Proper removal of thermal profile > v5: > - Better commit messages > - insize renamed to in_size in alienware_wmax_command() to match other > arguments. > - Kudos in documentation now at the end of the file > v4: > - Fixed indentation on previous code > - Removed unnecessary (acpi_size) and (u32 *) casts > - Return -EIO on ACPI_FAILURE > - Appropiate prefixes given to macros > - 0xFFFFFFFF named WMAX_FAILURE_CODE > - Added support for a new set of thermal codes. Old ones now have USTT > in their names > - A new quirk has been added to differantiate between the two sets. > thermal and thermal_ustt are mutually exclusive > - Added documentation for WMAX interface > v3: > - Removed extra empty line > - 0x0B named WMAX_ARG_GET_CURRENT_PROF > - Removed casts to the same type on functions added in this patch > - Thermal profile to WMAX argument is now an static function and makes > use of in-built kernel macros > - Platform profile is now removed only if it was created first > - create_platform_profile is now create_thermal_profile to avoid > confusion > - profile_get and profile_set functions renamed too to match the above > v2: > - Moved functionality to alienware-wmi driver > - Added thermal and gmode quirks to add support based on dmi match > - Performance profile is now GMODE for devices that support it > - alienware_wmax_command now is insize agnostic to support new thermal > methods > > Kurt Borja (5): > alienware-wmi: fixed indentation and clean up > alienware-wmi: alienware_wmax_command() is now input size agnostic > alienware-wmi: added platform profile support > alienware-wmi: added force module parameters > alienware-wmi: WMAX interface documentation > > Documentation/wmi/devices/alienware-wmi.rst | 388 ++++++++++++++++ > MAINTAINERS | 1 + > drivers/platform/x86/dell/Kconfig | 1 + > drivers/platform/x86/dell/alienware-wmi.c | 477 ++++++++++++++++---- > 4 files changed, 791 insertions(+), 76 deletions(-) > create mode 100644 Documentation/wmi/devices/alienware-wmi.rst Huge thanks to you both Kurt and Armin for all the work done to improve this series! :-) I've applied this series to the review-ilpo branch now. -- i.