Re: [PATCH v2 2/4] toshiba_acpi: Support alternate hotkey interfaces

From: Seth Forshee
Date: Thu Jan 05 2012 - 14:43:49 EST


On Thu, Jan 05, 2012 at 06:25:22PM +0000, Matthew Garrett wrote:
> On Tue, Jan 03, 2012 at 01:02:36PM -0600, Seth Forshee wrote:
> > There are two types of problems that prevent hotkeys from working
> > on many of the machines supported by toshiba_acpi. The first of
> > these is the lack of a functioning SCI for hotkey events. For these
> > machines it is possible to filter the Fn keypresses from the
> > keyboard and generate a notification by executing the ACPI NTFY
> > method.
> >
> > The second problem is a lack of support for HCI_SYSTEM_EVENT, which
> > is used for reading the hotkey scancodes. On these machines the
> > scancodes can be read by executing the ACPI NTFY method.
> >
> > This patch fixes both problems by installing an i8042 filter when
> > the NTFY method is present to generate notifications and by
> > detecting which of INFO or HCI_SYSTEM_EVENT is supported for
> > reading scancodes. If neither method of reading scancodes is
> > supported, the hotkey input device is not registered.
> >
> > Signed-off-by: Azael Avalos <coproscefalo@xxxxxxxxx>
> > Signed-off-by: Seth Forshee <seth.forshee@xxxxxxxxxxxxx>
>
> It's still an awful way to implement things, but it doesn't seem like
> there's any alternative, so sure.

I agree. If there's an alternative I couldn't find it, and not for a
lack of trying.

> > + error = i8042_install_filter(toshiba_acpi_i8042_filter);
>
> If this is only needed for TOS1900 machines then I think I'd prefer to
> see it only done on them. Just add a flag to the data field of the IDs
> and check that.

I checked all the Toshiba DSDTs I have, and every machine with NTFY is a
TOS1900 machine, but only a subset of the TOS1900 machines have NTFY. So
I think we need to still limit it to only machines with NTFY. I can add
an additional check for TOS1900 if that's what you want.

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