Bug 6886

Summary: HID: Consumer control audio device doesn't generate events
Product: Drivers Reporter: Luke Ross (luke)
Component: Input DevicesAssignee: drivers_input-devices
Status: RESOLVED PATCH_ALREADY_AVAILABLE    
Severity: low CC: greg
Priority: P2    
Hardware: i386   
OS: Linux   
Kernel Version: 2.6.10 Subsystem:
Regression: --- Bisected commit-id:
Bug Depends on:    
Bug Blocks: 5089    

Description Luke Ross 2006-07-22 18:44:11 UTC
Distribution: Fedora Core 3
Hardware Environment: VIA EPIA
Software Environment: Alsa 1.0.6
Problem Description:

Using a set of USB speakers with volume and mute control, the sound works correctly, but the buttons on the unit do not work.

cat /proc/bus/usb/devices:

T:  Bus=02 Lev=01 Prnt=01 Port=01 Cnt=02 Dev#=  3 Spd=12  MxCh= 0
D:  Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs=  1
P:  Vendor=0e6a ProdID=0310 Rev= 1.11
S:  Product=USB Audio Device
C:* #Ifs= 3 Cfg#= 1 Atr=80 MxPwr=500mA
I:  If#= 0 Alt= 0 #EPs= 1 Cls=03(HID  ) Sub=00 Prot=00 Driver=usbhid
E:  Ad=81(I) Atr=03(Int.) MxPS=   1 Ivl=16ms
I:  If#= 1 Alt= 0 #EPs= 0 Cls=01(audio) Sub=01 Prot=00 Driver=snd-usb-audio
I:  If#= 2 Alt= 0 #EPs= 0 Cls=01(audio) Sub=02 Prot=00 Driver=snd-usb-audio
I:  If#= 2 Alt= 1 #EPs= 1 Cls=01(audio) Sub=02 Prot=00 Driver=snd-usb-audio
E:  Ad=02(O) Atr=09(Isoc) MxPS= 192 Ivl=1ms

The interface is correctly assigned to usbhid, and mapped to an event device:

cat /proc/bus/input/devices
I: Bus=0003 Vendor=0e6a Product=0310 Version=0111
N: Name="USB Audio Device"
P: Phys=usb-0000:00:10.0-2/input0
H: Handlers=kbd event2 
B: EV=10000b 
B: KEY=e0000 0 0 0 
B: ABS=100 0 

However, cat /dev/input/event2 gives no output on pressing any of the USB device buttons, and neither does showkey -s nor xev recognise the button presses.

Possible related: The following message appears once in dmesg, it seems before any keys are pressed after plugging the device in:

drivers/usb/input/hid-input.c: event field not found
Comment 1 Luke Ross 2008-02-24 15:17:58 UTC
The same speakers work fine under recent (2.6.20+) kernels, so marking as resolved.