Re: [PATCH] eeepc-wmi: Add support for T101MT "Express Gate" key

From: Dmitry Torokhov
Date: Fri Mar 25 2011 - 12:05:31 EST


On Thu, Mar 24, 2011 at 08:27:41AM -0500, Chris Bagwell wrote:
> On Thu, Mar 24, 2011 at 8:14 AM, Seth Forshee
> <seth.forshee@xxxxxxxxxxxxx> wrote:
> > On Thu, Mar 24, 2011 at 08:33:33AM +0100, Corentin Chary wrote:
> >> On Wed, Mar 23, 2011 at 8:39 PM, Seth Forshee
> >> <seth.forshee@xxxxxxxxxxxxx> wrote:
> >> > Signed-off-by: Seth Forshee <seth.forshee@xxxxxxxxxxxxx>
> >> > ---
> >> >
> >> > This button is unusual. On press it emits scanocde 0xe4, on release
> >> > 0xe5, and when held for a few seconds it begins emitting 0xea about
> >> > twice per second. I chose to handle only the press event in order to
> >> > make it behave like the other hotkeys.
> >> >
> >> > Probably the closest thing to the intended function of this button
> >> > would be to alternate the display orientation between portrait and
> >> > landscape, but since there doesn't appear to be a keycode defined for
> >> > that function I went with KEY_PROG2. I'm open to other suggestions
> >> > however.
> >>
> >> Hi,
> >> The manual says that under Windows, this is the "Home Key", so
> >> KEY_HOME would be more appropriate.
> >
> > The manual does call it the Home Key (I missed previously that the
> > Express Gate description referred only to the quick boot mode), but the
> > description of the key operation reads:
> >
> >  Shortly press this key to launch the Touch Gate touch screen
> >  interface. Press and hold this key to preview desktop rotation, and
> >  then release the key to finish desktop rotation.
> >
> > Which doesn't really sound like a home key to me, and the icon above the
> > button also suggests display rotation. But then we don't seem to have a
> > code for that function, so KEY_PROG2 may be no better than KEY_HOME...
> >
> >> Also, it would be great to preserve key up and key down informations
> >> (sparse keymap have an "autorelease" parameter to control that).
> >
> > Okay, I'll add some special casing for this key to support that. Do you
> > suggest ignoring the 0xea scan codes?
> >
>
> I have one of these in the mail so I'm interested in outcome.
>
> I suggest implementing as manual describes and can be handled similar
> to brightness control logic.
>
> I would suggest sending BTN_HOME upon button release 0xe5 (not press
> 0xe4 and do the autorelease because of it) and BTN_PROG2 on
> press-and-hold 0xea.
>
> If you press-and-hold, does it still send the 0xe5 upon release? That
> could complicate things so that both button events do not get sent.

Not in the kernel. It is a single button and should generate single
event. Have userspace decipher that pressing it once causes application
launcher to appear, holding it longer causes screen rotation, and if you
still keep it pressed for 10 minutes fireworks will start.

>
> I'm not sure what BTN_HOME is commonly used for. This button does
> sound like a HOME button in iPad sense but not in web browser sense.
>

It is 'Home' key on your full AT keyboard, normally making cursor to
move to the very first column on the line.

Thanks.

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