dell_wmi: Unknown key eXXX pressed

Bug #815914 reported by Jean-Louis Dupond
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Linux
Fix Released
Medium
linux (Ubuntu)
Fix Released
Low
Seth Forshee
Oneiric
Fix Released
Low
Seth Forshee

Bug Description

I got a new Dell XPS 15 laptop (L502X).

Now when i'm changing the volume with the hotkeys, dmesg throws me the
following errors:

[16971.294903] dell_wmi: Unknown key e0f8 pressed
[16985.978025] dell_wmi: Unknown key e0f7 pressed
[16986.731775] dell_wmi: Unknown key e0f9 pressed

The keys actually work, but the WMI doesn't seem to be supported yet.
Is there any chance to fix this?

If you need additional information, feel free to ask!

CVE References

Revision history for this message
Seth Forshee (sforshee) wrote :

Jean-Louis: Please run 'apport-collect 815914' from a terminal to attach the relevant information to this bug report.

I'd also suggest running the steps in https://wiki.ubuntu.com/Hotkeys/Troubleshooting to see whether or not the appropriate key events are being reported. Obviously something is happening. If the key events are getting reported via another event or on another input device then the messages can be safely ignored.

Changed in linux (Ubuntu):
assignee: nobody → Seth Forshee (sforshee)
importance: Undecided → Low
status: New → Incomplete
Changed in linux:
importance: Unknown → Medium
status: Unknown → Confirmed
Revision history for this message
Jean-Louis Dupond (dupondje) wrote :

The keys are indeed working fine, tho the kernel shouldn't give a warning?
Not very critical neither :)

keycode 123 = (keysym 0x1008ff13, XF86AudioRaiseVolume), state = 0x0
keycode 123 = (keysym 0x1008ff13, XF86AudioRaiseVolume), state = 0x0
keycode 122 = (keysym 0x1008ff11, XF86AudioLowerVolume), state = 0x0
keycode 122 = (keysym 0x1008ff11, XF86AudioLowerVolume), state = 0x0
keycode 171 = (keysym 0x1008ff17, XF86AudioNext), state = 0x0
keycode 171 = (keysym 0x1008ff17, XF86AudioNext), state = 0x0
keycode 172 = (keysym 0x1008ff14, XF86AudioPlay), state = 0x0
keycode 172 = (keysym 0x1008ff14, XF86AudioPlay), state = 0x0

Changed in linux (Ubuntu):
status: Incomplete → New
Revision history for this message
Seth Forshee (sforshee) wrote :

Can you do the following to check what input device the key events are coming in on?

First install the input-utils package. Run 'sudo lsinput' to list the input devices on your system and look for one named "Dell WMI hotkeys" and another named ""AT Translated Set 2 keyboard", noting the device node for each. Then run "sudo /lib/udev/keymap -i input/event<n>" for each, where <n> corresponds to the devices output by lsinput. While keymap is running press the hotkeys and see which device is emitting the key events for the volume buttons and report that here.

Please also attach the output from running 'sudo dmidecode'. You may have to install the dmidecode package first.

Changed in linux (Ubuntu):
status: New → Incomplete
Revision history for this message
Jean-Louis Dupond (dupondje) wrote :

/dev/input/event4
   bustype : BUS_I8042
   vendor : 0x1
   product : 0x1
   version : 43841
   name : "AT Translated Set 2 keyboard"
   phys : "isa0060/serio0/input0"
   bits ev : EV_SYN EV_KEY EV_MSC EV_LED EV_REP

scan code: 0xAE key code: volumedown
scan code: 0xB0 key code: volumeup
scan code: 0xA0 key code: mute

/dev/input/event6
   bustype : BUS_HOST
   vendor : 0x0
   product : 0x0
   version : 0
   name : "Dell WMI hotkeys"
   phys : "wmi/input0"
   bits ev : EV_SYN EV_KEY EV_MSC

Gives me nothing.

Changed in linux (Ubuntu):
status: Incomplete → New
Revision history for this message
Seth Forshee (sforshee) wrote :

How odd that they'd choose to report these keypresses in two different places.

I'm somewhat inclined to just leave this alone since I don't know how the upper levels will react to multiple events for one keypress (you might see your volume changing by two steps every time you press a key). But if you'd like to test it I can provide a test build for you. First though I need you to check which scan codes dell_wmi is printing for each key, and I need you to ensure that it is consistently printing the same values every time a given key is pressed. After you have done that provide the scan code to hotkey mapping and I'll make the build.

Changed in linux (Ubuntu):
status: New → Incomplete
Revision history for this message
Jean-Louis Dupond (dupondje) wrote :

