Re: [PATCH] Map volume and brightness events on thinkpads

From: Jeremy Katz
Date: Tue Oct 16 2007 - 16:15:28 EST


On Tue, 2007-10-16 at 16:12 -0400, Dmitry Torokhov wrote:
> On 10/16/07, Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> wrote:
> > On Tue, 16 Oct 2007, Matthew Garrett wrote:
> > > >
> > > > It still doesn't mean it belongs inside the stream of data for the keyboard,
> > > > maskerading as a key press.
> > >
> > > But it *is* a key press!
> >
> > To get somewhat back on track: volume and brightness (and similar - lid
> > close etc) events clearly are keypresses.
> >
> > However, I would also argue that a keypress that is acted on by the
> > firmware automatically is *different* from a keypress that hasn't been
> > acted on: one is a "key was pressed *and* hardware did something
> > automatically", and the other is just a "key was pressed" event.
> >
> > IOW, I think the thinkpad issue (and others like it) should be fixed by
> > splitting up the KEY_VOLUMEUP "key" into separate KEY_VOLUMEUP and
> > KEY_VOLUMEUP_NOTIFY key events, so that downstream user mode (and the
> > kernel itself, for that matter) can know whether it's a informational
> > message or whether it should be acted upon.
>
> I agree that these are 2 different events. My argument is that
> "VOLUME_UP_NOTIFY" event is similar to "BATTERY_OUT_NOTIFY",
> "DOCK_UNDOCK_NOTIFY", etc, etc and should be sent not through input
> layer but through a generic (yet to be designed) notification
> mechanism. Something lighter than input. Something like uevents over
> netlink.

Except that I'm _always_ going to have to be able to take these events
as input events (because of the hardware that sends them that way), so
why not just have everything be an input event?

The alternative is building up something new from the ground-up and then
having to do translation from input to the new event type (either in the
kernel or in userspace) which ends up meaning more work for little, if
any, gain

Jeremy

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/