From: David Woodhouse <dwmw2@infradead.org>
To: Corentin Chary <corentin.chary@gmail.com>
Cc: mjg59@srcf.ucam.org, platform-driver-x86@vger.kernel.org
Subject: Re: [PATCH] Lenovo IdeaPAD ACPI driver
Date: Thu, 12 Aug 2010 13:24:46 +0100 [thread overview]
Message-ID: <1281615886.12475.92.camel@localhost> (raw)
In-Reply-To: <AANLkTikC3_YgMabbDeJnFi66VvQQHp1CcyKgFUT_ji7h@mail.gmail.com>
On Thu, 2010-08-12 at 13:49 +0200, Corentin Chary wrote:
> On Thu, Aug 12, 2010 at 11:42 AM, David Woodhouse <dwmw2@infradead.org> wrote:
> > On Wed, 2010-08-11 at 15:51 +0200, Corentin Chary wrote:
> >> And you should probably make it a platform driver (being the parent of
> >> acpi, wmi, input, backlight, rfkill, etc..).
> >>
> >> Is there a lot of thing hidden in ACPI / WMI on these models (like
> >> hotkeys, backlight, light sensors) ?
> >
> > I hooked up something (below) to dump the AE or IO WMI blocks each time
> > we get a notification on the VPC2004 device. Although the notification
> > happens when we press a key, nothing ever changes in either of them.
>
> They is probably something interesting in the u32 event var.
It's always 0x80.
> To get wmi events, you need to use wmi_install_notify_handler.
I didn't bother hooking that up -- according to the discussion back in
April, the WMI is never triggered.
http://www.mail-archive.com/platform-driver-x86@vger.kernel.org/msg00034.html
> For example, the hardware rfkill state may change due to some keypress,
> and an event may be sent via acpi or wmi, but if you don't catch it, the rfkill
> class won't be updated.
The notify gets called then too, and we resync the rfkill state.
> Could you send the output of acpidump ?
Attached to http://bugs.meego.com/show_bug.cgi?id=4086 --
http://bugs.meego.com/attachment.cgi?id=1860
It's much the same as what you were looking at before on the S10-3t, as
far as I can tell.
> > I *did* notice that we're actually getting proper keycodes for the
> > hotkeys though, so for now I've lost what little interest I already had
> > in doing anything with WMI. If anyone (Florian?) wants to do more, I'd
> > be happy to do some testing.
>
> keycodes are sent from the keyboard input device for all specials keys
> ? (especially Fn+Fx keys) ?
All but the external display hotkey.
The brightness up/down (Fn-up, Fn-down) don't do anything but they do
report:
[10608.863641] atkbd.c: Unknown key pressed (translated set 2, code 0xb9 on isa0060/serio0).
[10608.863655] atkbd.c: Use 'setkeycodes e039 <keycode>' to make it known.
[10609.002143] atkbd.c: Unknown key released (translated set 2, code 0xb9 on isa0060/serio0).
[10609.002157] atkbd.c: Use 'setkeycodes e039 <keycode>' to make it known.
[10609.225721] atkbd.c: Unknown key pressed (translated set 2, code 0xba on isa0060/serio0).
[10609.225735] atkbd.c: Use 'setkeycodes e03a <keycode>' to make it known.
[10609.332264] atkbd.c: Unknown key released (translated set 2, code 0xba on isa0060/serio0).
[10609.332278] atkbd.c: Use 'setkeycodes e03a <keycode>' to make it known.
The camera enable/disable (Fn-Esc) toggles the camera power (which is
also readable/writable through sysfs with my driver) and also reports:
[10633.222832] atkbd.c: Unknown key pressed (translated set 2, code 0xf1 on isa0060/serio0).
[10633.222846] atkbd.c: Use 'setkeycodes e071 <keycode>' to make it known.
[10633.329105] atkbd.c: Unknown key released (translated set 2, code 0xf1 on isa0060/serio0).
[10633.329119] atkbd.c: Use 'setkeycodes e071 <keycode>' to make it known.
[10633.451208] usb 1-8: USB disconnect, address 5
The sleep button (Fn-F1) just puts it to sleep; that'll be reported
through a separate ACPI event. I haven't investigated but I assume
that's working correctly.
The 'display off' button (Fn-F2) works and:
[10788.130877] atkbd.c: Unknown key pressed (translated set 2, code 0x83 on isa0060/serio0).
[10788.130891] atkbd.c: Use 'setkeycodes e003 <keycode>' to make it known.
[10788.269195] atkbd.c: Unknown key released (translated set 2, code 0x83 on isa0060/serio0).
[10788.269209] atkbd.c: Use 'setkeycodes e003 <keycode>' to make it known.
What I assume is the external display key (Fn-F3) seems to do nothing,
whether I have an external display connected or not. If I connect an
external display (even if it's powered off), X switches over to it
automatically. That's probably just X under MeeGo doing that though.
Fn-F4 has no special marking
The rfkill hotkey (Fn-F5) which under Windows just brings up the Lenovo
GUI tool, does nothing except:
[10835.095618] atkbd.c: Unknown key pressed (translated set 2, code 0x81 on isa0060/serio0).
[10835.095631] atkbd.c: Use 'setkeycodes e001 <keycode>' to make it known.
[10835.233979] atkbd.c: Unknown key released (translated set 2, code 0x81 on isa0060/serio0).
[10835.233994] atkbd.c: Use 'setkeycodes e001 <keycode>' to make it known.
What looks like a 'trackpad kill' (Fn-F6) just does:
[10910.931021] atkbd.c: Unknown key pressed (translated set 2, code 0xf2 on isa0060/serio0).
[10910.931036] atkbd.c: Use 'setkeycodes e072 <keycode>' to make it known.
[10911.048135] atkbd.c: Unknown key released (translated set 2, code 0xf2 on isa0060/serio0).
[10911.048148] atkbd.c: Use 'setkeycodes e072 <keycode>' to make it known.
The multimedia keys on Fn-F{7,8,9,10} seems to be generating 'known'
keycodes which don't cause a complaint, although they don't seem to show
up as anything useful in 'xev'.
[11135.784840] drivers/input/serio/i8042.c: e0 <- i8042 (interrupt, 0, 1) [11135374]
[11135.789916] drivers/input/serio/i8042.c: 22 <- i8042 (interrupt, 0, 1) [11135379]
[11135.901911] drivers/input/serio/i8042.c: e0 <- i8042 (interrupt, 0, 1) [11135491]
[11135.907035] drivers/input/serio/i8042.c: a2 <- i8042 (interrupt, 0, 1) [11135497]
[11135.949906] drivers/input/serio/i8042.c: e0 <- i8042 (interrupt, 0, 1) [11135539]
[11135.954976] drivers/input/serio/i8042.c: 24 <- i8042 (interrupt, 0, 1) [11135544]
[11136.125383] drivers/input/serio/i8042.c: e0 <- i8042 (interrupt, 0, 1) [11135715]
[11136.130516] drivers/input/serio/i8042.c: a4 <- i8042 (interrupt, 0, 1) [11135720]
[11136.395678] drivers/input/serio/i8042.c: e0 <- i8042 (interrupt, 0, 1) [11135985]
[11136.400910] drivers/input/serio/i8042.c: 10 <- i8042 (interrupt, 0, 1) [11135990]
[11136.523555] drivers/input/serio/i8042.c: e0 <- i8042 (interrupt, 0, 1) [11136113]
[11136.528676] drivers/input/serio/i8042.c: 90 <- i8042 (interrupt, 0, 1) [11136118]
[11136.864389] drivers/input/serio/i8042.c: e0 <- i8042 (interrupt, 0, 1) [11136454]
[11136.869477] drivers/input/serio/i8042.c: 19 <- i8042 (interrupt, 0, 1) [11136459]
[11136.944201] drivers/input/serio/i8042.c: e0 <- i8042 (interrupt, 0, 1) [11136534]
[11136.949322] drivers/input/serio/i8042.c: 99 <- i8042 (interrupt, 0, 1) [11136539]
If I press and hold the Fn key, after a while I get a stream of
[11231.859281] drivers/input/serio/i8042.c: e0 <- i8042 (interrupt, 0, 1) [11231449]
[11231.864363] drivers/input/serio/i8042.c: 63 <- i8042 (interrupt, 0, 1) [11231454]
--
David Woodhouse Open Source Technology Centre
David.Woodhouse@intel.com Intel Corporation
prev parent reply other threads:[~2010-08-12 12:24 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-08-10 22:52 [PATCH] Lenovo IdeaPAD ACPI driver David Woodhouse
2010-08-11 12:59 ` Corentin Chary
2010-08-11 13:39 ` David Woodhouse
2010-08-11 13:51 ` Corentin Chary
2010-08-11 13:55 ` David Woodhouse
2010-08-12 9:42 ` David Woodhouse
2010-08-12 11:49 ` Corentin Chary
2010-08-12 12:24 ` David Woodhouse [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1281615886.12475.92.camel@localhost \
--to=dwmw2@infradead.org \
--cc=corentin.chary@gmail.com \
--cc=mjg59@srcf.ucam.org \
--cc=platform-driver-x86@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox