SOURCES (LINUX_2_6): linux-2.6-alsa-1.0.9plus-20050622.patch (NEW)...

pluto pluto at pld-linux.org
Wed Jun 22 17:45:01 CEST 2005


Author: pluto                        Date: Wed Jun 22 15:45:01 2005 GMT
Module: SOURCES                       Tag: LINUX_2_6
---- Log message:
- post 2.6.12 fixes.

---- Files affected:
SOURCES:
   linux-2.6-alsa-1.0.9plus-20050622.patch (NONE -> 1.1.2.1)  (NEW)

---- Diffs:

================================================================
Index: SOURCES/linux-2.6-alsa-1.0.9plus-20050622.patch
diff -u /dev/null SOURCES/linux-2.6-alsa-1.0.9plus-20050622.patch:1.1.2.1
--- /dev/null	Wed Jun 22 17:45:01 2005
+++ SOURCES/linux-2.6-alsa-1.0.9plus-20050622.patch	Wed Jun 22 17:44:56 2005
@@ -0,0 +1,22914 @@
+
+ Documentation/sound/alsa/ALSA-Configuration.txt              |  127 
+ Documentation/sound/alsa/CMIPCI.txt                          |   41 
+ Documentation/sound/alsa/DocBook/writing-an-alsa-driver.tmpl |    6 
+ Documentation/sound/alsa/emu10k1-jack.txt                    |   74 
+ Documentation/sound/alsa/hdspm.txt                           |  362 +
+ include/sound/ac97_codec.h                                   |    8 
+ include/sound/asound.h                                       |   16 
+ include/sound/control.h                                      |    2 
+ include/sound/emu10k1.h                                      |   42 
+ include/sound/gus.h                                          |   23 
+ include/sound/hdspm.h                                        |  131 
+ include/sound/pcm.h                                          |   32 
+ include/sound/seq_midi_event.h                               |    2 
+ include/sound/seq_virmidi.h                                  |    1 
+ include/sound/timer.h                                        |    2 
+ include/sound/version.h                                      |    4 
+ sound/Kconfig                                                |    5 
+ sound/arm/Kconfig                                            |    6 
+ sound/arm/Makefile                                           |    3 
+ sound/arm/aaci.c                                             |  968 ++
+ sound/arm/aaci.h                                             |  246 
+ sound/arm/devdma.c                                           |   81 
+ sound/arm/devdma.h                                           |    3 
+ sound/core/control.c                                         |    4 
+ sound/core/memalloc.c                                        |  201 
+ sound/core/oss/pcm_oss.c                                     |   33 
+ sound/core/oss/pcm_plugin.c                                  |    5 
+ sound/core/pcm.c                                             |    3 
+ sound/core/pcm_lib.c                                         |   52 
+ sound/core/pcm_memory.c                                      |    1 
+ sound/core/pcm_misc.c                                        |   16 
+ sound/core/pcm_native.c                                      |   74 
+ sound/core/seq/oss/seq_oss_synth.c                           |   24 
+ sound/core/seq/seq_dummy.c                                   |    5 
+ sound/core/seq/seq_midi.c                                    |    2 
+ sound/core/seq/seq_midi_event.c                              |    6 
+ sound/core/seq/seq_queue.c                                   |    3 
+ sound/core/seq/seq_queue.h                                   |    1 
+ sound/core/seq/seq_timer.c                                   |    3 
+ sound/core/seq/seq_timer.h                                   |    2 
+ sound/core/seq/seq_virmidi.c                                 |    8 
+ sound/core/sound.c                                           |    1 
+ sound/core/timer.c                                           |  100 
+ sound/core/timer_compat.c                                    |    5 
+ sound/drivers/vx/vx_pcm.c                                    |   12 
+ sound/i2c/tea6330t.c                                         |    3 
+ sound/isa/Kconfig                                            |    1 
+ sound/isa/ad1816a/ad1816a.c                                  |    2 
+ sound/isa/cs423x/cs4236.c                                    |    3 
+ sound/isa/gus/gus_io.c                                       |   14 
+ sound/isa/gus/gus_main.c                                     |    3 
+ sound/isa/gus/gus_mem.c                                      |   12 
+ sound/isa/gus/gus_pcm.c                                      |    3 
+ sound/isa/gus/gus_reset.c                                    |    3 
+ sound/isa/gus/gus_synth.c                                    |    3 
+ sound/isa/gus/gus_tables.h                                   |    4 
+ sound/isa/gus/gus_volume.c                                   |    8 
+ sound/pci/Kconfig                                            |   13 
+ sound/pci/ac97/ac97_codec.c                                  |   71 
+ sound/pci/ac97/ac97_patch.c                                  |  585 +
+ sound/pci/ac97/ac97_patch.h                                  |    1 
+ sound/pci/ali5451/ali5451.c                                  |  283 
+ sound/pci/als4000.c                                          |    4 
+ sound/pci/atiixp.c                                           |    6 
+ sound/pci/atiixp_modem.c                                     |   42 
+ sound/pci/au88x0/au88x0.c                                    |    2 
+ sound/pci/azt3328.c                                          |    2 
+ sound/pci/bt87x.c                                            |    2 
+ sound/pci/ca0106/ca0106.h                                    |   72 
+ sound/pci/ca0106/ca0106_main.c                               |  211 
+ sound/pci/ca0106/ca0106_mixer.c                              |   76 
+ sound/pci/ca0106/ca0106_proc.c                               |   31 
+ sound/pci/cmipci.c                                           |  159 
+ sound/pci/cs4281.c                                           |   10 
+ sound/pci/cs46xx/cs46xx.c                                    |    2 
+ sound/pci/cs46xx/cs46xx_lib.c                                |    3 
+ sound/pci/emu10k1/emu10k1.c                                  |    2 
+ sound/pci/emu10k1/emu10k1_main.c                             |  192 
+ sound/pci/emu10k1/emu10k1x.c                                 |    8 
+ sound/pci/emu10k1/emufx.c                                    |   56 
+ sound/pci/emu10k1/emumixer.c                                 |   14 
+ sound/pci/emu10k1/emupcm.c                                   |    6 
+ sound/pci/emu10k1/emuproc.c                                  |   89 
+ sound/pci/emu10k1/irq.c                                      |   46 
+ sound/pci/emu10k1/p16v.c                                     |  367 +
+ sound/pci/ens1370.c                                          |    2 
+ sound/pci/es1938.c                                           |    2 
+ sound/pci/es1968.c                                           |    3 
+ sound/pci/fm801.c                                            |    3 
+ sound/pci/hda/Makefile                                       |    2 
+ sound/pci/hda/hda_codec.c                                    |  206 
+ sound/pci/hda/hda_codec.h                                    |   30 
+ sound/pci/hda/hda_generic.c                                  |   14 
+ sound/pci/hda/hda_intel.c                                    |  119 
+ sound/pci/hda/hda_local.h                                    |   37 
+ sound/pci/hda/hda_patch.h                                    |    3 
+ sound/pci/hda/hda_proc.c                                     |   56 
+ sound/pci/hda/patch_analog.c                                 |  693 +-
+ sound/pci/hda/patch_cmedia.c                                 |  218 
+ sound/pci/hda/patch_realtek.c                                | 2787 +++++---
+ sound/pci/hda/patch_sigmatel.c                               |  666 +
+ sound/pci/ice1712/amp.c                                      |   30 
+ sound/pci/ice1712/amp.h                                      |   16 
+ sound/pci/ice1712/ice1712.c                                  |    2 
+ sound/pci/ice1712/ice1712.h                                  |    5 
+ sound/pci/ice1712/ice1724.c                                  |    2 
+ sound/pci/ice1712/phase.c                                    |  728 ++
+ sound/pci/ice1712/phase.h                                    |   19 
+ sound/pci/ice1712/vt1720_mobo.c                              |    9 
+ sound/pci/ice1712/vt1720_mobo.h                              |    4 
+ sound/pci/intel8x0.c                                         |  156 
+ sound/pci/intel8x0m.c                                        |   80 
+ sound/pci/korg1212/korg1212.c                                |    2 
+ sound/pci/maestro3.c                                         |  222 
+ sound/pci/mixart/mixart.c                                    |    2 
+ sound/pci/nm256/nm256.c                                      |    2 
+ sound/pci/rme32.c                                            |    2 
+ sound/pci/rme96.c                                            |    2 
+ sound/pci/rme9652/Makefile                                   |    2 
+ sound/pci/rme9652/hdsp.c                                     |   30 
+ sound/pci/rme9652/hdspm.c                                    | 3671 +++++++++++
+ sound/pci/rme9652/rme9652.c                                  |   16 
+ sound/pci/sonicvibes.c                                       |    2 
+ sound/pci/trident/trident.c                                  |    5 
+ sound/pci/via82xx.c                                          |  145 
+ sound/pci/via82xx_modem.c                                    |   38 
+ sound/pci/vx222/vx222.c                                      |    2 
+ sound/pci/ymfpci/ymfpci.c                                    |    2 
+ sound/pci/ymfpci/ymfpci_main.c                               |   35 
+ sound/pcmcia/vx/vx_entry.c                                   |    3 
+ sound/synth/emux/emux_effect.c                               |    6 
+ sound/usb/Kconfig                                            |    1 
+ sound/usb/usbaudio.c                                         |  308 
+ sound/usb/usbaudio.h                                         |   11 
+ sound/usb/usbmidi.c                                          |  128 
+ sound/usb/usbmixer.c                                         |  588 +
+ sound/usb/usbmixer_maps.c                                    |  126 
+ sound/usb/usbquirks.h                                        |  298 
+ sound/usb/usx2y/usbusx2y.c                                   |    2 
+ sound/usb/usx2y/usbusx2yaudio.c                              |    6 
+ 140 files changed, 13941 insertions(+), 2768 deletions(-)
+
+diff --git a/Documentation/sound/alsa/ALSA-Configuration.txt b/Documentation/sound/alsa/ALSA-Configuration.txt
+--- a/Documentation/sound/alsa/ALSA-Configuration.txt
++++ b/Documentation/sound/alsa/ALSA-Configuration.txt
+@@ -615,9 +615,11 @@ Prior to version 0.9.0rc4 options had a 
+   Module snd-hda-intel
+   --------------------
+ 
+-    Module for Intel HD Audio (ICH6, ICH6M, ICH7)
++    Module for Intel HD Audio (ICH6, ICH6M, ICH7), ATI SB450,
++	       VIA VT8251/VT8237A
+ 
+     model	- force the model name
++    position_fix - Fix DMA pointer (0 = FIFO size, 1 = none, 2 = POSBUF)
+ 
+     Module supports up to 8 cards.
+ 
+@@ -635,6 +637,10 @@ Prior to version 0.9.0rc4 options had a 
+ 	  5stack	5-jack in back, 2-jack in front
+ 	  5stack-digout	5-jack in back, 2-jack in front, a SPDIF out
+ 	  w810		3-jack
++	  z71v		3-jack (HP shared SPDIF)
++	  asus		3-jack
++	  uniwill	3-jack
++	  F1734		2-jack
+ 
+ 	CMI9880
+ 	  minimal	3-jack in back
+@@ -642,6 +648,15 @@ Prior to version 0.9.0rc4 options had a 
+ 	  full		6-jack in back, 2-jack in front
+ 	  full_dig	6-jack in back, 2-jack in front, SPDIF I/O
+ 	  allout	5-jack in back, 2-jack in front, SPDIF out
++	  auto		auto-config reading BIOS (default)
++
++    Note 2: If you get click noises on output, try the module option
++	    position_fix=1 or 2.  position_fix=1 will use the SD_LPIB
++	    register value without FIFO size correction as the current
++	    DMA pointer.  position_fix=2 will make the driver to use
++	    the position buffer instead of reading SD_LPIB register.
++	    (Usually SD_LPLIB register is more accurate than the
++	    position buffer.)
+ 
+   Module snd-hdsp
+   ---------------
+@@ -660,7 +675,19 @@ Prior to version 0.9.0rc4 options had a 
+           module did formerly.  It will allocate the buffers in advance
+           when any HDSP cards are found.  To make the buffer
+           allocation sure, load snd-page-alloc module in the early
+-          stage of boot sequence.
++          stage of boot sequence.  See "Early Buffer Allocation"
++	  section.
++
++  Module snd-hdspm
++  ----------------
++
++    Module for RME HDSP MADI board.
++
++    precise_ptr		- Enable precise pointer, or disable.
++    line_outs_monitor	- Send playback streams to analog outs by default.
++    enable_monitor	- Enable Analog Out on Channel 63/64 by default.
++
++    See hdspm.txt for details.
+ 
+   Module snd-ice1712
+   ------------------
+@@ -677,15 +704,19 @@ Prior to version 0.9.0rc4 options had a 
+                         * TerraTec EWS 88D
+                         * TerraTec EWX 24/96
+                         * TerraTec DMX 6Fire
++			* TerraTec Phase 88
+                         * Hoontech SoundTrack DSP 24
+                         * Hoontech SoundTrack DSP 24 Value
+                         * Hoontech SoundTrack DSP 24 Media 7.1
++			* Event Electronics, EZ8
+                         * Digigram VX442
++			* Lionstracs, Mediastaton
+ 
+     model       - Use the given board model, one of the following:
+ 		  delta1010, dio2496, delta66, delta44, audiophile, delta410,
+ 		  delta1010lt, vx442, ewx2496, ews88mt, ews88mt_new, ews88d,
+-		  dmx6fire, dsp24, dsp24_value, dsp24_71, ez8
++		  dmx6fire, dsp24, dsp24_value, dsp24_71, ez8,
++		  phase88, mediastation
+     omni	- Omni I/O support for MidiMan M-Audio Delta44/66
+     cs8427_timeout - reset timeout for the CS8427 chip (S/PDIF transciever)
+                      in msec resolution, default value is 500 (0.5 sec)
+@@ -694,20 +725,46 @@ Prior to version 0.9.0rc4 options had a 
+     is not used with all Envy24 based cards (for example in the MidiMan Delta
+     serie).
+ 
++    Note: The supported board is detected by reading EEPROM or PCI
++	  SSID (if EEPROM isn't available).  You can override the
++	  model by passing "model" module option in case that the
++	  driver isn't configured properly or you want to try another
++	  type for testing.
++
+   Module snd-ice1724
+   ------------------
+ 
+-    Module for Envy24HT (VT/ICE1724) based PCI sound cards.
++    Module for Envy24HT (VT/ICE1724), Envy24PT (VT1720) based PCI sound cards.
+ 			* MidiMan M Audio Revolution 7.1
+ 			* AMP Ltd AUDIO2000
+-			* TerraTec Aureon Sky-5.1, Space-7.1
++			* TerraTec Aureon 5.1 Sky
++			* TerraTec Aureon 7.1 Space
++			* TerraTec Aureon 7.1 Universe
++			* TerraTec Phase 22
++			* TerraTec Phase 28
++			* AudioTrak Prodigy 7.1
++			* AudioTrak Prodigy 192
++			* Pontis MS300
++			* Albatron K8X800 Pro II 
++			* Chaintech ZNF3-150
++			* Chaintech ZNF3-250
++			* Chaintech 9CJS
++			* Chaintech AV-710
++			* Shuttle SN25P
+ 
+     model       - Use the given board model, one of the following:
+-		  revo71, amp2000, prodigy71, aureon51, aureon71,
+-		  k8x800
++		  revo71, amp2000, prodigy71, prodigy192, aureon51,
++		  aureon71, universe, k8x800, phase22, phase28, ms300,
++		  av710
+ 
+     Module supports up to 8 cards and autoprobe.
+ 
++    Note: The supported board is detected by reading EEPROM or PCI
++	  SSID (if EEPROM isn't available).  You can override the
++	  model by passing "model" module option in case that the
++	  driver isn't configured properly or you want to try another
++	  type for testing.
++
+   Module snd-intel8x0
+   -------------------
+ 
+@@ -1026,7 +1083,8 @@ Prior to version 0.9.0rc4 options had a 
+           module did formerly.  It will allocate the buffers in advance
+           when any RME9652 cards are found.  To make the buffer
+           allocation sure, load snd-page-alloc module in the early
+-          stage of boot sequence.
++          stage of boot sequence.  See "Early Buffer Allocation"
++	  section.
+ 
+   Module snd-sa11xx-uda1341 (on arm only)
+   ---------------------------------------
+@@ -1211,16 +1269,18 @@ Prior to version 0.9.0rc4 options had a 
+   ------------------
+ 
+     Module for AC'97 motherboards based on VIA 82C686A/686B, 8233,
+-    8233A, 8233C, 8235 (south) bridge.
++    8233A, 8233C, 8235, 8237 (south) bridge.
+ 
+     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,
+-		  3 = 48k only, 4 = no VRA
+-		  [VIA8233/C,8235 only]
++		  0 = auto (default), 1 = enable, 2 = disable,
++		  3 = 48k only, 4 = no VRA, 5 = enable any sample
++		  rate and different sample rates on different
++		  channels
++		  [VIA8233/C, 8235, 8237 only]
+     ac97_quirk  - AC'97 workaround for strange hardware
+                   See the description of intel8x0 module for details.
+ 
+@@ -1232,18 +1292,23 @@ Prior to version 0.9.0rc4 options had a 
+           default value 1.4.  Then the interrupt number will be
+           assigned under 15. You might also upgrade your BIOS.
+     
+-    Note: VIA8233/5 (not VIA8233A) can support DXS (direct sound)
++    Note: VIA8233/5/7 (not VIA8233A) can support DXS (direct sound)
+ 	  channels as the first PCM.  On these channels, up to 4
+-	  streams can be played at the same time.
++	  streams can be played at the same time, and the controller
++	  can perform sample rate conversion with separate rates for
++	  each channel.
+ 	  As default (dxs_support = 0), 48k fixed rate is chosen
+ 	  except for the known devices since the output is often
+ 	  noisy except for 48k on some mother boards due to the
+ 	  bug of BIOS.
+-	  Please try once dxs_support=1 and if it works on other
++	  Please try once dxs_support=5 and if it works on other
+ 	  sample rates (e.g. 44.1kHz of mp3 playback), please let us
+ 	  know the PCI subsystem vendor/device id's (output of
+ 	  "lspci -nv").
+-	  If it doesn't work, try dxs_support=4.  If it still doesn't
++	  If dxs_support=5 does not work, try dxs_support=4; if it
++	  doesn't work too, try dxs_support=1.  (dxs_support=1 is
++	  usually for old motherboards.  The correct implementated
++	  board should work with 4 or 5.)  If it still doesn't
+ 	  work and the default setting is ok, dxs_support=3 is the
+ 	  right choice.  If the default setting doesn't work at all,
+ 	  try dxs_support=2 to disable the DXS channels.
+@@ -1497,6 +1562,36 @@ Proc interfaces (/proc/asound)
+ 	   echo "rvplayer 0 0 block" > /proc/asound/card0/pcm0p/oss
+ 
+ 
++Early Buffer Allocation
++=======================
++
++Some drivers (e.g. hdsp) require the large contiguous buffers, and
++sometimes it's too late to find such spaces when the driver module is
++actually loaded due to memory fragmentation.  You can pre-allocate the
++PCM buffers by loading snd-page-alloc module and write commands to its
++proc file in prior, for example, in the early boot stage like
++/etc/init.d/*.local scripts.
++
++Reading the proc file /proc/drivers/snd-page-alloc shows the current
++usage of page allocation.  In writing, you can send the following
++commands to the snd-page-alloc driver:
++
++  - add VENDOR DEVICE MASK SIZE BUFFERS
++
++    VENDOR and DEVICE are PCI vendor and device IDs.  They take
++    integer numbers (0x prefix is needed for the hex).
++    MASK is the PCI DMA mask.  Pass 0 if not restricted.
++    SIZE is the size of each buffer to allocate.  You can pass
++    k and m suffix for KB and MB.  The max number is 16MB.
++    BUFFERS is the number of buffers to allocate.  It must be greater
++    than 0.  The max number is 4.
++
++  - erase
++
++    This will erase the all pre-allocated buffers which are not in
++    use.
++
++
+ Links
+ =====
+ 
+diff --git a/Documentation/sound/alsa/CMIPCI.txt b/Documentation/sound/alsa/CMIPCI.txt
+--- a/Documentation/sound/alsa/CMIPCI.txt
++++ b/Documentation/sound/alsa/CMIPCI.txt
+@@ -89,19 +89,22 @@ and use the interleaved 4 channel data.
+ 
+ There are some control switchs affecting to the speaker connections:
+ 
+-"Line-In As Rear"	- As mentioned above, the line-in jack is used
+-	for the rear (3th and 4th channels) output.
+-"Line-In As Bass"	- The line-in jack is used for the bass (5th
+-	and 6th channels) output.
+-"Mic As Center/LFE"	- The mic jack is used for the bass output.
+-	If this switch is on, you cannot use a microphone as a capture
+-	source, of course.
+-
++"Line-In Mode"	- an enum control to change the behavior of line-in
++	jack.  Either "Line-In", "Rear Output" or "Bass Output" can
++	be selected.  The last item is available only with model 039
++	or newer. 
++	When "Rear Output" is chosen, the surround channels 3 and 4
++	are output to line-in jack.
++"Mic-In Mode"	- an enum control to change the behavior of mic-in
++	jack.  Either "Mic-In" or "Center/LFE Output" can be
++	selected. 
++	When "Center/LFE Output" is chosen, the center and bass
++	channels (channels 5 and 6) are output to mic-in jack. 
+ 
+ Digital I/O
+ -----------
+ 
+-The CM8x38 provides the excellent SPDIF capability with very chip
++The CM8x38 provides the excellent SPDIF capability with very cheap
+ price (yes, that's the reason I bought the card :)
+ 
+ The SPDIF playback and capture are done via the third PCM device
+@@ -122,8 +125,9 @@ respectively, so you cannot playback bot
+ simultaneously.
+ 
+ To enable SPDIF output, you need to turn on "IEC958 Output Switch"
+-control via mixer or alsactl.  Then you'll see the red light on from
+-the card so you know that's working obviously :)
++control via mixer or alsactl ("IEC958" is the official name of
++so-called S/PDIF).  Then you'll see the red light on from the card so
++you know that's working obviously :)
+ The SPDIF input is always enabled, so you can hear SPDIF input data
+ from line-out with "IEC958 In Monitor" switch at any time (see
+ below).
+@@ -205,9 +209,10 @@ In addition to the standard SB mixer, CM
+ MIDI CONTROLLER
+ ---------------
+ 
+-The MPU401-UART interface is enabled as default only for the first
+-(CMIPCI) card.  You need to set module option "midi_port" properly
+-for the 2nd (CMIPCI) card.
++The MPU401-UART interface is disabled as default.  You need to set
++module option "mpu_port" with a valid I/O port address to enable the
++MIDI support.  The valid I/O ports are 0x300, 0x310, 0x320 and 0x330.
++Choose the value which doesn't conflict with other cards.
+ 
+ There is _no_ hardware wavetable function on this chip (except for
+ OPL3 synth below).
+@@ -229,9 +234,11 @@ I don't know why..
+ Joystick and Modem
+ ------------------
+ 
+-The joystick and modem should be available by enabling the control
+-switch "Joystick" and "Modem" respectively.  But I myself have never
+-tested them yet.
++The legacy joystick is supported.  To enable the joystick support, pass
++joystick_port=1 module option.  The value 1 means the auto-detection.
++If the auto-detection fails, try to pass the exact I/O address.
++
++The modem is enabled dynamically via a card control switch "Modem".
+ 
+ 
+ Debugging Information
+diff --git a/Documentation/sound/alsa/DocBook/writing-an-alsa-driver.tmpl b/Documentation/sound/alsa/DocBook/writing-an-alsa-driver.tmpl
+--- a/Documentation/sound/alsa/DocBook/writing-an-alsa-driver.tmpl
++++ b/Documentation/sound/alsa/DocBook/writing-an-alsa-driver.tmpl
+@@ -371,7 +371,7 @@
+           <listitem><para>create <function>probe()</function> callback.</para></listitem>
+           <listitem><para>create <function>remove()</function> callback.</para></listitem>
+           <listitem><para>create pci_driver table which contains the three pointers above.</para></listitem>
+-          <listitem><para>create <function>init()</function> function just calling <function>pci_module_init()</function> to register the pci_driver table defined above.</para></listitem>
++          <listitem><para>create <function>init()</function> function just calling <function>pci_register_driver()</function> to register the pci_driver table defined above.</para></listitem>
+           <listitem><para>create <function>exit()</function> function to call <function>pci_unregister_driver()</function> function.</para></listitem>
+         </itemizedlist>
+       </para>
+@@ -1198,7 +1198,7 @@
+   /* initialization of the module */
+   static int __init alsa_card_mychip_init(void)
+   {
+-          return pci_module_init(&driver);
++          return pci_register_driver(&driver);
+   }
+ 
+   /* clean up the module */
+@@ -1654,7 +1654,7 @@
+ <![CDATA[
+   static int __init alsa_card_mychip_init(void)
+   {
+-          return pci_module_init(&driver);
++          return pci_register_driver(&driver);
+   }
+ 
+   static void __exit alsa_card_mychip_exit(void)
+diff --git a/Documentation/sound/alsa/emu10k1-jack.txt b/Documentation/sound/alsa/emu10k1-jack.txt
+new file mode 100644
+--- /dev/null
++++ b/Documentation/sound/alsa/emu10k1-jack.txt
+@@ -0,0 +1,74 @@
++This document is a guide to using the emu10k1 based devices with JACK for low
++latency, multichannel recording functionality.  All of my recent work to allow
++Linux users to use the full capabilities of their hardware has been inspired 
++by the kX Project.  Without their work I never would have discovered the true
++power of this hardware.
++
++	http://www.kxproject.com
++						- Lee Revell, 2005.03.30
++
++Low latency, multichannel audio with JACK and the emu10k1/emu10k2
++-----------------------------------------------------------------
++
++Until recently, emu10k1 users on Linux did not have access to the same low
++latency, multichannel features offered by the "kX ASIO" feature of their
++Windows driver.  As of ALSA 1.0.9 this is no more!
++
++For those unfamiliar with kX ASIO, this consists of 16 capture and 16 playback
++channels.  With a post 2.6.9 Linux kernel, latencies down to 64 (1.33 ms) or
++even 32 (0.66ms) frames should work well.
++
++The configuration is slightly more involved than on Windows, as you have to
++select the correct device for JACK to use.  Actually, for qjackctl users it's
++fairly self explanatory - select Duplex, then for capture and playback select
++the multichannel devices, set the in and out channels to 16, and the sample
++rate to 48000Hz.  The command line looks like this:
++
++/usr/local/bin/jackd -R -dalsa -r48000 -p64 -n2 -D -Chw:0,2 -Phw:0,3 -S
++
++This will give you 16 input ports and 16 output ports.
++
++The 16 output ports map onto the 16 FX buses (or the first 16 of 64, for the
++Audigy).  The mapping from FX bus to physical output is described in
++SB-Live-mixer.txt (or Audigy-mixer.txt).
++
++The 16 input ports are connected to the 16 physical inputs.  Contrary to
++popular belief, all emu10k1 cards are multichannel cards.  Which of these
++input channels have physical inputs connected to them depends on the card
++model.  Trial and error is highly recommended; the pinout diagrams
++for the card have been reverse engineered by some enterprising kX users and are 
++available on the internet.  Meterbridge is helpful here, and the kX forums are
++packed with useful information.
++
++Each input port will either correspond to a digital (SPDIF) input, an analog
++input, or nothing.  The one exception is the SBLive! 5.1.  On these devices,
++the second and third input ports are wired to the center/LFE output.  You will
++still see 16 capture channels, but only 14 are available for recording inputs.
++
++This chart, borrowed from kxfxlib/da_asio51.cpp, describes the mapping of JACK
++ports to FXBUS2 (multitrack recording input) and EXTOUT (physical output)
++channels.
++
++/*JACK (& ASIO) mappings on 10k1 5.1 SBLive cards:
++--------------------------------------------
++JACK		Epilog		FXBUS2(nr)
++--------------------------------------------
++capture_1	asio14		FXBUS2(0xe)
++capture_2	asio15		FXBUS2(0xf)
++capture_3	asio0		FXBUS2(0x0)	
++~capture_4	Center		EXTOUT(0x11)	// mapped to by Center
++~capture_5	LFE		EXTOUT(0x12)	// mapped to by LFE
++capture_6	asio3		FXBUS2(0x3)
++capture_7	asio4		FXBUS2(0x4)
++capture_8	asio5		FXBUS2(0x5)
++capture_9	asio6		FXBUS2(0x6)
++capture_10	asio7		FXBUS2(0x7)
++capture_11	asio8		FXBUS2(0x8)
++capture_12	asio9		FXBUS2(0x9)
++capture_13	asio10		FXBUS2(0xa)
++capture_14	asio11		FXBUS2(0xb)
++capture_15	asio12		FXBUS2(0xc)
++capture_16	asio13		FXBUS2(0xd)
++*/
++
++TODO: describe use of ld10k1/qlo10k1 in conjunction with JACK
+diff --git a/Documentation/sound/alsa/hdspm.txt b/Documentation/sound/alsa/hdspm.txt
+new file mode 100644
+--- /dev/null
++++ b/Documentation/sound/alsa/hdspm.txt
+@@ -0,0 +1,362 @@
++Software Interface ALSA-DSP MADI Driver 
++
++(translated from German, so no good English ;-), 
++2004 - winfried ritsch
++
++
++
++ Full functionality has been added to the driver. Since some of
++ the Controls and startup-options  are ALSA-Standard and only the
++ special Controls are described and discussed below.
++
++
++ hardware functionality:
++
++   
++   Audio transmission:
++
++     number of channels --  depends on transmission mode
++
++		The number of channels chosen is from 1..Nmax. The reason to
++		use for a lower number of channels is only resource allocation,
++		since unused DMA channels are disabled and less memory is
++		allocated. So also the throughput of the PCI system can be
++		scaled. (Only important for low performance boards).
<<Diff was trimmed, longer than 597 lines>>



More information about the pld-cvs-commit mailing list