Re: Using EV_MSC or extending KEY_*

From: Rick L. Vinyard, Jr.
Date: Wed Sep 16 2009 - 17:27:43 EST


Henrique de Moraes Holschuh wrote:
> On Tue, 15 Sep 2009, Rick L. Vinyard, Jr. wrote:
>> As I understand it the EV_MSC/MSC_SCAN is used to trigger a prompting of
>> the user to map a key, which would be useful for the G1-G22 keys and
>> perhaps 5 of the 10 special keys. But, that's not the behavior I want
>> for
>> the M1, M2, M3, MR and backlight keys.
>
> Why?
>
>> Somehow they need to be distinct from any existing KEY_* codes or not
>> have
>> a code at all... i.e. only emitting the raw misc events.
>
> Use KEY_RESERVED for them and in your driver, special case it to not
> output
> EV_KEY events for KEY_RESERVED, but still output the EV_MSC/MSC_SCAN.

That's how I ended up writing it.

> This allows userspace to reprogram them to normal keys (or even to
> KEY_UNKNOWN) if it wants.
>
>> Perhaps the BTN_MISC codes are better suited for these keys?
>
> That could work too, but are these generic buttons?

Yes. There is a bank of 6 buttons across the top (just beneath the LCD
display). Their purpose is application specific, but their physical
location provides an opportunity for UI's to use them in correlation with
the displayed LCD image... i.e. as an option selector, mode changer, etc.

The four M* keys are just beneath the bank of buttons.

---

Rick


--
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/