
		Advanced Linux Sound Architecture - Driver
		==========================================
			    Installation guide

ALSA driver replaces OSS/Lite driver which is in current Linux kernels.
Please, check if OSS/Lite is compiled in your kernel. Remove it before
you are trying to install this driver.

Before you are trying install this driver, please, read carefuly
documentation for insmod, modprobe and kerneld/kmod. If you don't
understand how these programs work, you can't be success with
installation.

Quick install
=============

1) Run './configure' script.
   If you want turn on debug try './configure --with-debug=full'.
2) Run 'make install'.
3) Run './snddevices' script to create new sound devices in /dev directory.
4) Edit your /etc/conf.modules (look to kerneld/kmod support section).
5) Run 'modprobe snd-card' where card is name of your card.

You can also look to file utils/sound.init. This script is designed for
RedHat distribution, but it should be used with other distributions which
uses System V style rc init scripts.

Module parameters
=================

  User can modify/set parameters at load time of module. If modules supports
  more cards and you have more than on card of same type, simply specify more
  values for parameter delimited with commas.
  
  Global parameters
  -----------------

    snd_index	- 1-8 - index for soundcard
                - if not set, first free index is assigned
    snd_id	- user identification for card (up to 15 chars)
		- default expression is 'card<snd_index>' (for example card1)
		- value is used for /proc/sound filesystem
		- this value can be used with application for identification
		  of card if user doesn't want identify card with index number

  Module snd.o
  ------------

    snd_major	- major # for sound driver
		- default is 14 - this value is compatible with OSS/Lite
    snd_cards_limit
		- specifies card limit # (1-8)
		- good for kerneld/kmod support if you don't want search
		  for soundcards which aren't installed in your system

  Module snd-audiodrive1688.o
  ---------------------------

    Module for ESS AudioDrive ES-1688 and ES-688 soundcards.

    snd_port	- port # for ES-1688 chip (0x220,0x240,0x260)
    snd_irq	- IRQ # for ES-1688 chip (5,7,9,10)
    snd_dma8	- DMA # for ES-1688 chip (0,1,3)
    snd_dma8_size - max DMA size in kB (4-64kB)

    Module supports up to 8 cards and autoprobe.

  Module snd-gusclassic.o
  -----------------------

    Module for Gravis UltraSound Classic soundcard.

    snd_port	- port # for GF1 chip (0x220,0x230,0x240,0x250,0x260)
    snd_irq	- IRQ # for GF1 chip (3,5,9,11,12,15)
    snd_dma1	- DMA # for GF1 chip (1,3,5,6,7)
    snd_dma1_size - max DMA1 size in kB (4-128kB)
    snd_dma2	- DMA # for GF1 chip (1,3,5,6,7)
    snd_dma2_size - max DMA2 size in kB (4-128kB)
    snd_joystick_dac - 0 to 31, (0.59V-4.52V or 0.389V-2.98V)

    Module supports up to 8 cards and autoprobe.

  Module snd-gusextreme.o
  -----------------------

    Module for Gravis UltraSound Extreme soundcard.

    snd_port	- port # for GF1 chip (0x220,0x230,0x240,0x250,0x260)
    snd_irq	- IRQ # for ES-1688 chip (5,7,9,10)
    snd_irq1	- IRQ # for GF1 chip (3,5,9,11,12,15)
    snd_dma8	- DMA # for ES-1688 chip (0,1,3)
    snd_dma8_size - max DMA8 size in kB (4-64kB)
    snd_dma1	- DMA # for GF1 chip (1,3,5,6,7)
    snd_dma1_size - max DMA1 size in kB (4-128kB)
    snd_joystick_dac - 0 to 31, (0.59V-4.52V or 0.389V-2.98V)

    Module supports up to 8 cards and autoprobe.

  Module snd-gusmax.o
  -------------------

    Module for Gravis UltraSound MAX soundcard.

    snd_port	- port # for GF1 chip (0x220,0x230,0x240,0x250,0x260)
    snd_irq	- IRQ # for GF1 chip (3,5,9,11,12,15)
    snd_dma1	- DMA # for GF1 chip (1,3,5,6,7)
    snd_dma1_size - max DMA1 size in kB (4-128kB)
    snd_dma2	- DMA # for GF1 chip (1,3,5,6,7)
    snd_dma2_size - max DMA2 size in kB (4-128kB)
    snd_joystick_dac - 0 to 31, (0.59V-4.52V or 0.389V-2.98V)

    Module supports up to 8 cards and autoprobe.
    
  Module snd-interwave.o
  ----------------------

    Module for Gravis UltraSound PnP, Dynasonic 3-D and other soundcards
    based on AMD InterWave (tm) chip.
  
    snd_port	- port # for InterWave chip (0x210,0x220,0x230,0x240,0x250,0x260)
    snd_irq	- IRQ # for InterWave chip (3,5,9,11,12,15)
    snd_dma1	- DMA # for InterWave chip (0,1,3,5,6,7)
    snd_dma1_size - max DMA1 size in kB (4-128kB)
    snd_dma2	- DMA # for InterWave chip (0,1,3,5,6,7)
    snd_dma2_size - max DMA2 size in kB (4-128kB)
    snd_joystick_dac - 0 to 31, (0.59V-4.52V or 0.389V-2.98V)

    Module supports up to 8 cards, autoprobe and TL PnP.

  Module snd-sb8.o
  ----------------

    Module for 8-bit SoundBlaster cards: SoundBlaster 1.0,
					 SoundBlaster 2.0,
					 SoundBlaster Pro

    snd_port	- port # for SB DSP chip (0x220,0x240,0x260)
    snd_irq	- IRQ # for SB DSP chip (5,7,9,10)
    snd_dma8	- DMA # for SB DSP chip (1,3)
    snd_dma8_size - max DMA size in kB (4-64kB)

    Module supports up to 8 cards and autoprobe.
    
  Module snd-sb16.o
  -----------------

    Module for 16-bit SoundBlaster cards: SoundBlaster 16 (PnP),
					  SoundBlaster AWE 32 (PnP),
					  SoundBlaster AWE 64 PnP

    snd_port	- port # for SB DSP 4.x chip (0x220,0x240,0x260)
    snd_irq	- IRQ # for SB DSP 4.x chip (5,7,9,10)
    snd_dma8	- 8-bit DMA # for SB DSP 4.x chip (0,1,3)
    snd_dma8_size - max DMA size in kB (4-64kB)
    snd_dma16	- 16-bit DMA # for SB DSP 4.x chip (5,6,7)
    snd_dma16_size - max DMA size in kB (4-128kB)
    
    Module supports up to 8 cards, autoprobe and TL PnP.
    

