[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20220805081909.10962-1-luke@ljones.dev>
Date: Fri, 5 Aug 2022 20:19:04 +1200
From: "Luke D. Jones" <luke@...nes.dev>
To: hdegoede@...hat.com
Cc: markgross@...nel.org, platform-driver-x86@...r.kernel.org,
linux-kernel@...r.kernel.org, "Luke D. Jones" <luke@...nes.dev>
Subject: [PATCH 0/5] asus-wmi: Add support for RGB keyboards
This is a patch series to add RGB support for ASUS laptops.
The laptops with this RGB tend to be the TUF series of gamer laptops.
The first step is initial bringup of support using the multicolor LED API.
These types of keyboards implement a slightly more complex interface than
just RGB control however - they also have modes with can be static LED,
blinking, rainbow, color cycles, and more. They also have some custom
animations that can play depending on device state, such as suspended
playing a fancy colour cycle, or playing a "wave" animation.
Two of the patches add support for these features.
The last patch adds documentation in:
Documentation/ABI/testing/sysfs-platform-asus-wmi
Some notes:
- this patch series obsoletes the previous RGB patches by myself
- it is not possible to add attribute groups to multicolor LED as
they get overwritten by `led_multicolor_groups` in
`led_classdev_multicolor_register_ext`.
- the methods for RGB control do not provide a way to fetch exisiting
state, so these methods are WO.
- There is an existing `asus::kbd_backlight`, this provides a 4-step
brightness to the RGB (off,low,med,high) individually to multicolor.
I was unsure of the effect of adding a similar path so have used the
`asus::multicolour::kbd_backlight` name to be clear about purpose.
If the `asus::kbd_backlight` is off, then no RGB is shown at all.\
I'm hopeful that this patch series addresses all previous feedback related
to the obsoleted patches.
Luke D. Jones (5):
asus-wmi: Add basic support for TUF laptop keyboard RGB
asus-wmi: Add support for TUF laptop keyboard RGB mode control
asus-wmi: Add support for TUF laptop keyboard states
asus-wmi: Document many of the undocumented API
asus-wmi: Convert all attr _show to use sysfs_emit
.../ABI/testing/sysfs-platform-asus-wmi | 50 ++++
drivers/platform/x86/asus-wmi.c | 263 +++++++++++++++++-
include/linux/platform_data/x86/asus-wmi.h | 5 +
3 files changed, 311 insertions(+), 7 deletions(-)
--
2.37.1
Powered by blists - more mailing lists