Update of /cvsroot/alsa/alsa-kernel/Documentation
In directory sc8-pr-cvs1:/tmp/cvs-serv10067/Documentation

Modified Files:
        ALSA-Configuration.txt 
Added Files:
        Joystick.txt 
Log Message:
- removed joystick control from the card control API.
  added joystick (or joystick_port) module option instead.
- updated documents for this joystick fix.
- moved resource management for ALS4000 from sb-common header
  to the als4000 local code.


--- NEW FILE: Joystick.txt ---
Analog Joystick Support on ALSA Drivers
=======================================
                          Oct. 14, 2003
           Takashi Iwai <[EMAIL PROTECTED]>

General
-------

First of all, you need to enable GAMEPORT support on Linux kernel for
using a joystick with the ALSA driver.  For the details of gameport
support, refer to Documentation/input/joystick.txt.

The joystick support of ALSA drivers is different between ISA and PCI
cards.  In the case of ISA (PnP) cards, it's usually handled by the
independent module (ns558).  Meanwhile, the ALSA PCI drivers have the
built-in gameport support.  Hence, when the ALSA PCI driver is built
in the kernel, CONFIG_GAMEPORT must be 'y', too.  Otherwise, the
gameport support on that card will be (silently) disabled.

Some adapter modules probe the physical connection of the device at
the load time.  It'd be safer to plug in the joystick device before
loading the module.


PCI Cards
---------

For PCI cards, the joystick is enabled when the appropriate module
option is specified.  Some drivers don't need options, and the
joystick support is always enabled.  In the former ALSA version, there
was a dynamic control API for the joystick activation.  It was
changed, however, to the static module options because of the system
stability and the resource management.

The following PCI drivers support the joystick natively.

    Driver      Module Option   Available Values
    ---------------------------------------------------------------------------
    als4000     joystick_port   any address (e.g. 0x200), 0 = disable (default)
    au88x0      N/A             N/A
    azf3328     joystick        0 = disable, 1 = enable, -1 = auto (default)
    ens1370     joystick        0 = disable (default), 1 = enable
    ens1371     joystick_port   0 = disable (default), 0x200,0x208,0x210,0x218
    cmipci      joystick        0 = disable (default), 1 = enable
    cs4281      N/A             N/A
    cs46xx      N/A             N/A
    es1938      N/A             N/A
    es1968      joystick        0 = disable (default), 1 = enable
    intel8x0(*1)joystick        0 = disable (default), 1 = enable
    sonicvibes  N/A             N/A
    trident     N/A             N/A
    via82xx(*2) joystick        0 = disable (default), 1 = enable
    ymfpci(*3)  joystick_port   0 = disable (default), 0x201,0x202,0x204,0x205
    ---------------------------------------------------------------------------

    *1)  not all chips support joystick
    *2)  VIA686A/B only
    *3)  With YMF744/754 chips, the port address is chosen automatically
         and enabled by default

The following drivers don't support gameport natively, but there are
additional modules.  Load the corresponding module to add the gameport
support.

    Driver      Additional Module
    -----------------------------
    emu10k1     emu10k1-gp
    fm801       fm801-gp
    -----------------------------

Note: the "pcigame" and "cs461x" modules are for the OSS drivers only.
      These ALSA drivers (cs46xx, trident and au88x0) have the
      built-in gameport support.

As mentioned above, ALSA PCI drivers have the built-in gameport
support, so you don't have to load ns558 module.  Just load "joydev"
and the appropriate adapter module (e.g. "analog").


ISA Cards
---------

ALSA ISA drivers don't have the built-in gameport support.
Instead, you need to load "ns558" module in addition to "joydev" and
the adapter module (e.g. "analog").

