Hi, I've been maintaining an out-of-tree kernel module for the Xbox 360 "Big Button" controller for about 5 years, called xbox360bb. It is based on some code which was submitted to LKML in 2009, which was rejected for vague 'style reasons' at the time. I am hoping that I can get the driver to pass checks for eventual inclusion in the mainline kernel. The code is at: https://github.com/micolous/xbox360bb The device itself uses a protocol similar, yet distinct from the normal Xbox 360 controllers. It is not supported by Microsoft's own Xbox controller drivers for Windows. The device is a proprietary USB infrared receiver. There are four infrared controllers which are used with a single receiver. These use a subset of the traditional Xbox 360 controller buttons. The receiver cannot be used with any other type of infrared device. I have a couple of strategies I could pursue in merging this code, but I'm not sure which path to take: 1. Include it as an extra kernel module. This is good because it can live in "extra" for a while until it passes checks. 2. Attempt to merge the code changes into xpad.c. This is harder as it will require that the driver be rewritten. There is a bunch of code specific to this controller to handle persistent quadruplication of the device, debouncing and button releasing which may make it sufficiently quirky to live in it's own module. I would like some advice on how to proceed getting this upstream, and what style and best practices I may be ignorant to. I've already gone over it with checkpatch, which it is now happy with. Based on the volume of email inquiries I get and some other comments in Linux help forums, I think there is sufficient interest in making this more easily available in the mainline kernel. This is despite the fact that the hardware is no longer manufactured. Thanks, Michael _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel