From: Andy P. <at...@us...> - 2002-04-09 16:55:53
|
Update of /cvsroot/linux-vax/kernel-2.4/Documentation/sound In directory usw-pr-cvs1:/tmp/cvs-serv7449/sound Modified Files: CMI8338 MAD16 OPL3-SA2 Opti PAS16 README.OSS es1370 es1371 solo1 sonicvibes Added Files: WaveArtist btaudio cs46xx Removed Files: PCM1-pro via82cxxx.txt Log Message: synch 2.4.15 commit 28 --- NEW FILE --- (the following is from the armlinux CVS) WaveArtist mixer and volume levels can be accessed via these commands: nn30 read registers nn, where nn = 00 - 09 for mixer settings 0a - 13 for channel volumes mm31 write the volume setting in pairs, where mm = (nn - 10) / 2 rr32 write the mixer settings in pairs, where rr = nn/2 xx33 reset all settings to default 0y34 select mono source, y=0 = left, y=1 = right bits nn 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 ----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+ 00 | 0 | 0 0 1 1 | left line mixer gain | left aux1 mixer gain |lmute| ----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+ 01 | 0 | 0 1 0 1 | left aux2 mixer gain | right 2 left mic gain |mmute| ----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+ 02 | 0 | 0 1 1 1 | left mic mixer gain | left mic | left mixer gain |dith | ----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+ 03 | 0 | 1 0 0 1 | left mixer input select |lrfg | left ADC gain | ----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+ 04 | 0 | 1 0 1 1 | right line mixer gain | right aux1 mixer gain |rmute| ----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+ 05 | 0 | 1 1 0 1 | right aux2 mixer gain | left 2 right mic gain |test | ----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+ 06 | 0 | 1 1 1 1 | right mic mixer gain | right mic |right mixer gain |rbyps| ----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+ 07 | 1 | 0 0 0 1 | right mixer select |rrfg | right ADC gain | ----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+ 08 | 1 | 0 0 1 1 | mono mixer gain |right ADC mux sel|left ADC mux sel | ----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+ 09 | 1 | 0 1 0 1 |loopb|left linout|loop|ADCch|TxFch|OffCD|test |loopb|loopb|osamp| ----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+ 0a | 0 | left PCM channel volume | ----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+ 0b | 0 | right PCM channel volume | ----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+ 0c | 0 | left FM channel volume | ----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+ 0d | 0 | right FM channel volume | ----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+ 0e | 0 | left wavetable channel volume | ----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+ 0f | 0 | right wavetable channel volume | ----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+ 10 | 0 | left PCM expansion channel volume | ----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+ 11 | 0 | right PCM expansion channel volume | ----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+ 12 | 0 | left FM expansion channel volume | ----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+ 13 | 0 | right FM expansion channel volume | ----+---+------------+-----+-----+-----+----+-----+-----+-----+-----+-----+-----+-----+ lmute: left mute mmute: mono mute dith: dithds lrfg: rmute: right mute rbyps: right bypass rrfg: ADCch: TxFch: OffCD: osamp: And the following diagram is derived from the description in the CVS archive: MIC L (mouthpiece) +------+ -->PreAmp>-\ +--^---+ | | | r2b4-5 | +--------+ /----*-------------------------------->5 | | | | | /----------------------------------->4 | | | | | | | /--------------------------------->3 1of5 | +---+ | | | | mux >-->AMP>--> ADC L | | | /------------------------------->2 | +-^-+ | | | | | | | Line | | | | +----+ +------+ +---+ /---->1 | r3b3-0 ------------*->mute>--> Gain >--> | | | | L | | | +----+ +------+ | | | *->0 | | | | | | | +---^----+ Aux2 | | | +----+ +------+ | | | | ----------*--->mute>--> Gain >--> M | | r8b0-2 L | | +----+ +------+ | | | | | | | \------\ Aux1 | | +----+ +------+ | | | --------*----->mute>--> Gain >--> I | | L | +----+ +------+ | | | | | | | | +----+ +------+ | | +---+ | *------->mute>--> Gain >--> X >-->AMP>--* | +----+ +------+ | | +-^-+ | | | | | | | +----+ +------+ | | r2b1-3 | | /----->mute>--> Gain >--> E | | | | +----+ +------+ | | | | | | | | | | +----+ +------+ | | | | | /--->mute>--> Gain >--> R | | | | | +----+ +------+ | | | | | | | | | r9b8-9 | | | +----+ +------+ | | | | | | | /->mute>--> Gain >--> | | +---v---+ | | | | +----+ +------+ +---+ /-*->0 | DAC | | | | | | | ------------*----------------------------------->? | +----+ L | | | | | Mux >-->mute>--> L output | | | | /->? | +--^-+ | | | | | | | | | | | /--------->? | r0b0 | | | | | | +-------+ | | | | | | Mono | | | | | | +-------+ ----------* | \---> | +----+ | | | | | | Mix >-->mute>--> Mono output | | | | *-> | +--^-+ | | | | | +-------+ | | | | | | r1b0 DAC | | | | | +-------+ ------------*-------------------------*--------->1 | +----+ R | | | | | | Mux >-->mute>--> R output | | | | +----+ +------+ +---+ *->0 | +--^-+ | | | \->mute>--> Gain >--> | | +---^---+ | | | | +----+ +------+ | | | | r5b0 | | | | | | r6b0 | | | +----+ +------+ | | | | | \--->mute>--> Gain >--> M | | | | +----+ +------+ | | | | | | | | | | +----+ +------+ | | | | *----->mute>--> Gain >--> I | | | | +----+ +------+ | | | | | | | | | | +----+ +------+ | | +---+ | \------->mute>--> Gain >--> X >-->AMP>--* | +----+ +------+ | | +-^-+ | /--/ | | | | Aux1 | +----+ +------+ | | r6b1-3 | -------*------>mute>--> Gain >--> E | | R | | +----+ +------+ | | | | | | | | Aux2 | | +----+ +------+ | | /------/ ---------*---->mute>--> Gain >--> R | | R | | | +----+ +------+ | | | | | | | | | +--------+ Line | | | +----+ +------+ | | | *->0 | -----------*-->mute>--> Gain >--> | | | | R | | | | +----+ +------+ +---+ \---->1 | | | | | | | | | | \-------------------------------->2 | +---+ | | | | Mux >-->AMP>--> ADC R | | \---------------------------------->3 | +-^-+ | | | | | | \------------------------------------>4 | r7b3-0 | | | \-----*-------------------------------->5 | | +---^----+ r6b4-5 | | | | r8b3-5 +--v---+ | -->PreAmp>-/ +------+ MIC R (electret mic) --- NEW FILE --- Intro ===== people start bugging me about this with questions, looks like I should write up some documentation for this beast. That way I don't have to answer that much mails I hope. Yes, I'm lazy... You might have noticed that the bt878 grabber cards have actually _two_ PCI functions: $ lspci [ ... ] 00:0a.0 Multimedia video controller: Brooktree Corporation Bt878 (rev 02) 00:0a.1 Multimedia controller: Brooktree Corporation Bt878 (rev 02) [ ... ] The first does video, it is backward compatible to the bt848. The second does audio. btaudio is a driver for the second function. It's a sound driver which can be used for recording sound (and _only_ recording, no playback). As most TV cards come with a short cable which can be plugged into your sound card's line-in you probably don't need this driver if all you want to do is just watching TV... Driver Status ============= Still somewhat experimental. The driver should work stable, i.e. it should'nt crash your box. It might not work as expected, have bugs, not being fully OSS API compilant, ... Latest versions are available from http://bytesex.org/bttv/, the driver is in the bttv tarball. Kernel patches might be available too, have a look at http://bytesex.org/bttv/listing.html. The chip knows two different modes. btaudio registers two dsp devices, one for each mode. They can not be used at the same time. Digital audio mode ================== The chip gives you 16 bit stereo sound. The sample rate depends on the external source which feeds the bt878 with digital sound via I2S interface. There is a insmod option (rate) to tell the driver which sample rate the hardware uses (32000 is the default). One possible source for digital sound is the msp34xx audio processor chip which provides digital sound via I2S with 32 kHz sample rate. My Hauppauge board works this way. The Osprey-200 reportly gives you digital sound with 44100 Hz sample rate. It is also possible that you get no sound at all. analog mode (A/D) ================= You can tell the driver to use this mode with the insmod option "analog=1". The chip has three analog inputs. Consequently you'll get a mixer device to control these. The analog mode supports mono only. Both 8 + 16 bit. Both are _signed_ int, which is uncommon for the 8 bit case. Sample rate range is 119 kHz to 448 kHz. Yes, the number of digits is correct. The driver supports downsampling by powers of two, so you can ask for more usual sample rates like 44 kHz too. With my Hauppauge I get noisy sound on the second input (mapped to line2 by the mixer device). Others get a useable signal on line1. some examples ============= * read audio data from btaudio (dsp2), send to es1730 (dsp,dsp1): $ sox -w -r 32000 -t ossdsp /dev/dsp2 -t ossdsp /dev/dsp * read audio data from btaudio, send to esound daemon (which might be running on another host): $ sox -c 2 -w -r 32000 -t ossdsp /dev/dsp2 -t sw - | esdcat -r 32000 $ sox -c 1 -w -r 32000 -t ossdsp /dev/dsp2 -t sw - | esdcat -m -r 32000 Have fun, Gerd -- Gerd Knorr <kr...@by...> --- NEW FILE --- Documentation for the Cirrus Logic/Crystal SoundFusion cs46xx/cs4280 audio controller chips (2001/05/11) The cs46xx audio driver supports the DSP line of Cirrus controllers. Specifically, the cs4610, cs4612, cs4614, cs4622, cs4624, cs4630 and the cs4280 products. This driver uses the generic ac97_codec driver for AC97 codec support. Features: Full Duplex Playback/Capture supported from 8k-48k. 16Bit Signed LE & 8Bit Unsigned, with Mono or Stereo supported. APM/PM - 2.2.x PM is enabled and functional. APM can also be enabled for 2.4.x by modifying the CS46XX_ACPI_SUPPORT macro definition. DMA playback buffer size is configurable from 16k (defaultorder=2) up to 2Meg (defaultorder=11). DMA capture buffer size is fixed at a single 4k page as two 2k fragments. MMAP seems to work well with QuakeIII, and test XMMS plugin. Myth2 works, but the polling logic is not fully correct, but is functional. The 2.4.4-ac6 gameport code in the cs461x joystick driver has been tested with a Microsoft Sidewinder joystick (cs461x.o and sidewinder.o). This audio driver must be loaded prior to the joystick driver to enable the DSP task image supporting the joystick device. Limitations: SPDIF is currently not supported. Primary codec support only. No secondary codec support is implemented. NOTES: Hercules Game Theatre XP - the EGPIO2 pin controls the external Amp, and has been tested. Module parameter hercules_egpio_disable set to 1, will force a 0 to EGPIODR to disable the external amplifier. VTB Santa Cruz - the GPIO7/GPIO8 on the Secondary Codec control the external amplifier for the "back" speakers, since we do not support the secondary codec then this external amp is not turned on. The primary codec external amplifier is supported but note that the AC97 EAPD bit is inverted logic (amp_voyetra()). DMA buffer size - there are issues with many of the Linux applications concerning the optimal buffer size. Several applications request a certain fragment size and number and then do not verify that the driver has the ability to support the requested configuration. SNDCTL_DSP_SETFRAGMENT ioctl is used to request a fragment size and number of fragments. Some applications exit if an error is returned on this particular ioctl. Therefore, in alignment with the other OSS audio drivers, no error is returned when a SETFRAGs IOCTL is received, but the values passed from the app are not used in any buffer calculation (ossfragshift/ossmaxfrags are not used). Use the "defaultorder=N" module parameter to change the buffer size if you have an application that requires a specific number of fragments or a specific buffer size (see below). Debug Interface --------------- There is an ioctl debug interface to allow runtime modification of the debug print levels. This debug interface code can be disabled from the compilation process with commenting the following define: #define CSDEBUG_INTERFACE 1 There is also a debug print methodolgy to select printf statements from different areas of the driver. A debug print level is also used to allow additional printfs to be active. Comment out the following line in the driver to disable compilation of the CS_DBGOUT print statements: #define CSDEBUG 1 Please see the defintions for cs_debuglevel and cs_debugmask for additional information on the debug levels and sections. There is also a csdbg executable to allow runtime manipulation of these parameters. for a copy email: tw...@cr... MODULE_PARMS definitions ------------------------ MODULE_PARM(defaultorder, "i"); defaultorder=N where N is a value from 1 to 12 The buffer order determines the size of the dma buffer for the driver. under Linux, a smaller buffer allows more responsiveness from many of the applications (e.g. games). A larger buffer allows some of the apps (esound) to not underrun the dma buffer as easily. As default, use 32k (order=3) rather than 64k as some of the games work more responsively. (2^N) * PAGE_SIZE = allocated buffer size MODULE_PARM(cs_debuglevel, "i"); MODULE_PARM(cs_debugmask, "i"); cs_debuglevel=N cs_debugmask=0xMMMMMMMM where N is a value from 0 (no debug printfs), to 9 (maximum) 0xMMMMMMMM is a debug mask corresponding to the CS_xxx bits (see driver source). MODULE_PARM(hercules_egpio_disable, "i"); hercules_egpio_disable=N where N is a 0 (enable egpio), or a 1 (disable egpio support) MODULE_PARM(initdelay, "i"); initdelay=N This value is used to determine the millescond delay during the initialization code prior to powering up the PLL. On laptops this value can be used to assist with errors on resume, mostly with IBM laptops. Basically, if the system is booted under battery power then the mdelay()/udelay() functions fail to properly delay the required time. Also, if the system is booted under AC power and then the power removed, the mdelay()/udelay() functions will not delay properly. MODULE_PARM(powerdown, "i"); powerdown=N where N is 0 (disable any powerdown of the internal blocks) or 1 (enable powerdown) MODULE_PARM(external_amp, "i"); external_amp=1 if N is set to 1, then force enabling the EAPD support in the primary AC97 codec. override the detection logic and force the external amp bit in the AC97 0x26 register to be reset (0). EAPD should be 0 for powerup, and 1 for powerdown. The VTB Santa Cruz card has inverted logic, so there is a special function for these cards. MODULE_PARM(thinkpad, "i"); thinkpad=1 if N is set to 1, then force enabling the clkrun functionality. Currently, when the part is being used, then clkrun is disabled for the entire system, but re-enabled when the driver is released or there is no outstanding open count. Index: CMI8338 =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/Documentation/sound/CMI8338,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- CMI8338 14 Jan 2001 20:05:06 -0000 1.1.1.1 +++ CMI8338 9 Apr 2002 16:55:46 -0000 1.2 @@ -8,59 +8,78 @@ On-board C-Media chips -WHAT'S NEW +STEPS TO BUILD DRIVER ================================================================================ - 1. Support modem interface for 8738. (select in kernel configuration) - 2. Enable S/PDIF-in to S/PDIF-out (S/PDIF loop). - 3. Enable 4 channels analog duplicate mode on 3 jack or 4 jack - configuration. + 1. Backup the Config.in and Makefile in the sound driver directory + (/usr/src/linux/driver/sound). + The Configure.help provide help when you config driver in step + 4, please backup the original one (/usr/src/linux/Document) and + copy this file. + The cmpci is document for the driver in detail, please copy it + to /usr/src/linux/Document/sound so you can refer it. Backup if + there is already one. + 2. Extract the tar file by 'tar xvzf cmpci-xx.tar.gz' in the above + directory. - Be aware: C-Media Electronics Inc. is basically an IC design house, - and whose development of software drivers is mainly for use by its OEM - customers in their products. C-Media Electronics Inc. itself does not - manufacture end-user products, such as PC or sound cards, so it can - not fully control the drivers provided to consumers. Drivers provided - at this site, therefore, MAY NOT BE APPLICABLE to all sound cards. - Drivers you download from this site may function well at certain - situation, but C-Media Electronics Inc. does not give any guarantee or - assurances. Please be aware that these drivers might cause some - technical difficulties when installed + 3. Change directory to /usr/src/linux + 4. Config cm8338 driver by 'make menuconfig', 'make config' or + 'make xconfig' command. -1. Config cm8338 driver by 'make menuconfig' or 'make config' command. + 5. Please select Sound Card (CONFIG_SOUND=m) support and CMPCI + driver (CONFIG_SOUND_CMPCI=m) as modules. Resident mode not tested. + For driver option, please refer 'DRIVER PARAMETER' -2. Please select Sound Card (CONFIG_SOUND=m) support and CMPCI driver (CONFIG_SOUND_CMPCI=m) as modules. Resident mode not tested. + 6. Compile the kernel if necessary. -3. Compile the kernel if necessary. + 7. Compile the modules by 'make modules'. -4. Compile the modules by 'make modules'. + 8. Install the modules by 'make modules_install' -5. Install the modules by 'make modules_install' -6. Before first time to run the driver, create module dependency by 'depmod -a' +INSTALL DRIVER +================================================================================ + + 1. Before first time to run the driver, create module dependency by + 'depmod -a' + + 2. To install the driver manually, enter 'modprobe cmpci'. + + 3. Driver installation for various distributions: -7. To install the driver, enter 'modprobe cmpci'. + a. Slackware 4.0 + Add the 'modprobe cmpci' command in your /etc/rc.d/rc.modules + file.so you can start the driver automatically each time booting. + b. Caldera OpenLinux 2.2 + Use LISA to load the cmpci module. -DRIVER PARAMETERS + c. RedHat 6.0 and S.u.S.E. 6.1 + Add following command in /etc/conf.modules: + + alias sound cmpci + + also visit http://www.cmedia.com.tw for installation instruction. + +DRIVER PARAMETER ================================================================================ Some functions for the cm8738 can be configured in Kernel Configuration or modules parameters. Set these parameters to 1 to enable. + mpuio: I/O ports base for MPU-401, 0 if disabled. + fmio: I/O ports base for OPL-3, 0 if disabled. + spdif_inverse:Inverse the S/PDIF-in signal, this depends on your + CD-ROM or DVD-ROM. spdif_loop: Enable S/PDIF loop, this route S/PDIF-in to S/PDIF-out directly. - four_ch: Enable 4 channels mode, rear-out or line-in will output - the same as line-out. - rear_out: Enable this if you have independent rear-out jacket on - your sound card, otherwise line-in will be used as + speakers: Number of speakers used. + use_line_as_rear:Enable this if you want to use line-in as rear-out. - modem: You will need to set this parameter if you want to use - the HSP modem. You need install the pctel.o, the modem - driver itself. - - (You will need to get the pctel driver (binary only) and the support for - this option from the CMI site. It is not included in the Linux kernel - proper as it is non-free). + use_line_as_bass:Enable this if you want to use line-in as + bass-out. + joystick: Enable joystick. You will need to install Linux joystick + driver. + Index: MAD16 =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/Documentation/sound/MAD16,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- MAD16 14 Jan 2001 20:04:37 -0000 1.1.1.1 +++ MAD16 9 Apr 2002 16:55:46 -0000 1.2 @@ -1,3 +1,5 @@ +(This recipe has been edited to update the configuration symbols.) + From: Shaw Carruthers <sh...@sh...> I have been using mad16 sound for some time now with no problems, current @@ -14,9 +16,9 @@ .config has: CONFIG_SOUND=m -CONFIG_ADLIB=m -CONFIG_MAD16=m -CONFIG_YM3812=m +CONFIG_SOUND_ADLIB=m +CONFIG_SOUND_MAD16=m +CONFIG_SOUND_YM3812=m modules.conf has: Index: OPL3-SA2 =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/Documentation/sound/OPL3-SA2,v retrieving revision 1.1.1.2 retrieving revision 1.2 diff -u -r1.1.1.2 -r1.2 --- OPL3-SA2 25 Feb 2001 23:15:25 -0000 1.1.1.2 +++ OPL3-SA2 9 Apr 2002 16:55:47 -0000 1.2 @@ -21,7 +21,7 @@ different chipset, the OPL3-SAx. After an email exhange with Yamaha, however, it turns out that the 719 is just a re-badged 715, and the chipsets are identical. The chipset detection code -has been updated to refkect this. +has been updated to reflect this. Anyways, all of these chipsets implement the following devices: Index: Opti =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/Documentation/sound/Opti,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- Opti 14 Jan 2001 20:04:39 -0000 1.1.1.1 +++ Opti 9 Apr 2002 16:55:47 -0000 1.2 @@ -29,21 +29,21 @@ Sound card support should be enabled as a module (chose m). Answer 'm' for these items: - Generic OPL2/OPL3 FM synthesizer support (CONFIG_ADLIB) - Microsoft Sound System support (CONFIG_MSS) - Support for OPTi MAD16 and/or Mozart based cards (CONFIG_MAD16) - FM synthesizer (YM3812/OPL-3) support (CONFIG_YM3812) + Generic OPL2/OPL3 FM synthesizer support (CONFIG_SOUND_ADLIB) + Microsoft Sound System support (CONFIG_SOUND_MSS) + Support for OPTi MAD16 and/or Mozart based cards (CONFIG_SOUND_MAD16) + FM synthesizer (YM3812/OPL-3) support (CONFIG_SOUND_YM3812) The configuration menu may ask for addresses, IRQ lines or DMA channels. If the card is used as a module the module loading options will override these values. For the OPTi 931 you can answer 'n' to: - Support MIDI in older MAD16 based cards (requires SB) (CONFIG_MAD16_OLDCARD) + Support MIDI in older MAD16 based cards (requires SB) (CONFIG_SOUND_MAD16_OLDCARD) If you do need MIDI support in a Mozart or C928 based card you need to answer 'm' to the above question. In that case you will also need to answer 'm' to: - '100% Sound Blaster compatibles (SB16/32/64, ESS, Jazz16) support' (CONFIG_SB) + '100% Sound Blaster compatibles (SB16/32/64, ESS, Jazz16) support' (CONFIG_SOUND_SB) Go on and compile your kernel and modules. Install the modules. Run depmod -a. Index: PAS16 =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/Documentation/sound/PAS16,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- PAS16 14 Jan 2001 20:05:12 -0000 1.1.1.1 +++ PAS16 9 Apr 2002 16:55:47 -0000 1.2 @@ -1,7 +1,7 @@ Pro Audio Spectrum 16 for 2.3.99 and later ========================================= by Thomas Molina (tm...@ho...) -last modified 26 Mar 2000 +last modified 3 Mar 2001 Acknowledgement to Axel Boldt (bo...@ma...) for stuff taken from Configure.help, Riccardo Facchetti for stuff from README.OSS, and others whose names I could not find. @@ -48,14 +48,6 @@ if you want to use the SB emulation of PAS16. It's also possible to the emulation if you want to use a true SB card together with PAS16 (there is another question about this that is asked later). - "Sound Blaster support", - - Answer 'y' if you have an original SB card made by Creative Labs - or a full 100% hardware compatible clone (like Thunderboard or - SM Games). If your card was in the list of supported cards (above), - please look at the card specific instructions later in this file - before answering this question. For an unknown card you may answer - 'y' if the card claims to be SB compatible. - Enable this option also with PAS16. "Generic OPL2/OPL3 FM synthesizer support", - Answer 'y' if your card has a FM chip made by Yamaha (OPL2/OPL3/OPL4). @@ -113,27 +105,13 @@ Answer Y only if you have a Pro Audio Spectrum 16, ProAudio Studio 16 or Logitech SoundMan 16 sound card. Don't answer Y if you have some other card made by Media Vision or Logitech since they are not - PAS16 compatible. + PAS16 compatible. It is not necessary to enable the separate + Sound Blaster support; it is included in the PAS driver. + If you compile the driver into the kernel, you have to add "pas2=<io>,<irq>,<dma>,<dma2>,<sbio>,<sbirq>,<sbdma>,<sbdma2> to the kernel command line. -100% Sound Blaster compatibles (SB16/32/64, ESS, Jazz16) support -CONFIG_SOUND_SB - Answer Y if you have an original Sound Blaster card made by Creative - Labs or a 100% hardware compatible clone (like the Thunderboard or - SM Games). For an unknown card you may answer Y if the card claims - to be Sound Blaster-compatible. The PAS16 has 8-bit Soundblaster - support, so you can answer Y here for it. - - Please read the file Documentation/sound/Soundblaster. - - If you compile the driver into the kernel and don't want to use isapnp, - you have to add "sb=<io>,<irq>,<dma>,<dma2>" to the kernel command line. - - You can say M here to compile this driver as a module; the module is - called sb.o. - FM Synthesizer (YM3812/OPL-3) support CONFIG_SOUND_YM3812 Answer Y if your card has a FM chip made by Yamaha (OPL2/OPL3/OPL4). @@ -167,7 +145,7 @@ CONFIG_SOUND_TRACEINIT=y CONFIG_SOUND_DMAP=y CONFIG_SOUND_PAS=y -CONFIG_SOUND_SB=y +CONFIG_SOUND_SB=n CONFIG_SOUND_YM3812=m I have also included the following append line in /etc/lilo.conf: Index: README.OSS =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/Documentation/sound/README.OSS,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- README.OSS 14 Jan 2001 20:05:04 -0000 1.1.1.1 +++ README.OSS 9 Apr 2002 16:55:47 -0000 1.2 @@ -17,6 +17,7 @@ document can be still interesting and very helpful. [ File edited 17.01.1999 - Riccardo Facchetti ] +[ Edited miroSOUND section 19.04.2001 - Robert Siemer ] OSS/Free version 3.8 release notes ---------------------------------- @@ -1325,26 +1326,37 @@ miroSOUND --------- -The miroSOUND PCM12 has been used successfully. This card is based on -the MAD16, OPL4, and CS4231A chips and everything said in the section -about MAD16 cards applies here, too. The only major difference between -the PCM12 and other MAD16 cards is that instead of the mixer in the -CS4231 codec a separate mixer controlled by an on-board 80C32 -microcontroller is used. Control of the mixer takes place via the ACI -(miro's audio control interface) protocol that is implemented in a -separate lowlevel driver. Make sure you compile this ACI driver -together with the normal MAD16 support when you use a miroSOUND PCM12 -card. The ACI mixer is controlled by /dev/mixer and the CS4231 mixer -by /dev/mixer2. You usually don't want to change anything on the -CS4231 mixer. - -The miroSOUND PCM12 is capable of full duplex operation (simultaneous -PCM replay and recording), which allows you to implement nice -real-time signal processing audio effect software and network -telephones. The ACI mixer has to be configured into a special "solo" +The miroSOUND PCM1-pro, PCM12 and PCM20 radio has been used +successfully. These cards are based on the MAD16, OPL4, and CS4231A chips +and everything said in the section about MAD16 cards applies here, +too. The only major difference between the PCMxx and other MAD16 cards +is that instead of the mixer in the CS4231 codec a separate mixer +controlled by an on-board 80C32 microcontroller is used. Control of +the mixer takes place via the ACI (miro's audio control interface) +protocol that is implemented in a separate lowlevel driver. Make sure +you compile this ACI driver together with the normal MAD16 support +when you use a miroSOUND PCMxx card. The ACI mixer is controlled by +/dev/mixer and the CS4231 mixer by /dev/mixer1 (depends on load +time). Only in special cases you want to change something regularly on +the CS4231 mixer. + +The miroSOUND PCM12 and PCM20 radio is capable of full duplex +operation (simultaneous PCM replay and recording), which allows you to +implement nice real-time signal processing audio effect software and +network telephones. The ACI mixer has to be switched into the "solo" mode for duplex operation in order to avoid feedback caused by the -mixer (input hears output signal). See lowlevel/aci.c for details on -the ioctl() for activating the "solo" mode. +mixer (input hears output signal). You can de-/activate this mode +through toggleing the record button for the wave controller with an +OSS-mixer. + +The PCM20 contains a radio tuner, which is also controlled by +ACI. This radio tuner is supported by the ACI driver together with the +miropcm20.o module. Also the 7-band equalizer is integrated +(limited by the OSS-design). Developement has started and maybe +finished for the RDS decoder on this card, too. You will be able to +read RadioText, the Programme Service name, Programme TYpe and +others. Even the v4l radio module benefits from it with a refined +strength value. See aci.[ch] and miropcm20*.[ch] for more details. The following configuration parameters have worked fine for the PCM12 in Markus Kuhn's system, many other configurations might work, too: @@ -1352,13 +1364,8 @@ CONFIG_MAD16_DMA2=0, CONFIG_MAD16_MPU_BASE=0x330, CONFIG_MAD16_MPU_IRQ=10, DSP_BUFFSIZE=65536, SELECTED_SOUND_OPTIONS=0x00281000. -The miroSOUND PCM1 pro and the PCM20 are very similar to the PCM12. -Perhaps the same ACI driver also works for these cards, however this -has never actually been tested. The PCM20 contains a radio tuner, -which is also controlled by ACI. This radio tuner is currently not -supported by the ACI driver, but documentation for it was provided by -miro and ACI tuner support could easily be added if someone is really -interested. +Bas van der Linden is using his PCM1-pro with a configuration that +differs in: CONFIG_MAD16_IRQ=7, CONFIG_MAD16_DMA=1, CONFIG_MAD16_MPU_IRQ=9 Compaq Deskpro XL ----------------- Index: es1370 =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/Documentation/sound/es1370,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- es1370 14 Jan 2001 20:04:46 -0000 1.1.1.1 +++ es1370 9 Apr 2002 16:55:47 -0000 1.2 @@ -1,3 +1,11 @@ +/proc/sound, /dev/sndstat +------------------------- + +/proc/sound and /dev/sndstat is not supported by the +driver. To find out whether the driver succeeded loading, +check the kernel log (dmesg). + + ALaw/uLaw sample formats ------------------------ @@ -59,4 +67,4 @@ Thomas Sailer -s...@if... +t....@al... Index: es1371 =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/Documentation/sound/es1371,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- es1371 14 Jan 2001 20:04:46 -0000 1.1.1.1 +++ es1371 9 Apr 2002 16:55:47 -0000 1.2 @@ -1,3 +1,11 @@ +/proc/sound, /dev/sndstat +------------------------- + +/proc/sound and /dev/sndstat is not supported by the +driver. To find out whether the driver succeeded loading, +check the kernel log (dmesg). + + ALaw/uLaw sample formats ------------------------ @@ -53,4 +61,4 @@ Thomas Sailer -s...@if... +t....@al... Index: solo1 =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/Documentation/sound/solo1,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- solo1 14 Jan 2001 20:05:08 -0000 1.1.1.1 +++ solo1 9 Apr 2002 16:55:47 -0000 1.2 @@ -1,3 +1,25 @@ +Recording +--------- + +Recording does not work on the author's card, but there +is at least one report of it working on later silicon. +The chip behaves differently than described in the data sheet, +likely due to a chip bug. Working around this would require +the help of ESS (for example by publishing an errata sheet), +but ESS has not done so so far. + +Also, the chip only supports 24 bit addresses for recording, +which means it cannot work on some Alpha mainboards. + + +/proc/sound, /dev/sndstat +------------------------- + +/proc/sound and /dev/sndstat is not supported by the +driver. To find out whether the driver succeeded loading, +check the kernel log (dmesg). + + ALaw/uLaw sample formats ------------------------ @@ -45,4 +67,4 @@ The card has an OPL compatible FM synthesizer. Thomas Sailer -s...@if... +t....@al... Index: sonicvibes =================================================================== RCS file: /cvsroot/linux-vax/kernel-2.4/Documentation/sound/sonicvibes,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -r1.1.1.1 -r1.2 --- sonicvibes 14 Jan 2001 20:04:46 -0000 1.1.1.1 +++ sonicvibes 9 Apr 2002 16:55:47 -0000 1.2 @@ -1,3 +1,11 @@ +/proc/sound, /dev/sndstat +------------------------- + +/proc/sound and /dev/sndstat is not supported by the +driver. To find out whether the driver succeeded loading, +check the kernel log (dmesg). + + ALaw/uLaw sample formats ------------------------ @@ -70,4 +78,4 @@ Thomas Sailer -s...@if... +t....@al... --- PCM1-pro DELETED --- --- via82cxxx.txt DELETED --- |