Bug 7070

Summary: xpad driver doesn't support DDR pads
Product: Drivers Reporter: Adam Buchbinder (adam.buchbinder)
Component: USBAssignee: Greg Kroah-Hartman (greg)
Status: RESOLVED CODE_FIX    
Severity: normal CC: bunk
Priority: P2    
Hardware: i386   
OS: Linux   
Kernel Version: 2.6.16 Subsystem:
Regression: --- Bisected commit-id:
Bug Depends on:    
Bug Blocks: 5089    

Description Adam Buchbinder 2006-08-29 08:46:34 UTC
Most recent kernel where this bug did not occur: None
Distribution: Ubuntu
Hardware Environment: Any xbox-type DDR pad.
Software Environment: Use jstest to test functionality.
Problem Description: The dance pads I'm using require that the up and down, or
left and right buttons be hit simultaneously. If the directional buttons are
interpreted as axes, this is impossible. To fix, USB IDs for dance pads should
trigger different behavior; also, it should be possible to pass an option to the
driver to force DDR-type behavior (axes mapped to buttons), as well.

There have been patches available for this behavior, but they are out of date.
The following is a patch for 2.6.11.4 that implements the above-described
behavior for a slightly earlier API.

http://einsteinsbreakfast.com/demos/xpad-mappings.diff
Comment 1 Greg Kroah-Hartman 2006-08-29 14:58:09 UTC
Care to forward port that patch, and/or get the original author of it to 
do so and send the linux-usb-developers?  It needs to be in the form
specified in Documentation/SubmittingPatches.
Comment 2 Adam Buchbinder 2006-10-26 00:14:15 UTC
The patch was signed off, in modified form, by Dmitry Torokhov, Andrew Morton
and Greg Kroah-Hartman and reposted to the LKML. It's in the mainline kernel now:

http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=deb8ee43a23d48116cb23eb8dd1de2348efb1e80