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

From: Daniel Drake
Date: Mon May 14 2018 - 20:25:44 EST


Hi Andy,

On Mon, May 7, 2018 at 8:46 AM, Daniel Drake <drake@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"?

Any comments on this? I am tempted to send a patch to just make this
key always emit TOGGLE from the kernel given that we have a tentative
agreement on implementing the brightness cycle within GNOME.

Daniel