Caps Lock: dell_wmi: Unknown key 3a pressed
Volume Down: dell_wmi: Unknown key e0f8 pressed
Volume Up: dell_wmi: Unknown key e0f9 pressed
Mute: dell_wmi: Unknown key e0f7 pressed
Shortcut key (can be defined as wanted): dell_wmi: Unknown key e025 pressed
Audio Panel key (used to start Dell Audio Config in Windows): dell_wmi: Unknown key e026 pressed

Changed in linux (Ubuntu):
status: Incomplete → New
Revision history for this message
Seth Forshee (sforshee) wrote :

What I ended up doing is making dell-wmi ignore those events. That way only one key event gets reported, but you should no longer see the messages. The build is available at:

http://people.canonical.com/~sforshee/lp815914/linux-2.6.38-11.47~lp815914v201107262123/

Revision history for this message
Jean-Louis Dupond (dupondje) wrote :

This seems to work just fine!
Thanks for that patch.

Maby its cool to get that in upstream?

Thanks for all the work on this!

Tim Gardner (timg-tpi)
Changed in linux (Ubuntu Oneiric):
status: New → Fix Committed
Changed in linux:
status: Confirmed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package linux - 3.0.0-8.11

---------------
linux (3.0.0-8.11) oneiric; urgency=low

  [ Andy Whitcroft ]

  * [Config] Enable CONFIG_MACVTAP=m
    - LP: #822601

  [ Colin Watson ]

  * Deliver more Atheros, Ralink, and iwlagn NIC drivers to d-i

  [ Stefan Bader ]

  * (config) Package macvlan and macvtap for virtual

  [ Tim Gardner ]

  * [Config] Clean up tools rules
  * [Config] Package x86_energy_perf_policy and turbostat
    - LP: #797556

  [ Upstream Kernel Changes ]

  * dell-wmi: Add keys for Dell XPS L502X
    - LP: #815914
  * hfsplus: ensure bio requests are not smaller than the hardware sectors
    - LP: #734883
  * Ecryptfs: Add mount option to check uid of device being mounted =
    expect uid
    - LP: #732628
    - CVE-2011-1833
  * ideapad: define cfg bits and create sysfs node for cfg
  * ideapad: let camera_power node invisiable if no camera
  * ideapad: add backlight driver
  * ideapad: add missing ideapad_input_exit in ideapad_acpi_add error path
  * eCryptfs: Fix payload_len unitialized variable warning
  * eCryptfs: fix compile error
  * eCryptfs: Return error when lower file pointer is NULL
  * mac80211: be more careful in suspend/resume
    - LP: #811214
 -- Leann Ogasawara <email address hidden> Mon, 08 Aug 2011 06:23:16 -0700

Changed in linux (Ubuntu Oneiric):
status: Fix Committed → Fix Released
Revision history for this message
Pali (pali) wrote :

Old bug, I would like to ask:

Does linux report key press to userspace (scan code via "AT Translated Set 2 keyboard") when "Shortcut key" or "Audio Panel key" is pressed on Dell XPS 15 laptop (L502X)? Because now dell-wmi receive events for those two keys, but ignore/drop it.

Revision history for this message
Pali (pali) wrote :

In case somebody would debug this problem again, here is answer to my question from Jean-Louis back in 2015:

AT Translated Set 2 keyboard reports these events:

left button:

EV_MSC MSC_SCAN 219
EV_KEY KEY_LEFTMETA (0x7d) pressed
EV_SYN code=0 value=0
EV_MSC MSC_SCAN 45
EV_KEY KEY_X (0x2d) pressed
EV_SYN code=0 value=0
EV_MSC MSC_SCAN 45
EV_KEY KEY_X (0x2d) released
EV_SYN code=0 value=0
EV_MSC MSC_SCAN 219
EV_KEY KEY_LEFTMETA (0x7d) released
EV_SYN code=0 value=0

middle button:

EV_MSC MSC_SCAN 133
EV_KEY KEY_BRIGHTNESSDOWN (0xe0) pressed
EV_SYN code=0 value=0
EV_MSC MSC_SCAN 133
EV_KEY KEY_BRIGHTNESSDOWN (0xe0) released
EV_SYN code=0 value=0

right button:

EV_MSC MSC_SCAN 132
EV_KEY KEY_NEXTSONG (0xa3) pressed
EV_SYN code=0 value=0
EV_MSC MSC_SCAN 132
EV_KEY KEY_NEXTSONG (0xa3) released
EV_SYN code=0 value=0

So left button generates combination META+X, middle button is reported as brightness down and right button as next song.

So keys are reported via PS/2 keyboard and also by WMI. Dell WMI events are ignored by kernel to prevent duplication.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Bug attachments

Remote bug watches

Bug watches keep track of this bug in other bug trackers.