Re: [PATCH v2] platform/x86: asus-wmi: Add keyboard backlight toggle support

From: Daniel Drake
Date: Mon May 07 2018 - 10:46:12 EST


Hi Andy,

On Mon, May 7, 2018 at 8:10 AM, Andy Shevchenko
<andy.shevchenko@xxxxxxxxx> wrote:
>
> On Thu, May 3, 2018 at 6:04 AM, Chris Chiu <chiu@xxxxxxxxxxxx> wrote:
> > Some Asus laptops like UX550GE has hotkey (Fn+F7) for keyboard
> > backlight toggle. In this UX550GE, the hotkey incremet the level
> > of brightness for each keypress from 1 to 3, and then switch it
> > off when the brightness has been the max. This commit interprets
> > the code 0xc7 generated from hotkey to KEY_KBDILLUMUP to increment
> > the brightness, then pass KEY_KBDILLUMTOGGLE to user space after
> > the brightness max been reached for switching the led off.
> >
>
> Pushed to my review and testing queue, thanks!

We found that GNOME's handling of the toggle key is somewhat imperfect
and it will need modifying before we achieve the
Up-Up-Up-off-Up-Up-Up-off... cycle that we are looking for.

https://gitlab.gnome.org/GNOME/gnome-settings-daemon/issues/41

In that discussion an alternative perspective was raised:

Is it right for the kernel to modify the key sent to userspace, when
it is then relying on the specific userspace action of it changing the
brightness to the next expected level? (and this userspace behaviour
is not even working right in the GNOME case)

Instead, would it make sense for the kernel to always report TOGGLE in
this case, and for GNOME to interpret toggle as simply "cycle through
all the available brightness levels"?

We'd be interested in your thoughts.

Thanks
Daniel