joystick.rst 3.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. =======================================
  2. Analog Joystick Support on ALSA Drivers
  3. =======================================
  4. Oct. 14, 2003
  5. Takashi Iwai <[email protected]>
  6. General
  7. -------
  8. First of all, you need to enable GAMEPORT support on Linux kernel for
  9. using a joystick with the ALSA driver. For the details of gameport
  10. support, refer to Documentation/input/joydev/joystick.rst.
  11. The joystick support of ALSA drivers is different between ISA and PCI
  12. cards. In the case of ISA (PnP) cards, it's usually handled by the
  13. independent module (ns558). Meanwhile, the ALSA PCI drivers have the
  14. built-in gameport support. Hence, when the ALSA PCI driver is built
  15. in the kernel, CONFIG_GAMEPORT must be 'y', too. Otherwise, the
  16. gameport support on that card will be (silently) disabled.
  17. Some adapter modules probe the physical connection of the device at
  18. the load time. It'd be safer to plug in the joystick device before
  19. loading the module.
  20. PCI Cards
  21. ---------
  22. For PCI cards, the joystick is enabled when the appropriate module
  23. option is specified. Some drivers don't need options, and the
  24. joystick support is always enabled. In the former ALSA version, there
  25. was a dynamic control API for the joystick activation. It was
  26. changed, however, to the static module options because of the system
  27. stability and the resource management.
  28. The following PCI drivers support the joystick natively.
  29. ============== ============= ============================================
  30. Driver Module Option Available Values
  31. ============== ============= ============================================
  32. als4000 joystick_port 0 = disable (default), 1 = auto-detect,
  33. manual: any address (e.g. 0x200)
  34. au88x0 N/A N/A
  35. azf3328 joystick 0 = disable, 1 = enable, -1 = auto (default)
  36. ens1370 joystick 0 = disable (default), 1 = enable
  37. ens1371 joystick_port 0 = disable (default), 1 = auto-detect,
  38. manual: 0x200, 0x208, 0x210, 0x218
  39. cmipci joystick_port 0 = disable (default), 1 = auto-detect,
  40. manual: any address (e.g. 0x200)
  41. cs4281 N/A N/A
  42. cs46xx N/A N/A
  43. es1938 N/A N/A
  44. es1968 joystick 0 = disable (default), 1 = enable
  45. sonicvibes N/A N/A
  46. trident N/A N/A
  47. via82xx [#f1]_ joystick 0 = disable (default), 1 = enable
  48. ymfpci joystick_port 0 = disable (default), 1 = auto-detect,
  49. manual: 0x201, 0x202, 0x204, 0x205 [#f2]_
  50. ============== ============= ============================================
  51. .. [#f1] VIA686A/B only
  52. .. [#f2] With YMF744/754 chips, the port address can be chosen arbitrarily
  53. The following drivers don't support gameport natively, but there are
  54. additional modules. Load the corresponding module to add the gameport
  55. support.
  56. ======= =================
  57. Driver Additional Module
  58. ======= =================
  59. emu10k1 emu10k1-gp
  60. fm801 fm801-gp
  61. ======= =================
  62. Note: the "pcigame" and "cs461x" modules are for the OSS drivers only.
  63. These ALSA drivers (cs46xx, trident and au88x0) have the
  64. built-in gameport support.
  65. As mentioned above, ALSA PCI drivers have the built-in gameport
  66. support, so you don't have to load ns558 module. Just load "joydev"
  67. and the appropriate adapter module (e.g. "analog").
  68. ISA Cards
  69. ---------
  70. ALSA ISA drivers don't have the built-in gameport support.
  71. Instead, you need to load "ns558" module in addition to "joydev" and
  72. the adapter module (e.g. "analog").