Re: [PATCH v6 0/9] platform/x86: introduce asus-armoury driver

From: Luke Jones
Date: Tue Oct 15 2024 - 06:09:43 EST


Hi all, did I have anything left to do on this series? I'm quite certain I've covered everything now.

Cheers,
Luke.


On Mon, 30 Sep 2024, at 2:00 AM, Luke D. Jones wrote:
> TL;DR:
> 1. introduce new module to contain bios attributes, using fw_attributes_class
> 2. deprecate all possible attributes from asus-wmi that were added ad-hoc
> 3. remove those in the next LTS cycle
>
> The idea for this originates from a conversation with Mario Limonciello
> https://lore.kernel.org/platform-driver-x86/371d4109-a3bb-4c3b-802f-4ec27a945c99@xxxxxxx/
>
> It is without a doubt much cleaner to use, easier to discover, and the
> API is well defined as opposed to the random clutter of attributes I had
> been placing in the platform sysfs.
>
> There is some discussion on-going regarding the way tuning knobs such as
> the PPT_* should work with platform_profile. This may result in the creation
> of an extra profile type "Custom" to signify that the user has adjusted
> things away from the defaults used by profiles such as "balanced" or "quiet".
>
> Regards,
> Luke
>
> Changelog:
> - v1
> - Initial submission
> - v2
> - Too many changes to list, but all concerns raised in previous
> submission addressed.
> - History:
> https://lore.kernel.org/platform-driver-x86/20240716051612.64842-1-luke@xxxxxxxxxx/
> - v3
> - All concerns addressed.
> - History:
> https://lore.kernel.org/platform-driver-x86/20240806020747.365042-1-luke@xxxxxxxxxx/
> - v4
> - Use EXPORT_SYMBOL_NS_GPL() for the symbols required in this patch
> series
> - Add patch for hid-asus due to the use of EXPORT_SYMBOL_NS_GPL()
> - Split the PPT knobs out to a separate patch
> - Split the hd_panel setting out to a new patch
> - Clarify some of APU MEM configuration and convert int to hex
> - Rename deprecated Kconfig option to ASUS_WMI_DEPRECATED_ATTRS
> - Fixup cyclic dependency in Kconfig
> - v5
> - deprecate patch: cleanup ``#if`, ``#endif` statements, edit kconfig
> detail, edit commit msg
> - cleanup ppt* tuning patch
> - proper error handling in module init, plus pr_err()
> - ppt tunables have a notice if there is no match to get defaults
> - better error handling in cpu core handling
> - don't continue if failure
> - use the mutex to gate WMI writes
> - V6
> - correctly cleanup/unwind if module init fails
>
> Luke D. Jones (9):
> platform/x86: asus-wmi: export symbols used for read/write WMI
> hid-asus: Add MODULE_IMPORT_NS(ASUS_WMI)
> platform/x86: asus-armoury: move existing tunings to asus-armoury
> module
> platform/x86: asus-armoury: add panel_hd_mode attribute
> platform/x86: asus-armoury: add the ppt_* and nv_* tuning knobs
> platform/x86: asus-armoury: add dgpu tgp control
> platform/x86: asus-armoury: add apu-mem control support
> platform/x86: asus-armoury: add core count control
> platform/x86: asus-wmi: deprecate bios features
>
> .../ABI/testing/sysfs-platform-asus-wmi | 17 +
> drivers/hid/hid-asus.c | 1 +
> drivers/platform/x86/Kconfig | 21 +
> drivers/platform/x86/Makefile | 1 +
> drivers/platform/x86/asus-armoury.c | 1093 +++++++++++++++++
> drivers/platform/x86/asus-armoury.h | 257 ++++
> drivers/platform/x86/asus-wmi.c | 189 ++-
> include/linux/platform_data/x86/asus-wmi.h | 22 +
> 8 files changed, 1564 insertions(+), 37 deletions(-)
> create mode 100644 drivers/platform/x86/asus-armoury.c
> create mode 100644 drivers/platform/x86/asus-armoury.h
>
> --
> 2.46.1