All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/2] platform/x86: asus-armoury: add Whisper Mode support
@ 2026-07-28  7:18 Marco Scardovi
  2026-07-28  7:18 ` [PATCH 1/2] platform/x86: asus-wmi: add Whisper Mode WMI device ID defines Marco Scardovi
                   ` (2 more replies)
  0 siblings, 3 replies; 10+ messages in thread
From: Marco Scardovi @ 2026-07-28  7:18 UTC (permalink / raw)
  To: platform-driver-x86
  Cc: luke, ilpo.jarvinen, hansg, corentin.chary, denis.benato,
	linux-kernel, Marco Scardovi

This series introduces support for ASUS WMI Whisper Mode hardware controls
in the asus-wmi header and asus-armoury driver.

Background & Findings:
----------------------
After talking with Denis and thanks to NeuroMarshal reverse engineering and
firmware trace analysis on modern ASUS laptops, three specific WMI Device IDs
were identified that manage acoustic profiles and thermal regulation under
ASUS Whisper Mode:

1. ASUS_WMI_DEVID_WHISPER_MODE (0x0012007A):
   - Controls the BIOS-level Whisper Mode acoustic profile toggle (read/write boolean).
2. ASUS_WMI_DEVID_WHISPER_ENABLE (0x00090022):
   - Enables or disables Dynamic Whisper acoustic regulation (read/write boolean).
3. ASUS_WMI_DEVID_WHISPER_STATUS (0x00090023):
   - Reports status and allows runtime control over Dynamic Whisper state (read/write boolean).

Series Overview:
----------------
- Patch 1/2: Adds WMI Device ID macro definitions to
  include/linux/platform_data/x86/asus-wmi.h.
- Patch 2/2: Exposes whisper_mode, whisper_enable, and whisper_status sysfs
  attribute groups in drivers/platform/x86/asus-armoury.c.

Safety & Compatibility:
-----------------------
All newly introduced attributes are probed via armoury_has_devstate() before
sysfs registration. On devices where these WMI methods are not implemented by
firmware, the sysfs nodes are gracefully omitted without impacting existing
attributes or functionality.

Validation:
-----------
- Build verification against linux-next cleanly with zero warnings or errors.
- Coding style and formatting verified via git diff --check.

Note:
-----------
Unfortunately, due to it being missing on my laptop, I'm not able to verify
if the WhisperMode works as intended. The values are the same reported by
NeuroMarshal on his reverse engineering of Armoury Crate [1] so they *should*
work.

[1] https://github.com/NeuroMarshal/armoury-linux-probe

Marco Scardovi (2):
  platform/x86: asus-wmi: add Whisper Mode WMI device ID defines
  platform/x86: asus-armoury: add Whisper Mode attributes

 drivers/platform/x86/asus-armoury.c        | 14 ++++++++++++++
 include/linux/platform_data/x86/asus-wmi.h |  5 +++++
 2 files changed, 19 insertions(+)

-- 
2.55.0

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2026-07-29 14:43 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-28  7:18 [PATCH 0/2] platform/x86: asus-armoury: add Whisper Mode support Marco Scardovi
2026-07-28  7:18 ` [PATCH 1/2] platform/x86: asus-wmi: add Whisper Mode WMI device ID defines Marco Scardovi
2026-07-28  7:18 ` [PATCH 2/2] platform/x86: asus-armoury: add Whisper Mode attributes Marco Scardovi
2026-07-28 11:39 ` [PATCH 0/2] platform/x86: asus-armoury: add Whisper Mode support Hans de Goede
2026-07-28 13:56   ` Marco Scardovi
2026-07-29  7:32     ` Hans de Goede
2026-07-29 13:10       ` Denis Benato
2026-07-29 13:22         ` Marco Scardovi
2026-07-29 13:34           ` Denis Benato
2026-07-29 14:43             ` Marco Scardovi

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.