Index: ALSA-Configuration.txt
===================================================================
RCS file: /cvsroot/alsa/alsa-kernel/Documentation/ALSA-Configuration.txt,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -r1.20 -r1.21
--- ALSA-Configuration.txt      8 Oct 2003 15:10:46 -0000       1.20
+++ ALSA-Configuration.txt      14 Oct 2003 13:59:19 -0000      1.21
@@ -173,8 +173,7 @@
     Module for soundcards based on Avance Logic ALS4000 PCI chip.
 
     joystick_port - port # for legacy joystick support.
-                        default: 0x200 for the 1st card.
-                        0 = disabled
+                    0 = disabled (default)
     
     Module supports up to 8 cards, autoprobe and PnP.
 
@@ -225,6 +224,7 @@
     fm_port     - 0x388 (default), -1 (disable)
     soft_ac3    - Sofware-conversion of raw SPDIF packets (model 033 only)
                   (default = 1)
+    joystick   - Enable joystick (default off)
 
     Module supports autoprobe and multiple chips (max 8).
     
@@ -377,6 +377,8 @@
                        * SoundBlaster PCI 64
                        * SoundBlaster PCI 128
 
+    joystick           - Enable joystick (default off)
+
     Module supports up to 8 cards and autoprobe.
     
   Module snd-ens1371
@@ -387,6 +389,9 @@
                        * SoundBlaster PCI 128
                        * SoundBlaster Vibra PCI
 
+    joystick_port      - port # for joystick (0x200,0x208,0x210,0x218),
+                         0 = disable (default)
+
     Module supports up to 8 cards and autoprobe.
     
   Module snd-es968
@@ -451,6 +456,7 @@
     use_pm             - support the power-management (0 = off, 1 = on,
                          2 = auto (default))
     enable_mpu         - enable MPU401 (0 = off, 1 = on, 2 = auto (default))
+    joystick           - enable joystick (default off)       
 
     Module supports up to 8 cards and autoprobe.
 
@@ -581,7 +587,7 @@
                        * ALi m5455
 
     ac97_clock   - AC'97 codec clock base (0 = auto-detect)
-    joystick_port - Joystick port # (0 = disabled, 0x200)
+    joystick      - Enable joystick (default off)
     mpu_port      - MPU401 port # (0 = disabled, 0x330,0x300)
 
     Module supports autoprobe and multiple bus-master chips (max 8).
@@ -991,6 +997,7 @@
 
     mpu_port   - 0x300,0x310,0x320,0x330, otherwise obtain BIOS setup
                  [VIA686A/686B only]
+    joystick   - Enable joystick (default off) [VIA686A/686B only]
     ac97_clock - AC'97 codec clock base (default 48000Hz)
     dxs_support        - support DXS channels,
                  0 = auto (defalut), 1 = enable, 2 = disable,
@@ -1117,11 +1124,15 @@
 
     Module for Yamaha PCI chips (YMF72x, YMF74x & YMF75x).
 
-    mpu_port   - 0x300,0x330,0x332,0x334, -1 (disable) by default
-    fm_port    - 0x388,0x398,0x3a0,0x3a8, -1 (disable) by default
-    rear_switch - enable shared rear/line-in switch (bool)
+    mpu_port      - 0x300,0x330,0x332,0x334, -1 (disable) by default
+    fm_port       - 0x388,0x398,0x3a0,0x3a8, -1 (disable) by default
+    joystick_port - 0x201,0x202,0x204,0x205, -1 (disable) by default
+    rear_switch   - enable shared rear/line-in switch (bool)
 
     Module supports autoprobe and multiple chips (max 8).
+
+    With YMF744/754 chips, the MPU401/FM/joystick port addresses are
+    chosen automatically, and enabled by default.
     
     The power-management is supported.
 



-------------------------------------------------------
This SF.net email is sponsored by: SF.net Giveback Program.
SourceForge.net hosts over 70,000 Open Source Projects.
See the people who have HELPED US provide better services:
Click here: http://sourceforge.net/supporters.php
_______________________________________________
Alsa-cvslog mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-cvslog

Reply via email to