Poul-Henning Kamp
f83880518b
Send the remains (such as I have located) of "block major numbers" to
...
the bit-bucket.
2001-03-26 12:41:29 +00:00
Cameron Grant
26799605fc
fix whitespace bogons
2001-03-25 21:43:24 +00:00
Cameron Grant
35910bd13e
release resources if one of the speculative probes in opti_detect() fails,
...
otherwise resource_list_alloc panics when opti_detect tries its next probe.
2001-03-25 19:09:06 +00:00
Cameron Grant
4e5f69d4dd
the softc is not a mutex, don't try to lock it.
...
Submitted by: George Reid <greid@ukug.uk.freebsd.org>
2001-03-25 18:56:48 +00:00
Cameron Grant
66ef8af5b0
mega-commit.
...
this introduces a new buffering mechanism which results in dramatic
simplification of the channel manager.
as several structures have changed, we take the opportunity to move their
definitions into the source files where they are used, make them private and
de-typedef them.
the sound drivers are updated to use snd_setup_intr instead of
bus_setup_intr, and to comply with the de-typedefed structures.
the ac97, mixer and channel layers have been updated with finegrained
locking, as have some drivers- not all though. the rest will follow soon.
2001-03-24 23:10:29 +00:00
Cameron Grant
c78683be1f
when writing to one of the setup registers, a 32-bit write is required.
...
this apparently fixes problems initialising certain es1371/es1373/ct5880
revisions.
Confirmed working by: Richard J Kuhns <rjk@grauel.com>
PR: i386/25944
2001-03-24 20:36:59 +00:00
Cameron Grant
64738af72b
add support for opti924 and opti930 chips
...
both should work in non-pnp mode, the 924 should also work in its rather
braindead pnp mode- it will adopt port 0x530 unless given hints due to it
starting up in soundblaster mode and thus not requesting a valid mss port
address.
Submitted by: George Reid <greid@ukug.uk.freebsd.org>
2001-03-24 00:22:01 +00:00
Cameron Grant
715082895a
* power up the external amplifier
...
* after chip reset, reapply power settings
2001-03-23 16:39:01 +00:00
Cameron Grant
73770282cf
add/correct a bunch of codec ids
...
Obtained from: linux, alsa, various datasheets
2001-03-22 02:41:24 +00:00
Orion Hodson
50aac86c8a
Change type of channel speed variable from "int" to "u_int32_t" to
...
avoid overflow when scaling playback rate. Fixes 44.1k playback from
being 48k (I am deaf to this difference...).
2001-03-21 14:10:51 +00:00
Orion Hodson
bd01f3f982
Change ordering of SPDIF register pokes. SPDIF enable needs to be the
...
last poke in sequence. Enabling SPDIF was coercing output rate to
48K, not good for 44.1K tracks.
2001-03-21 12:51:37 +00:00
Orion Hodson
dfe67249d2
pcm driver for S3 Sonicvibes chipset.
...
Reviewed by: Cameron Grant
2001-03-19 00:26:41 +00:00
Cameron Grant
c6c3b893e5
destroy child devices on detach to prevent ever-increasing numbers of
...
pcm/midi devices trying to attach if the module is repeatedly loaded and
unloaded.
2001-03-17 16:04:25 +00:00
Cameron Grant
bd22a64c45
fix a typo preventing the second dma channel being released
...
use isa_dma_release when releasing dma channels
2001-03-16 21:04:14 +00:00
Cameron Grant
effbadb7eb
don't leak memory allocated for feeders at module unload
...
kill the fake channel when unregistering
2001-03-16 20:58:44 +00:00
Seigo Tanimura
5ddde3e6fd
- Do not touch the Giant.
...
Requested by: jhb
- Initialize a mutex prior to locking it.
Spotted by: dcs
2001-03-14 07:29:47 +00:00
Cameron Grant
9a1ec7ebfd
fix a panic triggerable by anyone with read/write access to the audio
...
devices. opening /dev/{dsp,dspW,audio}0 and then opening a different device
from that list and closing it resulted in a panic when any operation is
performed on the first fd.
we prevent this happening by denying the second open unless it uses the same
minor device as the first.
PR: kern/25519
2001-03-13 18:43:22 +00:00
Cameron Grant
86c1b69bbb
increase timeouts for ad_wait_init()
2001-03-05 17:59:36 +00:00
Cameron Grant
415dc6874f
MFS: don't ignore the result of mixer_init()
2001-03-05 17:51:28 +00:00
Cameron Grant
1c46beb55c
only mess with the power state on 5.x
2001-03-05 17:30:43 +00:00
Cameron Grant
a0585a78aa
MFS: add kobj.h to reduce diffs from -stable
2001-03-05 16:47:35 +00:00
Cameron Grant
96aa9dc9e1
MFS: don't pagefault in sndbuf_clear
2001-03-05 16:45:38 +00:00
Cameron Grant
b3ada620e8
MFS: #ifdef dynamic sysctl stuff to reduce diffs from -stable
2001-03-05 16:43:43 +00:00
Cameron Grant
00d6c0c690
MFS: add '# KOBJ' as the first line of each .m file to reduce diffs from
...
-stable
2001-03-05 16:42:06 +00:00
Cameron Grant
dec507e8f7
enable per-device sysctls unconditionally
2001-03-05 15:58:05 +00:00
Cameron Grant
a983d57528
nuke the splstack stuff, snd_mtx* will now be no-ops on 4.x
2001-03-05 15:49:42 +00:00
Scott Long
ea0e6ecfe9
Don't re-init the mixer on resume. This keeps the channel volumes from
...
being trashed when you suspend, though this may need to be revisited if we
ever get suspend-to-disk implememted.
2001-02-27 18:40:07 +00:00
Cameron Grant
1b0dabf0c0
Add speaker volume adjusting support
...
Submitted by: Tai-hwa Liang <avatar@mmlab.cse.yzu.edu.tw>
PR: i386/21452
2001-02-27 12:44:31 +00:00
Cameron Grant
37209180a5
add functions for sound drivers to use for locking and setting up interrupt
...
handlers. these are not yet used, but will allow compatibility for driver
modules from 5.x to 4.x.
2001-02-27 07:45:09 +00:00
Cameron Grant
82db23e2af
MFS: 4.x/5.x compatibility #ifdefs
2001-02-27 07:01:49 +00:00
Cameron Grant
041e207dec
MFS: 4.x/5.x compatibility #defines
2001-02-27 06:58:55 +00:00
Seigo Tanimura
87a636ccb0
- Mutexify midi(4). The driver runs under the giant lock by default.
...
If you ever want to run midi(4) out of the giant lock, uncomment
MIDI_OUTOFGIANT in midi.h. Confirmed to work for csamidi with WITNESS
and INVARIANTS.
- midi_info, midi_open and seq_info are now tailqs, allowing arbitrary
numbers of devices to be configured.
- Do not send an active sensing message to reset midi modules.
- Clone /dev/sequencer*. /dev/sequencer0 and /dev/sequencer are generated
upon initialization.
2001-02-26 07:36:24 +00:00
Seigo Tanimura
941afeb22d
Encapselate midi_info, nmidi and nsynth into midi.c.
2001-02-18 15:58:56 +00:00
Yoshihiro Takahashi
38bc72e431
Don't assume bus_space_handle_t == the start address of resource.
...
Use rman_get_start() instead.
2001-02-16 13:29:41 +00:00
Cameron Grant
40765b397d
add a format feeder for conversion from alaw to ulaw and vice versa.
...
Submitted by: Orion Hodson <O.Hodson@cs.ucl.ac.uk>
2001-02-13 22:00:57 +00:00
Cameron Grant
7ec3c4620e
make attempts to set unsupported speeds or formats non-sticky. this should
...
fix problems with apps that probe for a variety of settings.
Submitted by: Orion Hodson <O.Hodson@cs.ucl.ac.uk>
2001-02-13 21:57:34 +00:00
Cameron Grant
9725922ed9
add power management support.
...
Submitted by: Orion Hodson <O.Hodson@cs.ucl.ac.uk>
2001-02-13 21:00:22 +00:00
Cameron Grant
d55a14469f
back out rev 1.49, looks like i committed it from the wrong tree.
...
include the changes 1.49 was supposed to have.
Noticed by: peter
2001-02-07 20:45:40 +00:00
Cameron Grant
9d7227e565
conditionalize "hwptr went backwards" messages
...
modify default buffer size heuristic to not max out at 4k. mpg123 should now
behave better under load.
2001-02-07 06:48:28 +00:00
Cameron Grant
17e401f8a9
add driver for CS4281 sound chips
...
Submitted by: Orion Hodson <O.Hodson@cs.ucl.ac.uk>
2001-02-04 19:23:35 +00:00
Cameron Grant
ebbb717721
add driver for CMedia CMI8338/CMI8738 sound chips
...
Submitted by: Orion Hodson <O.Hodson@cs.ucl.ac.uk>
2001-02-04 19:13:40 +00:00
Cameron Grant
d60a6a8e0c
quieten the esscontrol device
2001-02-02 16:41:06 +00:00
Scott Long
a5108eaebf
Driver for the ESS Maestro3 and Allegro sound chips. Note that due to the
...
amount of GPL'd firmware in the driver, it will only be built as a module.
Approved by: cg
2001-02-01 20:29:16 +00:00
Cameron Grant
1a8de399e7
don't grope around inside snd_dbuf structures as they will change in future
2001-01-24 01:36:15 +00:00
Cameron Grant
2707da0758
fix certain cards failing to attach
...
Submitted by: Russell Cattelan <cattelan@thebarn.com>
2001-01-24 01:27:31 +00:00
Cameron Grant
03d18442f6
fix blocksizing for playback, implement blocksizing for record
2001-01-24 01:22:53 +00:00
Cameron Grant
7ed9700b1f
some cosmetics, changed channel setup and revamped irq handling - ignore
...
repeated interrupts
2001-01-24 01:20:04 +00:00
Cameron Grant
6e64c174bd
prevent excessively small buffer sizes resulting in hundreds of irqs per
...
second
2001-01-24 01:15:50 +00:00
John Baldwin
399fde35e8
Tag unused functions with __unused.
2001-01-23 22:18:41 +00:00
John Baldwin
e97abfe751
Catch up to the name changes in the hwvol API.
2001-01-11 23:26:38 +00:00