Re: [PATCH v5 3/3] platform/chrome: Standardize Chrome OS keyboard backlight name

From: Dmitry Torokhov
Date: Thu Apr 04 2019 - 16:26:51 EST


On Thu, Apr 4, 2019 at 1:20 PM Pavel Machek <pavel@xxxxxx> wrote:
>
> On Thu 2019-04-04 13:13:34, Dmitry Torokhov wrote:
> > On Thu, Apr 4, 2019 at 1:06 PM Pavel Machek <pavel@xxxxxx> wrote:
> > >
> > > Hi!
> > >
> > > > > > It is *function* and maybe color that userspace is interested in, and
> > > > > > here we have proper standardization in form of "kbd_backlight". Device
> > > > > > name is, well, device name. It should uniquely identify the device led
> > > > > > is attached to, but otherwise is rarely interesting. If userspace is
> > > > > > really concerned what kind of keyboard backlight it is it should
> > > > > > investigate parent device(s) and see what they end up with.
> > > > >
> > > > > That does not work. Userspace wants to know if it is internal keyboard
> > > > > or USB keyboard, not what kind of i2c controller the LED is connected
> > > > > to.
> > > >
> > > > Why does userspace want to know it?
> > >
> > > For example to turn off backlight on internal keyboard when the lid is closed.
> >
> > Would you not want to turn off external as well?
>
> Not really. If I'm using machine with lid closed, external monitor and
> USB keyboard attached, I want to control backlight of USB keyboard,
> but backlight of internal keyboard can stay off.
>
> > And what to do if internal keyboard is not platform but USB? Like
> > Google "Whiskers"? (I am not sure why you decided to drop my mention
> > of internal USB keyboards completely off your reply).
>
> I don't have answers for everything. Even if you have USB keyboard, you'll
> likely still have backlight connected to embedded controller. If not,
> then maybe you have exception userland needs to know about.
>
> Still better than making everything an exception.

You do not need to make everything exception. You just need to look
beyond the name, and see how the device is connected. And then apply
your exceptions for "weird" devices.

>
> > > > > grep for platform::mic_mute .
> > > > >
> > > > > (And platform is even pretty good match for how the LED is connected
> > > > > in your case).
> > > >
> > > > Until we get a secondary interface that is also "platform"...
> > >
> > > How would that happen?
> >
> > It won't happen on Wilco, but you can't imagine that several blocks
> > get reused in the same device and they end up clashing?
>
> In the end, there will be just one internal keyboard backlight, right?

Â\_(ã)_/Â Maybe. Maybe not. Who knows what HW designers will come up with.

Thanks.

--
Dmitry