1b08c118cSDmitry TorokhovCrystal SoundFusion CS4610/CS4612/CS461 joystick 2b08c118cSDmitry Torokhov================================================ 3b08c118cSDmitry Torokhov 4b08c118cSDmitry TorokhovThis is a new low-level driver to support analog joystick attached to 5b08c118cSDmitry TorokhovCrystal SoundFusion CS4610/CS4612/CS4615. This code is based upon 6b08c118cSDmitry TorokhovVortex/Solo drivers as an example of decoration style, and ALSA 7b08c118cSDmitry Torokhov0.5.8a kernel drivers as an chipset documentation and samples. 8b08c118cSDmitry Torokhov 9b08c118cSDmitry TorokhovThis version does not have cooked mode support; the basic code 10b08c118cSDmitry Torokhovis present here, but have not tested completely. The button analysis 11b08c118cSDmitry Torokhovis completed in this mode, but the axis movement is not. 12b08c118cSDmitry Torokhov 13b08c118cSDmitry TorokhovRaw mode works fine with analog joystick front-end driver and cs461x 14b08c118cSDmitry Torokhovdriver as a backend. I've tested this driver with CS4610, 4-axis and 15b08c118cSDmitry Torokhov4-button joystick; I mean the jstest utility. Also I've tried to 16b08c118cSDmitry Torokhovplay in xracer game using joystick, and the result is better than 17b08c118cSDmitry Torokhovkeyboard only mode. 18b08c118cSDmitry Torokhov 19b08c118cSDmitry TorokhovThe sensitivity and calibrate quality have not been tested; the two 20b08c118cSDmitry Torokhovreasons are performed: the same hardware cannot work under Win95 (blue 21b08c118cSDmitry Torokhovscreen in VJOYD); I have no documentation on my chip; and the existing 22b08c118cSDmitry Torokhovbehavior in my case was not raised the requirement of joystick calibration. 23b08c118cSDmitry TorokhovSo the driver have no code to perform hardware related calibration. 24b08c118cSDmitry Torokhov 25b08c118cSDmitry TorokhovThis driver have the basic support for PCI devices only; there is no 26b08c118cSDmitry TorokhovISA or PnP ISA cards supported. 27b08c118cSDmitry Torokhov 28b08c118cSDmitry TorokhovThe driver works with ALSA drivers simultaneously. For example, the xracer 29b08c118cSDmitry Torokhovuses joystick as input device and PCM device as sound output in one time. 30b08c118cSDmitry TorokhovThere are no sound or input collisions detected. The source code have 31b08c118cSDmitry Torokhovcomments about them; but I've found the joystick can be initialized 32b08c118cSDmitry Torokhovseparately of ALSA modules. So, you can use only one joystick driver 33b08c118cSDmitry Torokhovwithout ALSA drivers. The ALSA drivers are not needed to compile or 34b08c118cSDmitry Torokhovrun this driver. 35b08c118cSDmitry Torokhov 36b08c118cSDmitry TorokhovThere are no debug information print have been placed in source, and no 37b08c118cSDmitry Torokhovspecific options required to work this driver. The found chipset parameters 38b08c118cSDmitry Torokhovare printed via printk(KERN_INFO "..."), see the /var/log/messages to 39b08c118cSDmitry Torokhovinspect cs461x: prefixed messages to determine possible card detection 40b08c118cSDmitry Torokhoverrors. 41b08c118cSDmitry Torokhov 42b08c118cSDmitry TorokhovRegards, 43b08c118cSDmitry TorokhovViktor 44