public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Mario Limonciello <mario.limonciello@amd.com>
To: Denis Benato <benato.denis96@gmail.com>, linux-kernel@vger.kernel.org
Cc: platform-driver-x86@vger.kernel.org,
	"Hans de Goede" <hdegoede@redhat.com>,
	"Ilpo Järvinen" <ilpo.jarvinen@linux.intel.com>,
	"Luke D . Jones" <luke@ljones.dev>,
	"Alok Tiwari" <alok.a.tiwari@oracle.com>,
	"Derek John Clark" <derekjohn.clark@gmail.com>,
	"Mateusz Schyboll" <dragonn@op.pl>,
	porfet828@gmail.com
Subject: Re: [PATCH v14 0/9] platform/x86: Add asus-armoury driver
Date: Wed, 15 Oct 2025 00:13:13 -0500	[thread overview]
Message-ID: <0752fcde-6c25-4cde-b35f-2204e24ff0f1@amd.com> (raw)
In-Reply-To: <20251015014736.1402045-1-benato.denis96@gmail.com>



On 10/14/2025 8:47 PM, Denis Benato wrote:
> Hi all,
> 
> the 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@amd.com/
> 
> 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. Given that Derek is also working on a
> similar approach to Lenovo in part based on my initial work I'd like to think
> that the overall approach is good and may become standardised for these types
> of things.
> 
> Regarding PPT: it is intended to add support for "custom" platform profile
> soon. If it's a blocker for this patch series being accepted I will drop the
> platform-x86-asus-armoury-add-ppt_-and-nv_-tuning.patch and get that done
> separately to avoid holding the bulk of the series up. Ideally I would like
> to get the safe limits in so users don't fully lose functionality or continue
> to be exposed to potential instability from setting too low, or be mislead
> in to thinking they can set limits higher than actual limit.
> 
> The bulk of the PPT patch is data, the actual functional part is relatively
> small and similar to the last version.
> 
> Unfortunately I've been rather busy over the months and may not cover
> everything in the v7 changelog but I've tried to be as comprehensive as I can.
> 
> Regards,
> Luke

As a general comment that applies to a few patches in the series.

The S-o-b means that YOU sign off on them, it's like a chain of custody.

