From 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Mon Sep 17 00:00:00 2001 From: Linus Torvalds Date: Sat, 16 Apr 2005 15:20:36 -0700 Subject: Linux-2.6.12-rc2 Initial git repository build. I'm not bothering with the full history, even though we have it. We can create a separate "historical" git archive of that later if we want to, and in the meantime it's about 3.2GB when imported into git - space that would just make the early git days unnecessarily complicated, when we don't have a lot of good infrastructure for it. Let it rip! --- sound/oss/CHANGELOG | 369 ++ sound/oss/COPYING | 339 ++ sound/oss/Kconfig | 1120 +++++++ sound/oss/Makefile | 187 ++ sound/oss/README.FIRST | 6 + sound/oss/ac97.c | 452 +++ sound/oss/ac97.h | 204 ++ sound/oss/ac97_codec.c | 1576 +++++++++ sound/oss/ac97_plugin_ad1980.c | 126 + sound/oss/aci.c | 711 ++++ sound/oss/aci.h | 57 + sound/oss/ad1816.c | 1369 ++++++++ sound/oss/ad1848.c | 3159 +++++++++++++++++ sound/oss/ad1848.h | 25 + sound/oss/ad1848_mixer.h | 253 ++ sound/oss/ad1889.c | 1103 ++++++ sound/oss/ad1889.h | 134 + sound/oss/adlib_card.c | 73 + sound/oss/aedsp16.c | 1381 ++++++++ sound/oss/ali5455.c | 3733 +++++++++++++++++++++ sound/oss/au1000.c | 2214 ++++++++++++ sound/oss/au1550_ac97.c | 2119 ++++++++++++ sound/oss/audio.c | 983 ++++++ sound/oss/audio_syms.c | 16 + sound/oss/awe_hw.h | 99 + sound/oss/awe_wave.c | 6147 ++++++++++++++++++++++++++++++++++ sound/oss/awe_wave.h | 77 + sound/oss/bin2hex.c | 39 + sound/oss/btaudio.c | 1136 +++++++ sound/oss/cmpci.c | 3378 +++++++++++++++++++ sound/oss/coproc.h | 12 + sound/oss/cs4232.c | 520 +++ sound/oss/cs4281/Makefile | 6 + sound/oss/cs4281/cs4281_hwdefs.h | 1234 +++++++ sound/oss/cs4281/cs4281_wrapper-24.c | 41 + sound/oss/cs4281/cs4281m.c | 4505 +++++++++++++++++++++++++ sound/oss/cs4281/cs4281pm-24.c | 84 + sound/oss/cs4281/cs4281pm.h | 74 + sound/oss/cs461x.h | 1691 ++++++++++ sound/oss/cs461x_image.h | 322 ++ sound/oss/cs46xx.c | 5794 ++++++++++++++++++++++++++++++++ sound/oss/cs46xx_wrapper-24.h | 56 + sound/oss/cs46xxpm-24.h | 52 + sound/oss/cs46xxpm.h | 70 + sound/oss/dev_table.c | 214 ++ sound/oss/dev_table.h | 405 +++ sound/oss/dm.h | 79 + sound/oss/dmabuf.c | 1298 +++++++ sound/oss/dmasound/Kconfig | 58 + sound/oss/dmasound/Makefile | 13 + sound/oss/dmasound/awacs_defs.h | 251 ++ sound/oss/dmasound/dac3550a.c | 210 ++ sound/oss/dmasound/dmasound.h | 277 ++ sound/oss/dmasound/dmasound_atari.c | 1600 +++++++++ sound/oss/dmasound/dmasound_awacs.c | 3176 ++++++++++++++++++ sound/oss/dmasound/dmasound_core.c | 1829 ++++++++++ sound/oss/dmasound/dmasound_paula.c | 743 ++++ sound/oss/dmasound/dmasound_q40.c | 634 ++++ sound/oss/dmasound/tas3001c.c | 850 +++++ sound/oss/dmasound/tas3001c.h | 64 + sound/oss/dmasound/tas3001c_tables.c | 375 +++ sound/oss/dmasound/tas3004.c | 1140 +++++++ sound/oss/dmasound/tas3004.h | 77 + sound/oss/dmasound/tas3004_tables.c | 301 ++ sound/oss/dmasound/tas_common.c | 214 ++ sound/oss/dmasound/tas_common.h | 284 ++ sound/oss/dmasound/tas_eq_prefs.h | 24 + sound/oss/dmasound/tas_ioctl.h | 24 + sound/oss/dmasound/trans_16.c | 897 +++++ sound/oss/emu10k1/8010.h | 737 ++++ sound/oss/emu10k1/Makefile | 17 + sound/oss/emu10k1/audio.c | 1588 +++++++++ sound/oss/emu10k1/audio.h | 44 + sound/oss/emu10k1/cardmi.c | 832 +++++ sound/oss/emu10k1/cardmi.h | 97 + sound/oss/emu10k1/cardmo.c | 229 ++ sound/oss/emu10k1/cardmo.h | 62 + sound/oss/emu10k1/cardwi.c | 373 +++ sound/oss/emu10k1/cardwi.h | 91 + sound/oss/emu10k1/cardwo.c | 643 ++++ sound/oss/emu10k1/cardwo.h | 90 + sound/oss/emu10k1/ecard.c | 157 + sound/oss/emu10k1/ecard.h | 113 + sound/oss/emu10k1/efxmgr.c | 220 ++ sound/oss/emu10k1/efxmgr.h | 270 ++ sound/oss/emu10k1/emuadxmg.c | 104 + sound/oss/emu10k1/hwaccess.c | 507 +++ sound/oss/emu10k1/hwaccess.h | 247 ++ sound/oss/emu10k1/icardmid.h | 163 + sound/oss/emu10k1/icardwav.h | 53 + sound/oss/emu10k1/irqmgr.c | 113 + sound/oss/emu10k1/irqmgr.h | 52 + sound/oss/emu10k1/main.c | 1475 ++++++++ sound/oss/emu10k1/midi.c | 613 ++++ sound/oss/emu10k1/midi.h | 78 + sound/oss/emu10k1/mixer.c | 690 ++++ sound/oss/emu10k1/passthrough.c | 236 ++ sound/oss/emu10k1/passthrough.h | 99 + sound/oss/emu10k1/recmgr.c | 147 + sound/oss/emu10k1/recmgr.h | 48 + sound/oss/emu10k1/timer.c | 176 + sound/oss/emu10k1/timer.h | 54 + sound/oss/emu10k1/voicemgr.c | 398 +++ sound/oss/emu10k1/voicemgr.h | 103 + sound/oss/es1370.c | 2789 +++++++++++++++ sound/oss/es1371.c | 3097 +++++++++++++++++ sound/oss/esssolo1.c | 2497 ++++++++++++++ sound/oss/forte.c | 2137 ++++++++++++ sound/oss/gus.h | 24 + sound/oss/gus_card.c | 293 ++ sound/oss/gus_hw.h | 50 + sound/oss/gus_linearvol.h | 18 + sound/oss/gus_midi.c | 256 ++ sound/oss/gus_vol.c | 153 + sound/oss/gus_wave.c | 3464 +++++++++++++++++++ sound/oss/hal2.c | 1557 +++++++++ sound/oss/hal2.h | 248 ++ sound/oss/harmony.c | 1330 ++++++++ sound/oss/hex2hex.c | 101 + sound/oss/i810_audio.c | 3658 ++++++++++++++++++++ sound/oss/ics2101.c | 247 ++ sound/oss/ite8172.c | 2259 +++++++++++++ sound/oss/iwmem.h | 36 + sound/oss/kahlua.c | 232 ++ sound/oss/mad16.c | 1097 ++++++ sound/oss/maestro.c | 3832 +++++++++++++++++++++ sound/oss/maestro.h | 60 + sound/oss/maestro3.c | 2973 ++++++++++++++++ sound/oss/maestro3.h | 821 +++++ sound/oss/maui.c | 478 +++ sound/oss/midi_ctrl.h | 22 + sound/oss/midi_syms.c | 29 + sound/oss/midi_synth.c | 697 ++++ sound/oss/midi_synth.h | 47 + sound/oss/midibuf.c | 431 +++ sound/oss/mpu401.c | 1826 ++++++++++ sound/oss/mpu401.h | 14 + sound/oss/msnd.c | 419 +++ sound/oss/msnd.h | 280 ++ sound/oss/msnd_classic.c | 3 + sound/oss/msnd_classic.h | 188 ++ sound/oss/msnd_pinnacle.c | 1922 +++++++++++ sound/oss/msnd_pinnacle.h | 249 ++ sound/oss/nec_vrc5477.c | 2059 ++++++++++++ sound/oss/nm256.h | 295 ++ sound/oss/nm256_audio.c | 1707 ++++++++++ sound/oss/nm256_coeff.h | 4697 ++++++++++++++++++++++++++ sound/oss/opl3.c | 1257 +++++++ sound/oss/opl3.h | 5 + sound/oss/opl3_hw.h | 246 ++ sound/oss/opl3sa.c | 329 ++ sound/oss/opl3sa2.c | 1129 +++++++ sound/oss/os.h | 51 + sound/oss/pas2.h | 17 + sound/oss/pas2_card.c | 458 +++ sound/oss/pas2_midi.c | 262 ++ sound/oss/pas2_mixer.c | 336 ++ sound/oss/pas2_pcm.c | 437 +++ sound/oss/pss.c | 1283 +++++++ sound/oss/rme96xx.c | 1861 ++++++++++ sound/oss/rme96xx.h | 78 + sound/oss/sb.h | 185 + sound/oss/sb_audio.c | 1098 ++++++ sound/oss/sb_card.c | 347 ++ sound/oss/sb_card.h | 149 + sound/oss/sb_common.c | 1291 +++++++ sound/oss/sb_ess.c | 1832 ++++++++++ sound/oss/sb_ess.h | 34 + sound/oss/sb_midi.c | 205 ++ sound/oss/sb_mixer.c | 768 +++++ sound/oss/sb_mixer.h | 105 + sound/oss/sequencer.c | 1684 ++++++++++ sound/oss/sequencer_syms.c | 30 + sound/oss/sgalaxy.c | 207 ++ sound/oss/sh_dac_audio.c | 325 ++ sound/oss/skeleton.c | 219 ++ sound/oss/sonicvibes.c | 2792 +++++++++++++++ sound/oss/sound_calls.h | 90 + sound/oss/sound_config.h | 154 + sound/oss/sound_firmware.h | 2 + sound/oss/sound_syms.c | 50 + sound/oss/sound_timer.c | 323 ++ sound/oss/soundcard.c | 751 +++++ sound/oss/soundvers.h | 2 + sound/oss/sscape.c | 1485 ++++++++ sound/oss/swarm_cs4297a.c | 2742 +++++++++++++++ sound/oss/sys_timer.c | 289 ++ sound/oss/trident.c | 4628 +++++++++++++++++++++++++ sound/oss/trident.h | 358 ++ sound/oss/trix.c | 525 +++ sound/oss/tuning.h | 29 + sound/oss/uart401.c | 481 +++ sound/oss/uart6850.c | 362 ++ sound/oss/ulaw.h | 69 + sound/oss/v_midi.c | 291 ++ sound/oss/v_midi.h | 15 + sound/oss/via82cxxx_audio.c | 3615 ++++++++++++++++++++ sound/oss/vidc.c | 561 ++++ sound/oss/vidc.h | 67 + sound/oss/vidc_fill.S | 218 ++ sound/oss/vwsnd.c | 3486 +++++++++++++++++++ sound/oss/waveartist.c | 2035 +++++++++++ sound/oss/waveartist.h | 92 + sound/oss/wavfront.c | 3538 +++++++++++++++++++ sound/oss/wf_midi.c | 880 +++++ sound/oss/ymfpci.c | 2691 +++++++++++++++ sound/oss/ymfpci.h | 360 ++ sound/oss/ymfpci_image.h | 1565 +++++++++ sound/oss/yss225.c | 319 ++ sound/oss/yss225.h | 24 + 210 files changed, 172711 insertions(+) create mode 100644 sound/oss/CHANGELOG create mode 100644 sound/oss/COPYING create mode 100644 sound/oss/Kconfig create mode 100644 sound/oss/Makefile create mode 100644 sound/oss/README.FIRST create mode 100644 sound/oss/ac97.c create mode 100644 sound/oss/ac97.h create mode 100644 sound/oss/ac97_codec.c create mode 100644 sound/oss/ac97_plugin_ad1980.c create mode 100644 sound/oss/aci.c create mode 100644 sound/oss/aci.h create mode 100644 sound/oss/ad1816.c create mode 100644 sound/oss/ad1848.c create mode 100644 sound/oss/ad1848.h create mode 100644 sound/oss/ad1848_mixer.h create mode 100644 sound/oss/ad1889.c create mode 100644 sound/oss/ad1889.h create mode 100644 sound/oss/adlib_card.c create mode 100644 sound/oss/aedsp16.c create mode 100644 sound/oss/ali5455.c create mode 100644 sound/oss/au1000.c create mode 100644 sound/oss/au1550_ac97.c create mode 100644 sound/oss/audio.c create mode 100644 sound/oss/audio_syms.c create mode 100644 sound/oss/awe_hw.h create mode 100644 sound/oss/awe_wave.c create mode 100644 sound/oss/awe_wave.h create mode 100644 sound/oss/bin2hex.c create mode 100644 sound/oss/btaudio.c create mode 100644 sound/oss/cmpci.c create mode 100644 sound/oss/coproc.h create mode 100644 sound/oss/cs4232.c create mode 100644 sound/oss/cs4281/Makefile create mode 100644 sound/oss/cs4281/cs4281_hwdefs.h create mode 100644 sound/oss/cs4281/cs4281_wrapper-24.c create mode 100644 sound/oss/cs4281/cs4281m.c create mode 100644 sound/oss/cs4281/cs4281pm-24.c create mode 100644 sound/oss/cs4281/cs4281pm.h create mode 100644 sound/oss/cs461x.h create mode 100644 sound/oss/cs461x_image.h create mode 100644 sound/oss/cs46xx.c create mode 100644 sound/oss/cs46xx_wrapper-24.h create mode 100644 sound/oss/cs46xxpm-24.h create mode 100644 sound/oss/cs46xxpm.h create mode 100644 sound/oss/dev_table.c create mode 100644 sound/oss/dev_table.h create mode 100644 sound/oss/dm.h create mode 100644 sound/oss/dmabuf.c create mode 100644 sound/oss/dmasound/Kconfig create mode 100644 sound/oss/dmasound/Makefile create mode 100644 sound/oss/dmasound/awacs_defs.h create mode 100644 sound/oss/dmasound/dac3550a.c create mode 100644 sound/oss/dmasound/dmasound.h create mode 100644 sound/oss/dmasound/dmasound_atari.c create mode 100644 sound/oss/dmasound/dmasound_awacs.c create mode 100644 sound/oss/dmasound/dmasound_core.c create mode 100644 sound/oss/dmasound/dmasound_paula.c create mode 100644 sound/oss/dmasound/dmasound_q40.c create mode 100644 sound/oss/dmasound/tas3001c.c create mode 100644 sound/oss/dmasound/tas3001c.h create mode 100644 sound/oss/dmasound/tas3001c_tables.c create mode 100644 sound/oss/dmasound/tas3004.c create mode 100644 sound/oss/dmasound/tas3004.h create mode 100644 sound/oss/dmasound/tas3004_tables.c create mode 100644 sound/oss/dmasound/tas_common.c create mode 100644 sound/oss/dmasound/tas_common.h create mode 100644 sound/oss/dmasound/tas_eq_prefs.h create mode 100644 sound/oss/dmasound/tas_ioctl.h create mode 100644 sound/oss/dmasound/trans_16.c create mode 100644 sound/oss/emu10k1/8010.h create mode 100644 sound/oss/emu10k1/Makefile create mode 100644 sound/oss/emu10k1/audio.c create mode 100644 sound/oss/emu10k1/audio.h create mode 100644 sound/oss/emu10k1/cardmi.c create mode 100644 sound/oss/emu10k1/cardmi.h create mode 100644 sound/oss/emu10k1/cardmo.c create mode 100644 sound/oss/emu10k1/cardmo.h create mode 100644 sound/oss/emu10k1/cardwi.c create mode 100644 sound/oss/emu10k1/cardwi.h create mode 100644 sound/oss/emu10k1/cardwo.c create mode 100644 sound/oss/emu10k1/cardwo.h create mode 100644 sound/oss/emu10k1/ecard.c create mode 100644 sound/oss/emu10k1/ecard.h create mode 100644 sound/oss/emu10k1/efxmgr.c create mode 100644 sound/oss/emu10k1/efxmgr.h create mode 100644 sound/oss/emu10k1/emuadxmg.c create mode 100644 sound/oss/emu10k1/hwaccess.c create mode 100644 sound/oss/emu10k1/hwaccess.h create mode 100644 sound/oss/emu10k1/icardmid.h create mode 100644 sound/oss/emu10k1/icardwav.h create mode 100644 sound/oss/emu10k1/irqmgr.c create mode 100644 sound/oss/emu10k1/irqmgr.h create mode 100644 sound/oss/emu10k1/main.c create mode 100644 sound/oss/emu10k1/midi.c create mode 100644 sound/oss/emu10k1/midi.h create mode 100644 sound/oss/emu10k1/mixer.c create mode 100644 sound/oss/emu10k1/passthrough.c create mode 100644 sound/oss/emu10k1/passthrough.h create mode 100644 sound/oss/emu10k1/recmgr.c create mode 100644 sound/oss/emu10k1/recmgr.h create mode 100644 sound/oss/emu10k1/timer.c create mode 100644 sound/oss/emu10k1/timer.h create mode 100644 sound/oss/emu10k1/voicemgr.c create mode 100644 sound/oss/emu10k1/voicemgr.h create mode 100644 sound/oss/es1370.c create mode 100644 sound/oss/es1371.c create mode 100644 sound/oss/esssolo1.c create mode 100644 sound/oss/forte.c create mode 100644 sound/oss/gus.h create mode 100644 sound/oss/gus_card.c create mode 100644 sound/oss/gus_hw.h create mode 100644 sound/oss/gus_linearvol.h create mode 100644 sound/oss/gus_midi.c create mode 100644 sound/oss/gus_vol.c create mode 100644 sound/oss/gus_wave.c create mode 100644 sound/oss/hal2.c create mode 100644 sound/oss/hal2.h create mode 100644 sound/oss/harmony.c create mode 100644 sound/oss/hex2hex.c create mode 100644 sound/oss/i810_audio.c create mode 100644 sound/oss/ics2101.c create mode 100644 sound/oss/ite8172.c create mode 100644 sound/oss/iwmem.h create mode 100644 sound/oss/kahlua.c create mode 100644 sound/oss/mad16.c create mode 100644 sound/oss/maestro.c create mode 100644 sound/oss/maestro.h create mode 100644 sound/oss/maestro3.c create mode 100644 sound/oss/maestro3.h create mode 100644 sound/oss/maui.c create mode 100644 sound/oss/midi_ctrl.h create mode 100644 sound/oss/midi_syms.c create mode 100644 sound/oss/midi_synth.c create mode 100644 sound/oss/midi_synth.h create mode 100644 sound/oss/midibuf.c create mode 100644 sound/oss/mpu401.c create mode 100644 sound/oss/mpu401.h create mode 100644 sound/oss/msnd.c create mode 100644 sound/oss/msnd.h create mode 100644 sound/oss/msnd_classic.c create mode 100644 sound/oss/msnd_classic.h create mode 100644 sound/oss/msnd_pinnacle.c create mode 100644 sound/oss/msnd_pinnacle.h create mode 100644 sound/oss/nec_vrc5477.c create mode 100644 sound/oss/nm256.h create mode 100644 sound/oss/nm256_audio.c create mode 100644 sound/oss/nm256_coeff.h create mode 100644 sound/oss/opl3.c create mode 100644 sound/oss/opl3.h create mode 100644 sound/oss/opl3_hw.h create mode 100644 sound/oss/opl3sa.c create mode 100644 sound/oss/opl3sa2.c create mode 100644 sound/oss/os.h create mode 100644 sound/oss/pas2.h create mode 100644 sound/oss/pas2_card.c create mode 100644 sound/oss/pas2_midi.c create mode 100644 sound/oss/pas2_mixer.c create mode 100644 sound/oss/pas2_pcm.c create mode 100644 sound/oss/pss.c create mode 100644 sound/oss/rme96xx.c create mode 100644 sound/oss/rme96xx.h create mode 100644 sound/oss/sb.h create mode 100644 sound/oss/sb_audio.c create mode 100644 sound/oss/sb_card.c create mode 100644 sound/oss/sb_card.h create mode 100644 sound/oss/sb_common.c create mode 100644 sound/oss/sb_ess.c create mode 100644 sound/oss/sb_ess.h create mode 100644 sound/oss/sb_midi.c create mode 100644 sound/oss/sb_mixer.c create mode 100644 sound/oss/sb_mixer.h create mode 100644 sound/oss/sequencer.c create mode 100644 sound/oss/sequencer_syms.c create mode 100644 sound/oss/sgalaxy.c create mode 100644 sound/oss/sh_dac_audio.c create mode 100644 sound/oss/skeleton.c create mode 100644 sound/oss/sonicvibes.c create mode 100644 sound/oss/sound_calls.h create mode 100644 sound/oss/sound_config.h create mode 100644 sound/oss/sound_firmware.h create mode 100644 sound/oss/sound_syms.c create mode 100644 sound/oss/sound_timer.c create mode 100644 sound/oss/soundcard.c create mode 100644 sound/oss/soundvers.h create mode 100644 sound/oss/sscape.c create mode 100644 sound/oss/swarm_cs4297a.c create mode 100644 sound/oss/sys_timer.c create mode 100644 sound/oss/trident.c create mode 100644 sound/oss/trident.h create mode 100644 sound/oss/trix.c create mode 100644 sound/oss/tuning.h create mode 100644 sound/oss/uart401.c create mode 100644 sound/oss/uart6850.c create mode 100644 sound/oss/ulaw.h create mode 100644 sound/oss/v_midi.c create mode 100644 sound/oss/v_midi.h create mode 100644 sound/oss/via82cxxx_audio.c create mode 100644 sound/oss/vidc.c create mode 100644 sound/oss/vidc.h create mode 100644 sound/oss/vidc_fill.S create mode 100644 sound/oss/vwsnd.c create mode 100644 sound/oss/waveartist.c create mode 100644 sound/oss/waveartist.h create mode 100644 sound/oss/wavfront.c create mode 100644 sound/oss/wf_midi.c create mode 100644 sound/oss/ymfpci.c create mode 100644 sound/oss/ymfpci.h create mode 100644 sound/oss/ymfpci_image.h create mode 100644 sound/oss/yss225.c create mode 100644 sound/oss/yss225.h (limited to 'sound/oss') diff --git a/sound/oss/CHANGELOG b/sound/oss/CHANGELOG new file mode 100644 index 000000000000..8706cd66ca1f --- /dev/null +++ b/sound/oss/CHANGELOG @@ -0,0 +1,369 @@ +Note these changes relate to Hannu's code and don't include the changes +made outside of this for modularising the sound + +Changelog for version 3.8o +-------------------------- + +Since 3.8h +- Included support for OPL3-SA1 and SoftOSS + +Since 3.8 +- Fixed SNDCTL_DSP_GETOSPACE +- Compatibility fixes for Linux 2.1.47 + +Since 3.8-beta21 +- Fixed all known bugs (I think). + +Since 3.8-beta8 +- Lot of fixes to audio playback code in dmabuf.c + +Since 3.8-beta6 +- Fixed the famous Quake delay bug. + +Since 3.8-beta5 +- Fixed many bugs in audio playback. + +Since 3.8-beta4 +- Just minor changes. + +Since 3.8-beta1 +- Major rewrite of audio playback handling. +- Added AWE32 support by Takashi Iwai (in ./lowlevel/). + +Since 3.7-beta# +- Passing of ioctl() parameters between soundcard.c and other modules has been +changed so that arg always points to kernel space. +- Some bugfixes. + +Since 3.7-beta5 +- Disabled MIDI input with GUS PnP (Interwave). There seems to be constant +stream of received 0x00 bytes when the MIDI receiver is enabled. + +Since 3.5 +- Changes almost everywhere. +- Support for OPTi 82C924-based sound cards. + +Since 3.5.4-beta8 +- Fixed a bug in handling of non-fragment sized writes in 16 bit/stereo mode + with GUS. +- Limited minimum fragment size with some audio devices (GUS=512 and + SB=32). These devices require more time to "recover" from processing + of each fragment. + +Since 3.5.4-beta6/7 +- There seems to be problems in the OPTi 82C930 so cards based on this + chip don't necessarily work yet. There are problems in detecting the + MIDI interface. Also mixer volumes may be seriously wrong on some systems. + You can safely use this driver version with C930 if it looks to work. + However please don't complain if you have problems with it. C930 support + should be fixed in future releases. +- Got initialization of GUS PnP to work. With this version GUS PnP should + work in GUS compatible mode after initialization using isapnptools. +- Fixed a bug in handling of full duplex cards in write only mode. This has + been causing "audio device opening" errors with RealAudio player. + +Since 3.5.4.beta5 +- Changes to OPTi 82C930 driver. +- Major changes to the Soundscape driver. The driver requires now just one + DMA channel. The extra audio/dsp device (the "Not functional" one) used + for code download in the earlier versions has been eliminated. There is now + just one /dev/dsp# device which is used both for code download and audio. + +Since 3.5.4.beta4 +- Minor changes. + +Since 3.5.4-beta2 +- Fixed silent playback with ESS 688/1688. +- Got SB16 to work without the 16 bit DMA channel (only the 8 bit one + is required for 8 and 16 bit modes). +- Added the "lowlevel" subdirectory for additional low level drivers that + are not part of USS core. See lowlevel/README for more info. +- Included support for ACI mixer (by Markus Kuhn). ACI is a mixer used in + miroPCM sound cards. See lowlevel/aci.readme for more info. +- Support for Aztech Washington chipset (AZT2316 ASIC). + +Since 3.5.4-beta1 +- Reduced clicking with AD1848. +- Support for OPTi 82C930. Only half duplex at this time. 16 bit playback + is sometimes just white noise (occurs randomly). + +Since 3.5.2 +- Major changes to the SB/Jazz16/ESS driver (most parts rewritten). + The most noticeable new feature is support for multiple SB cards at the same + time. +- Renamed sb16_midi.c to uart401.c. Also modified it to work also with + other MPU401 UART compatible cards than SB16/ESS/Jazz. +- Some changes which reduce clicking in audio playback. +- Copying policy is now GPL. + +Since 3.5.1 +- TB Maui initialization support +Since 3.5 +- Improved handling of playback underrun situations. + +Since 3.5-beta10 +- Bug fixing + +Since 3.5-beta9 +- Fixed for compatibility with Linux 1.3.70 and later. +- Changed boot time passing of 16 bit DMA channel number to SB driver. + +Since 3.5-beta8 +- Minor changes + +Since 3.5-beta7 +- enhancements to configure program (by Jeff Tranter): + - prompts are in same format as 1.3.x Linux kernel config program + - on-line help for each question + - fixed some compile warnings detected by gcc/g++ -Wall + - minor grammatical changes to prompts + +Since 3.5-beta6 +- Fixed bugs in mmap() support. +- Minor changes to Maui driver. + +Since 3.5-beta5 +- Fixed crash after recording with ESS688. It's generally a good + idea to stop inbound DMA transfers before freeing the memory + buffer. +- Fixed handling of AD1845 codec (for example Shuttle Sound System). +- Few other fixes. + +Since 3.5-beta4 +- Fixed bug in handling of uninitialized instruments with GUS. + +Since 3.5-beta3 +- Few changes which decrease popping at end/beginning of audio playback. + +Since 3.5-beta2 +- Removed MAD16+CS4231 hack made in previous version since it didn't + help. +- Fixed the above bug in proper way and in proper place. Many thanks + to James Hightower. + +Since 3.5-beta1 +- Bug fixes. +- Full duplex audio with MAD16+CS4231 may work now. The driver configures + SB DMA of MAD16 so that it doesn't conflict with codec's DMA channels. + The side effect is that all 8 bit DMA channels (0,1,3) are populated in + duplex mode. + +Since 3.5-alpha9 +- Bug fixes (mostly in Jazz16 and ESS1688/688 supports). +- Temporarily disabled recording with ESS1688/688 since it causes crash. +- Changed audio buffer partitioning algorithm so that it selects + smaller fragment size than earlier. This improves real time capabilities + of the driver and makes recording to disk to work better. Unfortunately + this change breaks some programs which assume that fragments cannot be + shorter than 4096 bytes. + +Since 3.5-alpha8 +- Bug fixes + +Since 3.5-alpha7 +- Linux kernel compatible configuration (_EXPERIMENTAL_). Enable + using command "cd /linux/drivers/sound;make script" and then + just run kernel's make config normally. +- Minor fixes to the SB support. Hopefully the driver works with + all SB models now. +- Added support for ESS ES1688 "AudioDrive" based cards. + +Since 3.5-alpha6 +- SB Pro and SB16 supports are no longer separately selectable options. + Enabling SB enables them too. +- Changed all #ifndef EXCLUDE_xx stuff to #ifdef CONFIG_xx. Modified +configure to handle this. +- Removed initialization messages from the +modularized version. They can be enabled by using init_trace=1 in +the insmod command line (insmod sound init_trace=1). +- More AIX stuff. +- Added support for synchronizing dsp/audio devices with /dev/sequencer. +- mmap() support for dsp/audio devices. + +Since 3.5-alpha5 +- AIX port. +- Changed some xxx_PATCH macros in soundcard.h to work with + big endian machines. + +Since 3.5-alpha4 +- Removed the 'setfx' stuff from the version distributed with kernel + sources. Running 'setfx' is required again. + +Since 3.5-alpha3 +- Moved stuff from the 'setfx' program to the AudioTrix Pro driver. + +Since 3.5-alpha2 +- Modifications to makefile and configure.c. Unnecessary sources + are no longer compiled. Newly created local.h is also copied to + /etc/soundconf. "make oldconfig" reads /etc/soundconf and produces + new local.h which is compatible with current version of the driver. +- Some fixes to the SB16 support. +- Fixed random protection fault in gus_wave.c + +Since 3.5-alpha1 +- Modified to work with Linux-1.3.33 and later +- Some minor changes + +Since 3.0.2 +- Support for CS4232 based PnP cards (AcerMagic S23 etc). +- Full duplex support for some CS4231, CS4232 and AD1845 based cards +(GUS MAX, AudioTrix Pro, AcerMagic S23 and many MAD16/Mozart cards +having a codec mentioned above). +- Almost fully rewritten loadable modules support. +- Fixed some bugs. +- Huge amount of testing (more testing is still required). +- mmap() support (works with some cards). Requires much more testing. +- Sample/patch/program loading for TB Maui/Tropez. No initialization +since TB doesn't allow me to release that code. +- Using CS4231 compatible codecs as timer for /dev/music. + +Since 3.0.1 +- Added allocation of I/O ports, DMA channels and interrupts +to the initialization code. This may break modules support since +the driver may not free some resources on unload. Should be fixed soon. + +Since 3.0 +- Some important bug fixes. +- select() for /dev/dsp and /dev/audio (Linux only). +(To use select() with read, you have to call read() to start +the recording. Calling write() kills recording immediately so +use select() carefully when you are writing a half duplex app. +Full duplex mode is not implemented yet.) Select works also with +/dev/sequencer and /dev/music. Maybe with /dev/midi## too. + +Since 3.0-beta2 +- Minor fixes. +- Added Readme.cards + +Since 3.0-beta1 +- Minor fixes to the modules support. +- Eliminated call to sb_free_irq() in ad1848.c +- Rewritten MAD16&Mozart support (not tested with MAD16 Pro). +- Fix to DMA initialization of PSS cards. +- Some fixes to ad1848/cs42xx mixer support (GUS MAX, MSS, etc.) +- Fixed some bugs in the PSS driver which caused I/O errors with + the MSS mode (/dev/dsp). + +Since 3.0-950506 +- Recording with GUS MAX fixed. It works when the driver is configured + to use two DMA channels with GUS MAX (16 bit ones recommended). + +Since 3.0-94xxxx +- Too many changes + +Since 3.0-940818 +- Fixes for Linux 1.1.4x. +- Disables Disney Sound System with SG NX Pro 16 (less noise). + +Since 2.90-2 +- Fixes to soundcard.h +- Non blocking mode to /dev/sequencer +- Experimental detection code for Ensoniq Soundscape. + +Since 2.90 +- Minor and major bug fixes + +Since pre-3.0-940712 +- GUS MAX support +- Partially working MSS/WSS support (could work with some cards). +- Hardware u-Law and A-Law support with AD1848/CS4248 and CS4231 codecs + (GUS MAX, GUS16, WSS etc). Hardware ADPCM is possible with GUS16 and + GUS MAX, but it doesn't work yet. +Since pre-3.0-940426 +- AD1848/CS4248/CS4231 codec support (MSS, GUS MAX, Aztec, Orchid etc). +This codec chip is used in various sound cards. This version is developed +for the 16 bit daughtercard of GUS. It should work with other cards also +if the following requirements are met: + - The I/O, IRQ and DMA settings are jumper selectable or + the card is initialized by booting DOS before booting Linux (etc.). + - You add the IO, IRQ and DMA settings manually to the local.h. + (Just define GUS16_BASE, GUS16_IRQ and GUS16_DMA). Note that + the base address bust be the base address of the codec chip not the + card itself. For the GUS16 these are the same but most MSS compatible + cards have the codec located at card_base+4. +- Some minor changes + +Since 2.5 (******* MAJOR REWRITE ***********) + +This version is based on v2.3. I have tried to maintain two versions +together so that this one should have the same features than v2.5. +Something may still be missing. If you notice such things, please let me +know. + +The Readme.v30 contains more details. + +- /dev/midi## devices. +- /dev/sequencer2 + +Since 2.5-beta2 +- Some fine tuning to the GUS v3.7 mixer code. +- Fixed speed limits for the plain SB (1.0 to 2.0). + +Since 2.5-beta +- Fixed OPL-3 detection with SB. Caused problems with PAS16. +- GUS v3.7 mixer support. + +Since 2.4 +- Mixer support for Sound Galaxy NX Pro (define __SGNXPRO__ on your local.h). +- Fixed truncated sound on /dev/dsp when the device is closed. +- Linear volume mode for GUS +- Pitch bends larger than +/- 2 octaves. +- MIDI recording for SB and SB Pro. (Untested). +- Some other fixes. +- SB16 MIDI and DSP drivers only initialized if SB16 actually installed. +- Implemented better detection for OPL-3. This should be useful if you + have an old SB Pro (the non-OPL-3 one) or a SB 2.0 clone which has a OPL-3. +- SVR4.2 support by Ian Hartas. Initial ALPHA TEST version (untested). + +Since 2.3b +- Fixed bug which made it impossible to make long recordings to disk. + Recording was not restarted after a buffer overflow situation. +- Limited mixer support for GUS. +- Numerous improvements to the GUS driver by Andrew Robinson. Including + some click removal etc. + +Since 2.3 +- Fixed some minor bugs in the SB16 driver. + +Since 2.2b +- Full SB16 DSP support. 8/16 bit, mono/stereo +- The SCO and FreeBSD versions should be in sync now. There are some + problems with SB16 and GUS in the FreeBSD versions. + The DMA buffer allocation of the SCO version has been polished but + there could still be some problems. At least it hogs memory. + The DMA channel + configuration method used in the SCO/System is a hack. +- Support for the MPU emulation of the SB16. +- Some big arrays are now allocated boot time. This makes the BSS segment + smaller which makes it possible to use the full driver with + NetBSD. These arrays are not allocated if no suitable sound card is available. +- Fixed a bug in the compute_and_set_volume in gus_wave.c +- Fixed the too fast mono playback problem of SB Pro and PAS16. + +Since 2.2 +- Stereo recording for SB Pro. Somehow it was missing and nobody + had noticed it earlier. +- Minor polishing. +- Interpreting of boot time arguments (sound=) for Linux. +- Breakup of sb_dsp.c. Parts of the code has been moved to + sb_mixer.c and sb_midi.c + +Since 2.1 +- Preliminary support for SB16. + - The SB16 mixer is supported in its native mode. + - Digitized voice capability up to 44.1 kHz/8 bit/mono + (16 bit and stereo support coming in the next release). +- Fixed some bugs in the digitized voice driver for PAS16. +- Proper initialization of the SB emulation of latest PAS16 models. + +- Significantly improved /dev/dsp and /dev/audio support. + - Now supports half duplex mode. It's now possible to record and + playback without closing and reopening the device. + - It's possible to use smaller buffers than earlier. There is a new + ioctl(fd, SNDCTL_DSP_SUBDIVIDE, &n) where n should be 1, 2 or 4. + This call instructs the driver to use smaller buffers. The default + buffer size (0.5 to 1.0 seconds) is divided by n. Should be called + immediately after opening the device. + +Since 2.0 +Just cosmetic changes. diff --git a/sound/oss/COPYING b/sound/oss/COPYING new file mode 100644 index 000000000000..916d1f0f2842 --- /dev/null +++ b/sound/oss/COPYING @@ -0,0 +1,339 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + Appendix: How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) 19yy + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) 19yy name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Library General +Public License instead of this License. diff --git a/sound/oss/Kconfig b/sound/oss/Kconfig new file mode 100644 index 000000000000..d303c2ed6e5a --- /dev/null +++ b/sound/oss/Kconfig @@ -0,0 +1,1120 @@ +# drivers/sound/Config.in +# +# 18 Apr 1998, Michael Elizabeth Chastain, +# More hacking for modularisation. +# +# Prompt user for primary drivers. +config SOUND_BT878 + tristate "BT878 audio dma" + depends on SOUND_PRIME!=n && SOUND + ---help--- + Audio DMA support for bt878 based grabber boards. As you might have + already noticed, bt878 is listed with two functions in /proc/pci. + Function 0 does the video stuff (bt848 compatible), function 1 does + the same for audio data. This is a driver for the audio part of + the chip. If you say 'Y' here you get a oss-compatible dsp device + where you can record from. If you want just watch TV you probably + don't need this driver as most TV cards handle sound with a short + cable from the TV card to your sound card's line-in. + + To compile this driver as a module, choose M here: the module will + be called btaudio. + +config SOUND_CMPCI + tristate "C-Media PCI (CMI8338/8738)" + depends on SOUND_PRIME!=n && SOUND && PCI + help + Say Y or M if you have a PCI sound card using the CMI8338 + or the CMI8738 chipset. Data on these chips are available at + . + + A userspace utility to control some internal registers of these + chips is available at + . + +config SOUND_CMPCI_FM + bool "Enable legacy FM" + depends on SOUND_CMPCI && X86 + help + Say Y here to enable the legacy FM (frequency-modulation) synthesizer + support on a card using the CMI8338 or CMI8378 chipset. Even it is + enabled, you need to set fmio as proper value to enable it. + Say N here if you don't need this. + +config SOUND_CMPCI_MIDI + bool "Enable legacy MPU-401" + depends on SOUND_CMPCI && X86 + help + Say Y here to enable the legacy MPU401 MIDI synthesizer support on a + card using the CMI8338 or CMI8378 chipset. Even it is enabled, + you need to set mpuio as proper value to enable it. + Say N here if you don't need this. + +config SOUND_CMPCI_JOYSTICK + bool "Enable joystick" + depends on SOUND_CMPCI && X86 + help + Say Y here in order to enable the joystick port on a sound card using + the CMI8338 or the CMI8738 chipset. You need to config the + gameport support and set joystick parameter as 1 to use it. + Say N here if you don't need this. + +config SOUND_EMU10K1 + tristate "Creative SBLive! (EMU10K1)" + depends on SOUND_PRIME!=n && SOUND && PCI + ---help--- + Say Y or M if you have a PCI sound card using the EMU10K1 chipset, + such as the Creative SBLive!, SB PCI512 or Emu-APS. + + For more information on this driver and the degree of support for + the different card models please check: + + + + It is now possible to load dsp microcode patches into the EMU10K1 + chip. These patches are used to implement real time sound + processing effects which include for example: signal routing, + bass/treble control, AC3 passthrough, ... + Userspace tools to create new patches and load/unload them can be + found in the emu-tools package at the above URL. + +config MIDI_EMU10K1 + bool "Creative SBLive! MIDI (EXPERIMENTAL)" + depends on SOUND_EMU10K1 && EXPERIMENTAL + help + Say Y if you want to be able to use the OSS /dev/sequencer + interface. This code is still experimental. + +config SOUND_FUSION + tristate "Crystal SoundFusion (CS4280/461x)" + depends on SOUND_PRIME!=n && SOUND + help + This module drives the Crystal SoundFusion devices (CS4280/46xx + series) when wired as native sound drivers with AC97 codecs. If + this driver does not work try the CS4232 driver. + +config SOUND_CS4281 + tristate "Crystal Sound CS4281" + depends on SOUND_PRIME!=n && SOUND + help + Picture and feature list at + . + +config SOUND_BCM_CS4297A + tristate "Crystal Sound CS4297a (for Swarm)" + depends on SOUND_PRIME!=n && SIBYTE_SWARM && SOUND + help + The BCM91250A has a Crystal CS4297a on synchronous serial + port B (in addition to the DB-9 serial port). Say Y or M + here to enable the sound chip instead of the UART. Also + note that CONFIG_KGDB should not be enabled at the same + time, since it also attempts to use this UART port. + +config SOUND_ES1370 + tristate "Ensoniq AudioPCI (ES1370)" + depends on SOUND_PRIME!=n && SOUND && PCI && SOUND_GAMEPORT + help + Say Y or M if you have a PCI sound card utilizing the Ensoniq + ES1370 chipset, such as Ensoniq's AudioPCI (non-97). To find + out if your sound card uses an ES1370 without removing your + computer's cover, use lspci -n and look for the PCI ID + 1274:5000. Since Ensoniq was bought by Creative Labs, + Sound Blaster 64/PCI models are either ES1370 or ES1371 based. + This driver differs slightly from OSS/Free, so PLEASE READ + . + +config SOUND_ES1371 + tristate "Creative Ensoniq AudioPCI 97 (ES1371)" + depends on SOUND_PRIME!=n && SOUND && PCI && SOUND_GAMEPORT + help + Say Y or M if you have a PCI sound card utilizing the Ensoniq + ES1371 chipset, such as Ensoniq's AudioPCI97. To find out if + your sound card uses an ES1371 without removing your computer's + cover, use lspci -n and look for the PCI ID 1274:1371. Since + Ensoniq was bought by Creative Labs, Sound Blaster 64/PCI + models are either ES1370 or ES1371 based. This driver differs + slightly from OSS/Free, so PLEASE READ + . + +config SOUND_ESSSOLO1 + tristate "ESS Technology Solo1" + depends on SOUND_PRIME!=n && SOUND && SOUND_GAMEPORT && PCI + help + Say Y or M if you have a PCI sound card utilizing the ESS Technology + Solo1 chip. To find out if your sound card uses a + Solo1 chip without removing your computer's cover, use + lspci -n and look for the PCI ID 125D:1969. This driver + differs slightly from OSS/Free, so PLEASE READ + . + +config SOUND_MAESTRO + tristate "ESS Maestro, Maestro2, Maestro2E driver" + depends on SOUND_PRIME!=n && SOUND && PCI + help + Say Y or M if you have a sound system driven by ESS's Maestro line + of PCI sound chips. These include the Maestro 1, Maestro 2, and + Maestro 2E. See for more + details. + +config SOUND_MAESTRO3 + tristate "ESS Maestro3/Allegro driver (EXPERIMENTAL)" + depends on SOUND_PRIME!=n && SOUND && PCI && EXPERIMENTAL + help + Say Y or M if you have a sound system driven by ESS's Maestro 3 + PCI sound chip. + +config SOUND_ICH + tristate "Intel ICH (i8xx) audio support" + depends on SOUND_PRIME!=n && PCI + help + Support for integral audio in Intel's I/O Controller Hub (ICH) + chipset, as used on the 810/820/840 motherboards. + +config SOUND_HARMONY + tristate "PA Harmony audio driver" + depends on GSC_LASI && SOUND_PRIME!=n + help + Say 'Y' or 'M' to include support for Harmony soundchip + on HP 712, 715/new and many other GSC based machines. + +config SOUND_SONICVIBES + tristate "S3 SonicVibes" + depends on SOUND_PRIME!=n && SOUND && SOUND_GAMEPORT + help + Say Y or M if you have a PCI sound card utilizing the S3 + SonicVibes chipset. To find out if your sound card uses a + SonicVibes chip without removing your computer's cover, use + lspci -n and look for the PCI ID 5333:CA00. This driver + differs slightly from OSS/Free, so PLEASE READ + . + +config SOUND_VWSND + tristate "SGI Visual Workstation Sound" + depends on SOUND_PRIME!=n && X86_VISWS && SOUND + help + Say Y or M if you have an SGI Visual Workstation and you want to be + able to use its on-board audio. Read + for more info on this driver's + capabilities. + +config SOUND_HAL2 + tristate "SGI HAL2 sound (EXPERIMENTAL)" + depends on SOUND_PRIME!=n && SOUND && SGI_IP22 && EXPERIMENTAL + help + Say Y or M if you have an SGI Indy system and want to be able to + use it's on-board A2 audio system. + +config SOUND_IT8172 + tristate "IT8172G Sound" + depends on SOUND_PRIME!=n && (MIPS_ITE8172 || MIPS_IVR) && SOUND + +config SOUND_VRC5477 + tristate "NEC Vrc5477 AC97 sound" + depends on SOUND_PRIME!=n && DDB5477 && SOUND + help + Say Y here to enable sound support for the NEC Vrc5477 chip, an + integrated, multi-function controller chip for MIPS CPUs. Works + with the AC97 codec. + +config SOUND_AU1000 + tristate "Au1000 Sound" + depends on SOUND_PRIME!=n && (SOC_AU1000 || SOC_AU1100 || SOC_AU1500) && SOUND + +config SOUND_AU1550_AC97 + tristate "Au1550 AC97 Sound" + depends on SOUND_PRIME!=n && SOC_AU1550 && SOUND + +config SOUND_TRIDENT + tristate "Trident 4DWave DX/NX, SiS 7018 or ALi 5451 PCI Audio Core" + depends on SOUND_PRIME!=n && SOUND && SOUND_GAMEPORT + ---help--- + Say Y or M if you have a PCI sound card utilizing the Trident + 4DWave-DX/NX chipset or your mother board chipset has SiS 7018 + or ALi 5451 built-in. The SiS 7018 PCI Audio Core is embedded + in SiS960 Super South Bridge and SiS540/630 Single Chipset. + The ALi 5451 PCI Audio Core is embedded in ALi M1535, M1535D, + M1535+ or M1535D+ South Bridge. + + Use lspci -n to find out if your sound card or chipset uses + Trident 4DWave or SiS 7018. PCI ID 1023:2000 or 1023:2001 stands + for Trident 4Dwave. PCI ID 1039:7018 stands for SiS7018. PCI ID + 10B9:5451 stands for ALi5451. + + This driver supports S/PDIF in/out (record/playback) for ALi 5451 + embedded in ALi M1535+ and M1535D+. Note that they aren't all + enabled by default; you can enable them by saying Y to "/proc file + system support" and "Sysctl support", and after the /proc file + system has been mounted, executing the command + + command what is enabled + + echo 0>/proc/ALi5451 pcm out is also set to S/PDIF out. (Default). + + echo 1>/proc/ALi5451 use S/PDIF out to output pcm data. + + echo 2>/proc/ALi5451 use S/PDIF out to output non-pcm data. + (AC3...). + + echo 3>/proc/ALi5451 record from Ac97 in(MIC, Line in...). + (Default). + + echo 4>/proc/ALi5451 no matter Ac97 settings, record from S/PDIF + in. + + + This driver differs slightly from OSS/Free, so PLEASE READ the + comments at the top of . + +config SOUND_MSNDCLAS + tristate "Support for Turtle Beach MultiSound Classic, Tahiti, Monterey" + depends on SOUND_PRIME!=n && SOUND && (m || !STANDALONE) + help + Say M here if you have a Turtle Beach MultiSound Classic, Tahiti or + Monterey (not for the Pinnacle or Fiji). + + See for important information + about this driver. Note that it has been discontinued, but the + Voyetra Turtle Beach knowledge base entry for it is still available + at . + +comment "Compiled-in MSND Classic support requires firmware during compilation." + depends on SOUND_PRIME && SOUND_MSNDCLAS=y + +config MSNDCLAS_HAVE_BOOT + bool + depends on SOUND_MSNDCLAS=y && !STANDALONE + default y + +config MSNDCLAS_INIT_FILE + string "Full pathname of MSNDINIT.BIN firmware file" + depends on SOUND_MSNDCLAS + default "/etc/sound/msndinit.bin" + help + The MultiSound cards have two firmware files which are required for + operation, and are not currently included. These files can be + obtained from Turtle Beach. See + for information on how to + obtain this. + +config MSNDCLAS_PERM_FILE + string "Full pathname of MSNDPERM.BIN firmware file" + depends on SOUND_MSNDCLAS + default "/etc/sound/msndperm.bin" + help + The MultiSound cards have two firmware files which are required for + operation, and are not currently included. These files can be + obtained from Turtle Beach. See + for information on how to + obtain th