Note: TL PnP = Tom Lees Plug & Play driver for Linux

kerneld/kmod support
====================

Bellow example is for Gravis UltraSound PnP soundcard:

----- /etc/conf.modules

# ALSA sound configuration for modutils 2.1.55+

alias char-major-14 snd
alias snd-minor-oss-0 snd-interwave
alias snd-minor-oss-3 snd-pcm-oss
alias snd-minor-oss-4 snd-pcm-oss
alias snd-minor-oss-5 snd-pcm-oss
alias snd-minor-oss-12 snd-pcm-oss
alias snd-card-0 snd-interwave
options -k snd snd_major=14 snd_cards_limit=1
options -k snd-mixer
options -k snd-pcm
options -k snd-cs4231
options -k snd-gus
options -k snd-interwave snd_index=1 snd_id="guspnp" snd_port=0x220 snd_irq=5 snd_dma1=5 snd_dma2=6

-----

This example works with kerneld...


With kmod is -k options ignored (kmod have -k hardcoded to the command line)...
This option should be removed...

----- /etc/conf.modules

# ALSA sound configuration for modutils 2.1.55+

alias char-major-14 snd
alias snd-minor-oss-0 snd-interwave
alias snd-minor-oss-3 snd-pcm-oss
alias snd-minor-oss-4 snd-pcm-oss
alias snd-minor-oss-5 snd-pcm-oss
alias snd-minor-oss-12 snd-pcm-oss
alias snd-card-0 snd-interwave
options snd snd_major=14 snd_cards_limit=1
options snd-interwave snd_index=1 snd_port=0x220 snd_irq=5 snd_dma1=5 snd_dma2=6

-----
