History log of /freebsd/sys/dev/sound/pcm/dsp.c (Results 176 – 200 of 335)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# faeebea2 18-Jun-2001 Cameron Grant <cg@FreeBSD.org>

revise dsp_clone() to return the first nonbusy channel instead of simply
cycling channel numbers.

remove unused fields from struct snddev_info.


# 5210620e 17-Jun-2001 Cameron Grant <cg@FreeBSD.org>

fix a potential panic in dsp_clone() if no pcm devices were detected


# d95502a8 16-Jun-2001 Cameron Grant <cg@FreeBSD.org>

use a global devclass for all drivers - i'm not entirely sure why this
worked before.

mixer, dsp and sndstat are seperate devices - give them their own cdevsws
instead of demuxing requests sent to a

use a global devclass for all drivers - i'm not entirely sure why this
worked before.

mixer, dsp and sndstat are seperate devices - give them their own cdevsws
instead of demuxing requests sent to a single cdevsw.

use the si_drv1/si_drv2 fields in dev_t structures for holding information
specific to an open instance of mixer/dsp.

nuke /dev/{dsp,dspW,audio}[0-9]* links - this functionality is now provided
using cloning.

various locking fixes.

show more ...


# b8f0d9e0 14-Jun-2001 Cameron Grant <cg@FreeBSD.org>

various locking fixes, rework open logic and channel registration

PR: kern/28084


# 285648f9 27-May-2001 Cameron Grant <cg@FreeBSD.org>

beginnings of virtual playback channel support

instead of using two malloced arrays for storing channel lists, use an
slist. convert the sndstat device to use sbufs and optionally provide more
deta

beginnings of virtual playback channel support

instead of using two malloced arrays for storing channel lists, use an
slist. convert the sndstat device to use sbufs and optionally provide more
detail about channel state.

vchans are software mixed playback channels. they are not enabled by this
commit. they use the feeder infrastructure to emulate normal playback
channels in a manner transparent to applications, whilst providing as many
channels are desired, especially suitable for devices with only one hardware
playback channel. in the future they will provide additional features.

those wishing to test this functionality will need to add vchan.c to
sys/conf/files and use 'sysctl -w hw.snd.pcm0.vchans' to enable it.

blocksize and auto-rate selection are not yet supported.

show more ...


Revision tags: release/4.3.0_cvs, release/4.3.0
# 66ef8af5 25-Mar-2001 Cameron Grant <cg@FreeBSD.org>

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
def

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.

show more ...


# 9a1ec7eb 13-Mar-2001 Cameron Grant <cg@FreeBSD.org>

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 wh

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

show more ...


# 350a5faf 23-Dec-2000 Cameron Grant <cg@FreeBSD.org>

update code dealing with snd_dbuf objects to do so using a functional interface

modify chn_setblocksize() to pick a default soft-blocksize appropriate to the
sample rate and format in use. it will

update code dealing with snd_dbuf objects to do so using a functional interface

modify chn_setblocksize() to pick a default soft-blocksize appropriate to the
sample rate and format in use. it will aim for a power of two size small
enough to generate block sizes of at most 20ms. it will also set the
hard-blocksize taking into account rate/format conversions in use.

update drivers to implement setblocksize correctly:
updated, tested: sb16, emu10k1, maestro, solo
updated, untested: ad1816, ess, mss, sb8, csa
not updated: ds1, es137x, fm801, neomagic, t4dwave, via82c686

i lack hardware to test: ad1816, csa, fm801, neomagic
others will be updated/tested in the next few days.

show more ...


# 0f55ac6c 18-Dec-2000 Cameron Grant <cg@FreeBSD.org>

kobjify.

this gives us several benefits, including:

* easier extensibility- new optional methods can be added to
ac97/mixer/channel classes without having to fixup every driver.

* forward compat

kobjify.

this gives us several benefits, including:

* easier extensibility- new optional methods can be added to
ac97/mixer/channel classes without having to fixup every driver.

* forward compatibility for drivers, provided no new mandatory methods are
added.

show more ...


Revision tags: release/4.2.0
# 41b3c726 07-Nov-2000 Cameron Grant <cg@FreeBSD.org>

if a channel dies, rejuvenate it on close()


# d16b5673 28-Oct-2000 Cameron Grant <cg@FreeBSD.org>

implement SNDCTL_DSP_POST


# c0960a5e 26-Oct-2000 Cameron Grant <cg@FreeBSD.org>

handle AFMT_QUERY right


Revision tags: release/4.1.1_cvs
# 513693be 21-Aug-2000 Cameron Grant <cg@FreeBSD.org>

rework feeder sytem to allow feeders in klds

modify driver capability reporting format to list every audio format
seperately- required for above and because we could not previously indicate
that mon

rework feeder sytem to allow feeders in klds

modify driver capability reporting format to list every audio format
seperately- required for above and because we could not previously indicate
that mono was unsupported.

there should be no functional impact.

show more ...


# fa06efc7 19-Aug-2000 Cameron Grant <cg@FreeBSD.org>

fix SNDCTL_DSP_GETODELAY

PR: kern/20340
Submitted by: Takashi SHIRAI <shirai@nintendo.co.jp>


# 05a1fdb4 03-Aug-2000 Nick Sayer <nsayer@FreeBSD.org>

Simplex devices will always report EBUSY on 2nd (and subsequent)
opens if the reference count is not decremented on close.

Note that this may result in the reference count being corrupted
on full du

Simplex devices will always report EBUSY on 2nd (and subsequent)
opens if the reference count is not decremented on close.

Note that this may result in the reference count being corrupted
on full duplex devices (due to mismatching opens/closes), but the
code doesn't use the reference count for anything on full duplex
devices.

show more ...


# e04387c9 30-Jul-2000 Cameron Grant <cg@FreeBSD.org>

fix a bug where opening /dev/dsp twice resulted in it being busy until reboot


Revision tags: release/4.1.0, release/3.5.0_cvs
# e4d5b250 21-Jun-2000 Cameron Grant <cg@FreeBSD.org>

fix a bug where opening for write would not fail if channel allocation failed

when playing, if we stall for 1s with no data advancing, abort and mark the
channel dead - fail all future operations


# 1a50bd2e 07-Jun-2000 Cameron Grant <cg@FreeBSD.org>

handle duplex properly in the AIOGCAP ioctl - this may (partially?) fix rat


# 94e3845c 27-May-2000 Cameron Grant <cg@FreeBSD.org>

fix the return value of the SOUND_PCM_WRITE_CHANNELS ioctl

re-enable old pcm ioctls


# d28089a1 26-May-2000 Cameron Grant <cg@FreeBSD.org>

move various fields from pcm_channel to snd_dbuf

improve chn_read code- don't stop/restart on overrun, just dump data

more error checking on ioctls


# eb95c536 29-Apr-2000 Poul-Henning Kamp <phk@FreeBSD.org>

Remove unneeded #include <sys/kernel.h>


# a0e22dd8 23-Apr-2000 Cameron Grant <cg@FreeBSD.org>

implement settrigger according to spec

fixes for non-blocking mode


# 8ae4c159 17-Apr-2000 Cameron Grant <cg@FreeBSD.org>

more mmap fixes


# 603ddb6d 15-Apr-2000 Cameron Grant <cg@FreeBSD.org>

make mmap sort-of work. there seem to be interactions with certain hw
drivers, so still work in progress.

do various mmap-related ioctls right.

improve blocksize control.

bits of cleanup.


# bd18f334 05-Apr-2000 Cameron Grant <cg@FreeBSD.org>

allow /dev/dsp to be opened seperately for reading and writing.


12345678910>>...14