AD1816 sounddriver for Linux (version 0.3)
The AD1816 sounddriver is a sounddriver for soundcards based on the
Analog Devices AD1816 chip as the Terratec Base 1 and Terratec Base 64
soundcards, which is able to do full-duplex audio (play and record at
the same time). Currently only the audio and mixer part of the AD1816
chip are supported, however the OPL-3 part might work with the stand
alone drivers (not tested).
Note: This software is alpha software. It may
have several bugs, cause the kernel to freeze, destroy your data on
the harddrive or even eat your soundcard. However I do my best to
avoid such side effects ;-).
The version for Linux 2.0.33 has been running on my machine for more than
a month without any problems.
Installation instructions for Linux 2.0.33/2.0.34
- Get the driver
- Configure the sound card with isapnp tools, set I/O-base, IRQ and
DMA-channels to adequate values.
- Get a 2.0.33/34 kernel or any other kernel with a USS Lite version
3.5.4/3.5.5 sounddriver.
- Change to the kernel's sounddriver directory (usually
/usr/src/linux/drivers/sound).
- Untar the sound20.tar file (tar xvf <PATH>/sound20.tar).
- Change to the kernel's root directory (usually /usr/src/linux).
- Configure the kernel as usual, enable module support.
- Configure the sound driver as a module, activate the AD1816 driver and
set I/O base, IRQ, and DMA channels of the AD1816 driver to the values used
in isapnp.conf. Note: The I/O address of the native part of the
AD1816 is configured with (IO 2 (BASE 0x0???)) in isapnp.conf.
Use this address for configuring the driver.
- Compile and install the new kernel and modules.
- Reboot the new kernel.
- Initialize the soundcard with isapnp.
- Load the sounddriver with modprobe sound.
- That's it! Now try to play a sound.
Installation instructions for Linux 2.1.103
- Get the driver
- Configure the sound card with isapnp tools, set I/O-base, IRQ and
DMA-channels to adequate values.
- Get a 2.1.103 kernel (later kernels might work as well) or any other
kernel with a USS Lite version 3.8o sounddriver.
- Change to the kernel's sounddriver directory (usually
/usr/src/linux/drivers/sound).
- Untar the sound21.tar file (tar xvf <PATH>/sound21.tar).
- Change to the kernel's root directory (usually /usr/src/linux).
- Configure the kernel as usual, enable module support.
- Configure the sound driver as a module, activate the AD1816 driver.
- Compile and install the new kernel and modules.
- Reboot the new kernel.
- Initialize the soundcard with isapnp.
- Load the sound module with modprobe sound.
- Load the ad1816 module with modprobe ad1816 io=<IO-Base>
irq=<IRQ> dma=<DMA-Channel 1> dma2=<DMA-Channel 2>.
Use the same values as in isapnp.conf. Note: The I/O address of the
native part of the AD1816 is configured with (IO 2 (BASE 0x0???)) in
isapnp.conf. Use this address for loading the driver.
- That's it! Now try to play a sound.
Known bugs and problems:
- The driver does not check, if IRQ and DMA-channels are set correctly.
- The driver for 2.1.xxx does not use spin locks.
- Some people reported problems with software that changes fragment size
Changes:
0.2 to 0.3:
- Added support for 2.1.xxx kernel series
- Some cosmetic changes
- Removed some debug output
Further development
The further development will depend on your feedback. The following features
are already planned for the future:
- Support for a 2nd virtual soundcard. This means: You can play
your favorite song in 44.1kHz stereo with one program and record another
signal in 8kHz mono at the same time with another program with only one
soundcard.
- Support for PNP autoconfiguration of the chip/soundcard.
Getting the latest sounddriver version
The latest version of the sounddriver for Linux 2.0.33/34 can be found at:
http://www.student.informatik.tu-darmstadt.de/~tek/projects/sound20.tar.gz
The latest version of the sounddriver for Linux 2.1.103 and above can be found at:
http://www.student.informatik.tu-darmstadt.de/~tek/projects/sound21.tar.gz
The latest information can be found at:
http://www.student.informatik.tu-darmstadt.de/~tek/projects/linux.html
I'll try to make it available via ftp as soon as possible too.
Bug reports and questions
Please send any bugs, suggestions, patches or questions to:
tek@rbg.informatik.tu-darmstadt.de
For those german guys: E-Mails in deutscher Sprache werden auch beantwortet ;-).
Last modified: 07.06.1998 by Thorsten Knabe