From: Rishit Bansal <rishitbansal0@gmail.com>
To: Hans de Goede <hdegoede@redhat.com>, Pavel Machek <pavel@ucw.cz>,
Rishit Bansal <rishitbansal0@gmail.com>
Cc: Mark Gross <markgross@kernel.org>,
linux-kernel@vger.kernel.org,
platform-driver-x86@vger.kernel.org,
Linux LED Subsystem <linux-leds@vger.kernel.org>,
Dan Murphy <dmurphy@ti.com>
Subject: Re: API for setting colors of RGB backlit keyboard zones (was [PATCH V3] platform/x86: hp-wmi: Support omen backlight control wmi-acpi methods)
Date: Mon, 20 Feb 2023 00:16:04 +0530 [thread overview]
Message-ID: <a11fd918-d1bc-8a1f-c123-bcb0b4fa38a5@gmail.com> (raw)
In-Reply-To: <bd2ae598-3f13-f465-4bde-6ab364b79db3@redhat.com>
On 19/02/23 18:50, Hans de Goede wrote:
> Hi,
>
> On 2/18/23 12:48, Pavel Machek wrote:
>> Hi!
>>
>>
>>>> I do agree with you that we need to avoid kbd_backlight in the name to avoid causing existing upower code to have weird interactions with this (it supports / assumes there is only 1 kbd_backlight LED class device).
>>>>
>>>> So lets go with just these 4:
>>>>
>>>> /sys/class/leds/hp_omen::kbd_zoned_backlight-1/
>>>> /sys/class/leds/hp_omen::kbd_zoned_backlight-2/
>>>> /sys/class/leds/hp_omen::kbd_zoned_backlight-3/
>>>> /sys/class/leds/hp_omen::kbd_zoned_backlight-4/
>>>>
>>>> Using the _zoned_ between kbd and baclight to avoid confusing the existing upower code. Then once this has landed we can look into extending upower support for this.
>>>>
>>>> Note the requested documentation patch should probably also explain that the _zoned_ was done deliberately to make current upower code ignore the devices.
>>>>
>>
>>>
>>> This makes sense, I agree that the global LED file will cause more confusion
>>> and hacks in the code. I'll start working on the _zoned_ naming scheme with
>>> 4 files + documentation changes and make a patch for this soon!
>>>
>>
>> /sys/class/leds/:rgb:kbd_zoned_backlight-4/ is better than what was
>> suggested above.
>
> Ah yes using rgb for the color part of the name makes sense.
>
>> But we already use _1 suffix to deduplicate the, so
>> I'm not sure this is best naming.
>
>
>
> I guess we could try to actually name the zones, something like
> (no idea if this are indeed the 4 zones):
>
> :rgb:kbd_zoned_backlight-main
> :rgb:kbd_zoned_backlight-wasd
> :rgb:kbd_zoned_backlight-cursor
> :rgb:kbd_zoned_backlight-numpad
>
> Rishit any comments on this or improvements to it.
Here is an image of how the 4 zones on the keyboard look like
(https://imgur.com/a/iQdRWCM). I think we can call them "left",
"middle", "right", and "wasd":
:rgb:kbd_zoned_backlight-left
:rgb:kbd_zoned_backlight-middle
:rgb:kbd_zoned_backlight-right
:rgb:kbd_zoned_backlight-wasd
>
>> There are keyboards with per-key backlight. How do you suggest to
>> solve those?
>
> I really think those fall into a separate category, currently AFAIK
> all support for those use /dev/hidraw directly from userspace.
>
> And any kernel API would need to likely be ioctl based, allowing
> setting all the LEDs in a single syscall otherwise setting the
> LEDs becomes to expensive / introduces to much latency when
> doing software driven animations. So I think the best thing to
> do there is to declare these out-of-scope for the classic
> sysfs based LED class API.
I agree with this as well, a separate API will be required for more
complex use cases with per-key color control. For most future cases
with a limited number of zones, our current approach with multi LED
"kbd_zoned" files should work out.
>
> Regards,
>
> Hans
>
>
>
next prev parent reply other threads:[~2023-02-19 18:46 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20230131235027.36304-1-rishitbansal0@gmail.com>
[not found] ` <9b761996-d522-b0f8-6472-10e40e09e036@redhat.com>
[not found] ` <65a11a89-e780-6d60-a40e-cd3245780762@gmail.com>
2023-02-02 12:43 ` [PATCH V3] platform/x86: hp-wmi: Support omen backlight control wmi-acpi methods Hans de Goede
2023-02-02 19:59 ` Rishit Bansal
2023-02-06 14:32 ` API for setting colors of RGB backlit keyboard zones (was [PATCH V3] platform/x86: hp-wmi: Support omen backlight control wmi-acpi methods) Hans de Goede
2023-02-06 15:07 ` Rishit Bansal
2023-02-07 11:53 ` Pavel Machek
2023-02-07 13:05 ` Rishit Bansal
2023-02-13 12:49 ` Hans de Goede
2023-02-13 14:16 ` Rishit Bansal
2023-02-18 11:48 ` Pavel Machek
2023-02-19 13:20 ` Hans de Goede
2023-02-19 18:46 ` Rishit Bansal [this message]
2023-02-20 8:43 ` Hans de Goede
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=a11fd918-d1bc-8a1f-c123-bcb0b4fa38a5@gmail.com \
--to=rishitbansal0@gmail.com \
--cc=dmurphy@ti.com \
--cc=hdegoede@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-leds@vger.kernel.org \
--cc=markgross@kernel.org \
--cc=pavel@ucw.cz \
--cc=platform-driver-x86@vger.kernel.org \
/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;
as well as URLs for NNTP newsgroup(s).