Patches 1-3 of v3 are in review-ilpo-next already, so this reroll
carries only the remaining two patches, rebased on top of it.
DSTS device 0x0010005B evaluates the DSDT method EC0.KBLS(), which
snapshots the EC's host-visible keyboard state into a 16-byte buffer:
lighting mode, red, green and blue levels, animation speed, and the
four power flags. kbd_rgb_mode and kbd_rgb_state become readable and
report the write format with n/a in the command position, because the
command word belongs to the write verb and has no state equivalent.
Changes in v4:
- report n/a in the command position on read instead of a synthetic 1,
as discussed in the v2 thread: the command word belongs to the write
verb, so there is no state to report there
- ABI documentation: describe the n/a command word, state the mode
clamping exactly (mode 9 and modes 12 and above are sent as 10), and
note that reads fail with -ENODEV on hardware without readback
support
Provenance: the KBLS buffer layout and the speed-code semantics were
recovered by static analysis of the EC firmware (ITE IT5570VG), with
the help of an LLM-driven toolchain. Tested on a TUF Gaming A15
(FA507NV): the v2 readback on kernel 7.2.6, and the S5 behaviour of
the shutdown flag by A/B testing both values.
v3: https://lore.kernel.org/all/20261010101601.888709-1-bartualev@gmail.com/ (local)
v2: https://lore.kernel.org/all/20260926005625.171560-1-bartualev@gmail.com/ (local)
v1: https://lore.kernel.org/all/20260925200744.129714-1-bartualev@gmail.com/ (local)
Signed-off-by: Bartu Alev <redacted>
---
Bartu Alev (2):
platform/x86: asus-wmi: add TUF keyboard RGB readback support
Documentation/ABI: asus-wmi: document TUF keyboard RGB attributes
Documentation/ABI/testing/sysfs-platform-asus-wmi | 46 +++++++++++++
drivers/platform/x86/asus-wmi.c | 83 ++++++++++++++++++++++-
include/linux/platform_data/x86/asus-wmi.h | 3 +
3 files changed, 130 insertions(+), 2 deletions(-)
---
base-commit: 9d3475065167197742b0882aff21cf8e78393277
change-id: 20261029-asus-tuf-rgb-v4-06ad93a6060b
Best regards,
--
Bartu Alev [off-list ref]