]>
Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | ALS-007/ALS-100/ALS-200 based sound cards |
2 | ========================================= | |
3 | ||
4 | Support for sound cards based around the Avance Logic | |
5 | ALS-007/ALS-100/ALS-200 chip is included. These chips are a single | |
6 | chip PnP sound solution which is mostly hardware compatible with the | |
7 | Sound Blaster 16 card, with most differences occurring in the use of | |
8 | the mixer registers. For this reason the ALS code is integrated | |
9 | as part of the Sound Blaster 16 driver (adding only 800 bytes to the | |
10 | SB16 driver). | |
11 | ||
12 | To use an ALS sound card under Linux, enable the following options as | |
13 | modules in the sound configuration section of the kernel config: | |
14 | - 100% Sound Blaster compatibles (SB16/32/64, ESS, Jazz16) support | |
15 | - FM synthesizer (YM3812/OPL-3) support | |
16 | - standalone MPU401 support may be required for some cards; for the | |
17 | ALS-007, when using isapnptools, it is required | |
18 | Since the ALS-007/100/200 are PnP cards, ISAPnP support should probably be | |
19 | compiled in. If kernel level PnP support is not included, isapnptools will | |
20 | be required to configure the card before the sound modules are loaded. | |
21 | ||
22 | When using kernel level ISAPnP, the kernel should correctly identify and | |
23 | configure all resources required by the card when the "sb" module is | |
24 | inserted. Note that the ALS-007 does not have a 16 bit DMA channel and that | |
25 | the MPU401 interface on this card uses a different interrupt to the audio | |
26 | section. This should all be correctly configured by the kernel; if problems | |
27 | with the MPU401 interface surface, try using the standalone MPU401 module, | |
28 | passing "0" as the "sb" module's "mpu_io" module parameter to prevent the | |
29 | soundblaster driver attempting to register the MPU401 itself. The onboard | |
30 | synth device can be accessed using the "opl3" module. | |
31 | ||
32 | If isapnptools is used to wake up the sound card (as in 2.2.x), the settings | |
33 | of the card's resources should be passed to the kernel modules ("sb", "opl3" | |
34 | and "mpu401") using the module parameters. When configuring an ALS-007, be | |
35 | sure to specify different IRQs for the audio and MPU401 sections - this card | |
36 | requires they be different. For "sb", "io", "irq" and "dma" should be set | |
37 | to the same values used to configure the audio section of the card with | |
38 | isapnp. "dma16" should be explicitly set to "-1" for an ALS-007 since this | |
39 | card does not have a 16 bit dma channel; if not specified the kernel will | |
40 | default to using channel 5 anyway which will cause audio not to work. | |
41 | "mpu_io" should be set to 0. The "io" parameter of the "opl3" module should | |
42 | also agree with the setting used by isapnp. To get the MPU401 interface | |
43 | working on an ALS-007 card, the "mpu401" module will be required since this | |
44 | card uses separate IRQs for the audio and MPU401 sections and there is no | |
45 | parameter available to pass a different IRQ to the "sb" driver (whose | |
46 | inbuilt MPU401 driver would otherwise be fine). Insert the mpu401 module | |
47 | passing appropriate values using the "io" and "irq" parameters. | |
48 | ||
49 | The resulting sound driver will provide the following capabilities: | |
50 | - 8 and 16 bit audio playback | |
51 | - 8 and 16 bit audio recording | |
52 | - Software selection of record source (line in, CD, FM, mic, master) | |
53 | - Record and playback of midi data via the external MPU-401 | |
54 | - Playback of midi data using inbuilt FM synthesizer | |
55 | - Control of the ALS-007 mixer via any OSS-compatible mixer programs. | |
56 | Controls available are Master (L&R), Line in (L&R), CD (L&R), | |
57 | DSP/PCM/audio out (L&R), FM (L&R) and Mic in (mono). | |
58 | ||
59 | Jonathan Woithe | |
60 | jwoithe@physics.adelaide.edu.au | |
61 | 30 March 1998 | |
62 | ||
63 | Modified 2000-02-26 by Dave Forrest, drf5n@virginia.edu to add ALS100/ALS200 | |
64 | Modified 2000-04-10 by Paul Laufer, pelaufer@csupomona.edu to add ISAPnP info. | |
65 | Modified 2000-11-19 by Jonathan Woithe, jwoithe@physics.adelaide.edu.au | |
66 | - updated information for kernel 2.4.x. |