[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <200805162300.06027.bonbons@linux-vserver.org>
Date: Fri, 16 May 2008 23:00:04 +0200
From: Bruno Prémont <bonbons@...ux-vserver.org>
To: Dmitry Torokhov <dmitry.torokhov@...il.com>
Cc: Linux Input <linux-input@...r.kernel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
"R. J. Wysocki" <Rafal.Wysocki@....edu.pl>
Subject: Re: Input+S3: extra keycodes forgotten after suspend
Hi Dmitry,
On Friday 16 May 2008 22:38:07 Dmitry Torokhov wrote:
> Hi Bruno,
>
> On Fri, May 16, 2008 at 10:25:43PM +0200, Bruno Pr?mont wrote:
> > On my Acer TravelMate 660 I lose keycodes for the extra keys (dritek
> > extensions) after resume.
> >
> > The system runs setkeycodes during boot sequence to initialize key codes
> > for the extra keys as below:
> >
> > /usr/bin/setkeycodes KEYCODES="e025 138 e026 141 e027 171 e074 148 e073 149 e055 229 e056 230 e057 227 e058 228"
> > # Fn + F1 ~ e025 => 138 [KEY_HELP] (Help)
> > # Fn + F2 ~ e026 => 141 [KEY_SETUP] (Notebook Manager)
> > # Fn + F3 ~ e027 => 171 [KEY_CONFIG] (Power Options)
> > # Mail ~ e06c => 155 [KEY_MAIL] (EMail)
> > # WWW ~ e032 => 150 [KEY_WWW] (Browser)
> > # P1 ~ e074 => 148 [KEY_PROG1] (P1)
> > # P2 ~ e073 => 149 [KEY_PROG2] (P2)
> > # Bluetooth ~ e058 => 228 [KEY_BLUETOOTH_DISABLE] (Disable Bluetooth)
> > # Bluetooth ~ e057 => 227 [KEY_BLUETOOTH_ENABLE] (Enable Bluetooth)
> > # Wireless ~ e056 => 230 [KEY_WLAN_DISABLE] (Disable WLAN)
> > # Wireless ~ e055 => 229 [KEY_WLAN_ENABLE] (Enable WLAN)
> > # Vol UP ~ e030 => 115 [KEY_VOLUMEUP] (Increase Volume)
> > # Vol DOWN ~ e02e => 114 [KEY_VOLUMEDOWN] (Decrease Volume)
> > # Vol Mute ~ e020 => 113 [KEY_MUTE] (Mute volume)
> >
> > After resume I end up with the following messages when pressing the keys:
> > [ 779.695675] atkbd.c: Unknown key pressed (translated set 2, code 0xd6 on isa0060/serio0).
> > [ 779.695675] atkbd.c: Use 'setkeycodes e056 <keycode>' to make it known.
> > [ 779.705218] atkbd.c: Unknown key released (translated set 2, code 0xd6 on isa0060/serio0).
> > [ 779.705218] atkbd.c: Use 'setkeycodes e056 <keycode>' to make it known.
> > [ 781.603912] atkbd.c: Unknown key pressed (translated set 2, code 0xd5 on isa0060/serio0).
> > [ 781.603912] atkbd.c: Use 'setkeycodes e055 <keycode>' to make it known.
> > [ 781.613564] atkbd.c: Unknown key released (translated set 2, code 0xd5 on isa0060/serio0).
> > [ 781.613564] atkbd.c: Use 'setkeycodes e055 <keycode>' to make it known.
> > [ 782.772662] atkbd.c: Unknown key pressed (translated set 2, code 0xd7 on isa0060/serio0).
> > [ 782.772662] atkbd.c: Use 'setkeycodes e057 <keycode>' to make it known.
> > [ 782.782390] atkbd.c: Unknown key released (translated set 2, code 0xd7 on isa0060/serio0).
> > [ 782.782390] atkbd.c: Use 'setkeycodes e057 <keycode>' to make it known.
> > [ 783.461807] atkbd.c: Unknown key pressed (translated set 2, code 0xd8 on isa0060/serio0).
> > [ 783.461807] atkbd.c: Use 'setkeycodes e058 <keycode>' to make it known.
> > [ 783.471544] atkbd.c: Unknown key released (translated set 2, code 0xd8 on isa0060/serio0).
> > [ 783.471544] atkbd.c: Use 'setkeycodes e058 <keycode>' to make it known.
> >
> >
> > Is this kind of issue known, what are the options to get kernel to
> > remember the keycode mappings after s2ram?
>
> Do you unload atkbd or perhaps i8042 for s2ram? Or do you see that
> keyboard is detected again (in dmesg) after resume?
I don't see anything in the logs that would allow to assume this.
Most is built right into the kernel.
Modules that were loaded for suspend/resume process (USB unloaded
before trying to suspend, alsa also stopped):
Module Size Used by
pcspkr 2176 0
sunrpc 159996 17 nfs,lockd,nfs_acl
8021q 17096 0
xfs 498804 4
nsc_ircc 14480 0
irda 102584 1 nsc_ircc
crc_ccitt 1792 1 irda
b44 22224 0
ssb 25796 1 b44
i2c_i801 8592 0
evdev 8448 1
usbcore 123952 1
Modules I loaded back later after resume:
nfs 123180 4
lockd 59208 2 nfs
nfs_acl 2688 1 nfs
squashfs 38408 1
zlib_inflate 14720 1 squashfs
loop 12932 8
snd_pcm_oss 33888 0
snd_mixer_oss 13376 1 snd_pcm_oss
snd_intel8x0 27932 3
snd_ac97_codec 95268 1 snd_intel8x0
ac97_bus 1536 1 snd_ac97_codec
snd_pcm 56712 4 snd_pcm_oss,snd_intel8x0,snd_ac97_codec
snd_timer 18052 2 snd_pcm
snd 42980 10 snd_pcm_oss,snd_mixer_oss,snd_intel8x0,snd_ac97_codec,snd_pcm,snd_timer
snd_page_alloc 7560 2 snd_intel8x0,snd_pcm
Note: the kernel is patched with the two patches I've just sent regarding
dritek quirk (needed to get any response to they key presses)
Note: suspend/resume is not very stable on this laptop as visible in
attached dmesg output)
Bruno
View attachment "suspend.dmesg" of type "text/plain" (43141 bytes)
Powered by blists - more mailing lists