Any patches that you're sending need your own S-o-B, even if they're 
100% the same as the original from 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@ljones.dev/
> - v3
>    - All concerns addressed.
>    - History: https://lore.kernel.org/platform-driver-x86/20240806020747.365042-1-luke@ljones.dev/
> - 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
> - V7
>    - Remove review tags where the code changed significantly
>    - Add auto_screen_brightness WMI attribute support
>    - Move PPT patch to end
>    - Add support min/max PPT values for 36 laptops (and two handhelds)
>    - reword commit for "asus-wmi: export symbols used for read/write WMI"
>    - asus-armoury: move existing tunings to asus-armoury
>      - Correction to license header
>      - Remove the (initial) mutex use (added for core count only in that patch)
>      - Clarify some doc comments (attr_int_store)
>      - Cleanup pr_warn in dgpu/egpu/mux functions
>      - Restructure logic in asus_fw_attr_add()
>      - Check gpu_mux_dev_id and mini_led_dev_id before remove attrs
>    - asus-armoury: add core count control:
>      - add mutex to prevent possible concurrent write to the core
>        count WMI due to separated bit/little attributes
>    - asus-armoury: add ppt_* and nv_* tuning knobs:
>      - Move to end of series
>      - Refactor to use a table of allowed min/max values to
>        ensure safe settings
>      - General code cleanup
>    - Ensure checkpatch.pl returns clean for all
> - V8
>    - asus-armoury: move existing tunings to asus-armoury module
>      - Further cleanup: https://lore.kernel.org/platform-driver-x86/20250316230724.100165-2-luke@ljones.dev/T/#m72e203f64a5a28c9c21672406b2e9f554a8a8e38
>    - asus-armoury: add ppt_* and nv_* tuning knobs
>      - Address concerns in https://lore.kernel.org/platform-driver-x86/20250316230724.100165-2-luke@ljones.dev/T/#m77971b5c1e7f018954c16354e623fc06522c5e41
>      - Refactor struct asus_armoury_priv to record both AC and DC settings
>      - Tidy macros and functions affected by the above to be clearer as a result
>      - Move repeated strings such as "ppt_pl1_spl" to #defines
>      - Split should_create_tunable_attr() in to two functions to better clarify:
>        - is_power_tunable_attr()
>        - has_valid_limit()
>      - Restructure init_rog_tunables() to initialise AC and DC in a
>        way that makes more sense.
>      - Ensure that if DC setting table is not available then attributes
>        return -ENODEV only if on DC mode.
> - V9
>    - asus-armoury: move existing tunings to asus-armoury module
>      - return -EBUSY when eGPU/dGPU cannot be deactivated
>    - asus-armoury: add apu-mem control support
>      - discard the WMI presence bit fixing the functionality
>    - asus-armoury: add core count control
>      - replace mutex lock/unlock with guard
>      - move core count alloc for initialization in init_max_cpu_cores()
> - v10
>    - platform/x86: asus-wmi: export symbols used for read/write WMI
>      - fix error with redefinition of asus_wmi_set_devstate
>    - asus-armoury: move existing tunings to asus-armoury module
>      - hwmon or other -> hwmon or others
>      - fix wrong function name in documentation (attr_uint_store)
>      - use kstrtouint where appropriate
>      - (*) fix unreachable code warning: the fix turned out to be partial
>      - improve return values in case of error in egpu_enable_current_value_store
>    - asus-armoury: asus-armoury: add screen auto-brightness toggle
>      - actually register screen_auto_brightness attribute
> - v11
>    - cover-letter:
>      - reorganize the changelog of v10
>    - asus-armoury: move existing tunings to asus-armoury module
>      - move the DMIs list in its own include, fixing (*) for good
>    - asus-armoury: add ppt_* and nv_* tuning knobs
>      - fix warning about redefinition of ppt_pl2_sppt_def for GV601R
> - v12
>    - asus-armoury: add ppt_* and nv_* tuning knobs
>      - add min/max values for FA608WI and FX507VI
> - v13
>    - asus-armoury: add ppt_* and nv_* tuning knobs
>      - fix a typo in a comment about _def attributes
>      - add min/max values for GU605CW and G713PV
>    - asus-armoury: add apu-mem control support
>      - fix a possible out-of-bounds read in apu_mem_current_value_store
> - v14
>    - platform/x86: asus-wmi: rename ASUS_WMI_DEVID_PPT_FPPT
>      - added patch to rename the symbol for consistency
>    - platform/x86: asus-armoury: add ppt_* and nv_* tuning knobs
>      - remove the unchecked usage of dmi_get_system_info while
>        also increasing consistency with other messages
> 
> Denis Benato (1):
>    platform/x86: asus-wmi: rename ASUS_WMI_DEVID_PPT_FPPT
> 
> Luke D. Jones (8):
>    platform/x86: asus-wmi: export symbols used for read/write 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 apu-mem control support
>    platform/x86: asus-armoury: add core count control
>    platform/x86: asus-armoury: add screen auto-brightness toggle
>    platform/x86: asus-wmi: deprecate bios features
>    platform/x86: asus-armoury: add ppt_* and nv_* tuning knobs
> 
>   .../ABI/testing/sysfs-platform-asus-wmi       |   17 +
>   drivers/hid/hid-asus.c                        |    1 +
>   drivers/platform/x86/Kconfig                  |   23 +
>   drivers/platform/x86/Makefile                 |    1 +
>   drivers/platform/x86/asus-armoury.c           | 1172 ++++++++++++++
>   drivers/platform/x86/asus-armoury.h           | 1402 +++++++++++++++++
>   drivers/platform/x86/asus-wmi.c               |  170 +-
>   .../platform_data/x86/asus-wmi-leds-ids.h     |   50 +
>   include/linux/platform_data/x86/asus-wmi.h    |   62 +-
>   9 files changed, 2823 insertions(+), 75 deletions(-)
>   create mode 100644 drivers/platform/x86/asus-armoury.c
>   create mode 100644 drivers/platform/x86/asus-armoury.h
>   create mode 100644 include/linux/platform_data/x86/asus-wmi-leds-ids.h
> 


  parent reply	other threads:[~2025-10-15  5:13 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-10-15  1:47 [PATCH v14 0/9] platform/x86: Add asus-armoury driver Denis Benato
2025-10-15  1:47 ` [PATCH v14 1/9] platform/x86: asus-wmi: export symbols used for read/write WMI Denis Benato
2025-10-15 13:03   ` Ilpo Järvinen
2025-10-15  1:47 ` [PATCH v14 2/9] platform/x86: asus-armoury: move existing tunings to asus-armoury module Denis Benato
2025-10-15 13:56   ` Ilpo Järvinen
2025-10-16  1:28     ` Denis Benato
2025-10-15  1:47 ` [PATCH v14 3/9] platform/x86: asus-armoury: add panel_hd_mode attribute Denis Benato
2025-10-15  1:47 ` [PATCH v14 4/9] platform/x86: asus-armoury: add apu-mem control support Denis Benato
2025-10-17 12:16   ` Ilpo Järvinen
2025-10-18  1:23     ` Denis Benato
2025-10-15  1:47 ` [PATCH v14 5/9] platform/x86: asus-armoury: add core count control Denis Benato
2025-10-15 14:11   ` Ilpo Järvinen
2025-10-17 12:48   ` Ilpo Järvinen
2025-10-18  1:43     ` Denis Benato
2025-10-20 17:15       ` Ilpo Järvinen
2025-10-20 17:37         ` Denis Benato
2025-10-20 18:45           ` Mario Limonciello (AMD) (kernel.org)
2025-10-19 16:53     ` Denis Benato
2025-10-15  1:47 ` [PATCH v14 6/9] platform/x86: asus-armoury: add screen auto-brightness toggle Denis Benato
2025-10-15  1:47 ` [PATCH v14 7/9] platform/x86: asus-wmi: deprecate bios features Denis Benato
2025-10-17 12:54   ` Ilpo Järvinen
2025-10-15  1:47 ` [PATCH v14 8/9] platform/x86: asus-wmi: rename ASUS_WMI_DEVID_PPT_FPPT Denis Benato
2025-10-17 12:59   ` Ilpo Järvinen
2025-10-15  1:47 ` [PATCH v14 9/9] platform/x86: asus-armoury: add ppt_* and nv_* tuning knobs Denis Benato
2025-10-17 13:09   ` Ilpo Järvinen
2025-10-15  5:13 ` Mario Limonciello [this message]
2025-10-15  9:38   ` [PATCH v14 0/9] platform/x86: Add asus-armoury driver Ilpo Järvinen
2025-10-15 12:00     ` Denis Benato
2025-10-15 12:06       ` Ilpo Järvinen
2025-10-15 12:27         ` Denis Benato

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=0752fcde-6c25-4cde-b35f-2204e24ff0f1@amd.com \
    --to=mario.limonciello@amd.com \
    --cc=alok.a.tiwari@oracle.com \
    --cc=benato.denis96@gmail.com \
    --cc=derekjohn.clark@gmail.com \
    --cc=dragonn@op.pl \
    --cc=hdegoede@redhat.com \
    --cc=ilpo.jarvinen@linux.intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=luke@ljones.dev \
    --cc=platform-driver-x86@vger.kernel.org \
    --cc=porfet828@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox