History log of /freebsd/sys/dev/sound/pcm/mixer.c (Results 151 – 175 of 201)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 18c15b59 24-Sep-2006 Alexander Leidinger <netchild@FreeBSD.org>

Fix uninitialized variable warning.

Submitted by: dhw
Reviewed by: ryanb


# b611c801 23-Sep-2006 Alexander Leidinger <netchild@FreeBSD.org>

MFp4 the sound Google Summer of Code project:

The goal was to sync with the OSSv4 API 4Front Technologies uses in their
proprietary OSS driver. This was successful as far as possible. The part
of th

MFp4 the sound Google Summer of Code project:

The goal was to sync with the OSSv4 API 4Front Technologies uses in their
proprietary OSS driver. This was successful as far as possible. The part
of the API which is stable is implemented, for the rest there are some
stubs already.

New system ioctls:
- SNDCTL_SYSINFO - obtain audio system info (version, # of audio/midi/
mixer devices, etc.)
- SNDCTL_AUDIOINFO - fetch details about a specific audio device
- SNDCTL_MIXERINFO - fetch details about a specific mixer device

New audio ioctls:
- Sync groups (SNDCTL_DSP_SYNCGROUP/SNDCTL_DSP_SYNCSTART) which allow
triggered playback/recording on multiple devices (even across processes
simultaneously).
- Peak meters (SNDCTL_DSP_GETIPEAKS/SNDCTL_DSP_GETOPEAKS) - can query
audio drivers for peak levels (needs driver support, disabled for now).
- Per channel playback/recording levels -
SNDCTL_DSP_{GET,SET}{PLAY,REC}VOL. Note that these are still in name
only, just wrapping around the AC97-style mixer at the moment. The next
step is to push them down to the drivers.

Audio ioctls still under development by 4Front (for which stubs may exist
in this commit):
- SNDCTL_GETNAME, SNDCTL_{GET,SET}{SONG,LABEL}
- SNDCTL_DSP_{GET,SET}_CHNORDER
- SNDCTL_MIX_ENUMINFO, SNDCTL_MIX_EXTINFO - (might be documented enough in
the OSS releases to work on this. These ioctls cover the cool "twiddle
any knob on your card" features.)

Missing:
- SNDCTL_DSP_COOKEDMODE -- this ioctl is used to give applications direct
access to a card's buffers, bypassing the feeder architecture. It's
a toughy -- "someone" needs to decide :
(a) if this is desireable, and (b) if it's reasonably feasible.

Updates for driver writers:
So far, only two routines to the channel class (in channel_if.m) are added.
One is for fetching a list of discrete supported playback/recording rates
of a channel, and the other is for fetching peak level info (useful for
drawing peak meters). Interested parties may want to help pushing down
SNDCTL_DSP_{GET,SET}{PLAY,REC}VOL into the drivers.

To use the new stuff you need to rebuild the sound drivers or your kernel
(depending on if you use modules or not) and to install soundcard.h (a
buildworld/installworld handles this).

Sponsored by: Google SoC 2006
Submitted by: ryanb
Many thanks to: 4Front Technologies for their cooperation, explanations
and the nice license of their soundcard.h.

show more ...


Revision tags: release/5.5.0_cvs, release/5.5.0, release/6.1.0_cvs, release/6.1.0
# 3fdb3676 21-Mar-2006 Ariff Abdullah <ariff@FreeBSD.org>

Apply more thorough fixes while dealing with device opening and closing:

- Determine open direction using 'flags', not 'mode'. This bug exist since
past 4 years.
- Don't allow opening the same dev

Apply more thorough fixes while dealing with device opening and closing:

- Determine open direction using 'flags', not 'mode'. This bug exist since
past 4 years.
- Don't allow opening the same device twice, be it in a same or different
direction.
- O_RDWR is allowed, provided that it is done by a single open (for example
by mixer(8)) and the underlying hardware support true full-duplex operation.
- Do various paranoid checking in case other process/thread trying to hijack
the same device twice (or more).

MFC after: 5 days

show more ...


# 80138937 14-Nov-2005 Ariff Abdullah <ariff@FreeBSD.org>

ac97.c:
- Added new codec id for CX20468-21 and VIA1617A.
Submitted by: Chen Lihong <lihong.chen@gmail.com>
- Re-enable SOUND_MIXER_IGAIN, but set the default level as 0 (mute)
Suggested by:

ac97.c:
- Added new codec id for CX20468-21 and VIA1617A.
Submitted by: Chen Lihong <lihong.chen@gmail.com>
- Re-enable SOUND_MIXER_IGAIN, but set the default level as 0 (mute)
Suggested by: luigi

mixer.c:
- Set default value for SOUND_MIXER_IGAIN as 0 (mute) to avoid
feedback problems on some laptops (was disabled by jhb during
ac97.c revision 1.42).

Approved by: netchild (mentor)

show more ...


# 8be20fbe 03-Nov-2005 Ariff Abdullah <ariff@FreeBSD.org>

Appropriate NULL pointer checking to avoid mysterious panic during
device cloning.

Approved by: netchild (mentor)


Revision tags: release/6.0.0_cvs, release/6.0.0
# cb44f623 02-Oct-2005 Alexander Leidinger <netchild@FreeBSD.org>

sys/dev/sound/pcm/ac97.c:
* Added codec id for CMI9761.
* feeder_volume *whitelist* through ac97_fix_volume()

sys/dev/sound/pcm/ac97.h:
* Added AC97_F_SOFTVOL definition.

sys/dev/sound/pcm

sys/dev/sound/pcm/ac97.c:
* Added codec id for CMI9761.
* feeder_volume *whitelist* through ac97_fix_volume()

sys/dev/sound/pcm/ac97.h:
* Added AC97_F_SOFTVOL definition.

sys/dev/sound/pcm/channel.c:
* Slight changes for chn_setvolume() to conform with OSS.
* FEEDER_VOLUME is now part of feeder building process.

sys/dev/sound/pcm/mixer.c:
* General spl* cleanup. It doesn't serve any purpose anymore.
* Main hook for feeder_volume.

Submitted by: Ariff Abdullah <skywizard@MyBSD.org.my>
Tested by: multimedia@

show more ...


# 6a113b3d 08-Aug-2005 Robert Watson <rwatson@FreeBSD.org>

Merge the dev_clone and dev_clone_cred event handlers into a single
event handler, dev_clone, which accepts a credential argument.
Implementors of the event can ignore it if they're not interested,
a

Merge the dev_clone and dev_clone_cred event handlers into a single
event handler, dev_clone, which accepts a credential argument.
Implementors of the event can ignore it if they're not interested,
and most do. This avoids having multiple event handler types and
fall-back/precedence logic in devfs.

This changes the kernel API for /dev cloning, and may affect third
party packages containg cloning kernel modules.

Requested by: phk
MFC after: 3 days

show more ...


# 7233abab 31-Jul-2005 Alexander Leidinger <netchild@FreeBSD.org>

* Fix panic during driver unload on second attempt after failure on
first (device busy).
* Fix module unloading for sound.ko itself.

Submitted by: Ariff Abdullah <skywizard@MyBSD.org.my>
Tested by

* Fix panic during driver unload on second attempt after failure on
first (device busy).
* Fix module unloading for sound.ko itself.

Submitted by: Ariff Abdullah <skywizard@MyBSD.org.my>
Tested by: multimedia@

show more ...


Revision tags: release/5.4.0_cvs, release/5.4.0
# f4f6abcb 31-Mar-2005 Poul-Henning Kamp <phk@FreeBSD.org>

Explicitly hold a reference to the cdev we have just cloned. This
closes the race where the cdev was reclaimed before it ever made it
back to devfs lookup.


# e70377df 27-Feb-2005 Poul-Henning Kamp <phk@FreeBSD.org>

Use dynamic major number allocation.


Revision tags: release/4.11.0_cvs, release/4.11.0
# 098ca2bd 06-Jan-2005 Warner Losh <imp@FreeBSD.org>

Start each of the license/copyright comments with /*-, minor shuffle of lines


Revision tags: release/5.3.0_cvs, release/5.3.0
# ae6d3a22 25-Jun-2004 Josef El-Rayes <josef@FreeBSD.org>

Fix uninitialized variable, that breaks the build.

Approved by: hmp
Reviewed by: chris
Pointy hat to: josef (for ignoring warning)


# 8ba7f5cf 24-Jun-2004 Josef El-Rayes <josef@FreeBSD.org>

Change the possibility to configure pcm(4) via boot/loader.conf
to use boot/device.hints now

As discussed on cvs-src@

Reviewed by: Hiten Pandya <hmp@backplane.com>


# 9d12118e 20-Jun-2004 Josef El-Rayes <josef@FreeBSD.org>

Enable pcm to read kenv variables to set default values for
mixer channels.

e.g.: pcm0.line=0

to muten input line per default.

Approved by: cg
Reviewed by: le, stefanf
Requested by: Eugene

Enable pcm to read kenv variables to set default values for
mixer channels.

e.g.: pcm0.line=0

to muten input line per default.

Approved by: cg
Reviewed by: le, stefanf
Requested by: Eugene Grosbein <eugen@grosbein.pp.ru> (implicitly)
PR: kern/63771

show more ...


# f3732fd1 17-Jun-2004 Poul-Henning Kamp <phk@FreeBSD.org>

Second half of the dev_t cleanup.

The big lines are:
NODEV -> NULL
NOUDEV -> NODEV
udev_t -> dev_t
udev2dev() -> findcdev()

Various minor adjustments including handling of userland access to ke

Second half of the dev_t cleanup.

The big lines are:
NODEV -> NULL
NOUDEV -> NODEV
udev_t -> dev_t
udev2dev() -> findcdev()

Various minor adjustments including handling of userland access to kernel
space struct cdev etc.

show more ...


# 89c9c53d 16-Jun-2004 Poul-Henning Kamp <phk@FreeBSD.org>

Do the dreaded s/dev_t/struct cdev */
Bump __FreeBSD_version accordingly.


Revision tags: release/4.10.0_cvs, release/4.10.0, release/5.2.1_cvs, release/5.2.1
# dc08ffec 21-Feb-2004 Poul-Henning Kamp <phk@FreeBSD.org>

Device megapatch 4/6:

Introduce d_version field in struct cdevsw, this must always be
initialized to D_VERSION.

Flip sense of D_NOGIANT flag to D_NEEDGIANT, this involves removing
four D_NOGIANT fl

Device megapatch 4/6:

Introduce d_version field in struct cdevsw, this must always be
initialized to D_VERSION.

Flip sense of D_NOGIANT flag to D_NEEDGIANT, this involves removing
four D_NOGIANT flags and adding 145 D_NEEDGIANT flags.

show more ...


# 45550658 17-Jan-2004 Poul-Henning Kamp <phk@FreeBSD.org>

As previously announced: discontinue use of makedev() call in soundcode.

This takes us a lot closer to refcounting dev_t.

This patch originally by cg@ with a few minor changes by me.

It is largel

As previously announced: discontinue use of makedev() call in soundcode.

This takes us a lot closer to refcounting dev_t.

This patch originally by cg@ with a few minor changes by me.

It is largely untested, but has been HEADSUP'ed twice, so presumably
people have not found any issues with it.

Submitted by: cg@

show more ...


Revision tags: release/5.2.0_cvs, release/5.2.0
# 42c3555c 11-Nov-2003 Scott Long <scottl@FreeBSD.org>

Fix sound LOR problems:

dsp_open: rearrange to only hold one lock at a time

dsp_close: ditto

mixer_hwvol_init: delete locking, the only consumer seems to
be the ess driver and it only call it a cr

Fix sound LOR problems:

dsp_open: rearrange to only hold one lock at a time

dsp_close: ditto

mixer_hwvol_init: delete locking, the only consumer seems to
be the ess driver and it only call it a creation time, I
think the device will be stable across the sleepable malloc.

cmi interrupt routine: Release locks while caller chn_intr,
either this or do what emu10k1 does which is have no locks
at in the interrupt handler.

Submitted by: mat@cnd.mcgill.ca

show more ...


Revision tags: release/4.9.0_cvs, release/4.9.0
# 3f225978 07-Sep-2003 Cameron Grant <cg@FreeBSD.org>

update my email address.


Revision tags: release/5.1.0_cvs, release/5.1.0, release/4.8.0_cvs, release/4.8.0
# 7ac40f5f 03-Mar-2003 Poul-Henning Kamp <phk@FreeBSD.org>

Gigacommit to improve device-driver source compatibility between
branches:

Initialize struct cdevsw using C99 sparse initializtion and remove
all initializations to default values.

This patch is au

Gigacommit to improve device-driver source compatibility between
branches:

Initialize struct cdevsw using C99 sparse initializtion and remove
all initializations to default values.

This patch is automatically generated and has been tested by compiling
LINT with all the fields in struct cdevsw in reverse order on alpha,
sparc64 and i386.

Approved by: re(scottl)

show more ...


# a163d034 19-Feb-2003 Warner Losh <imp@FreeBSD.org>

Back out M_* changes, per decision of the TRB.

Approved by: trb


# 44956c98 21-Jan-2003 Alfred Perlstein <alfred@FreeBSD.org>

Remove M_TRYWAIT/M_WAITOK/M_WAIT. Callers should use 0.
Merge M_NOWAIT/M_DONTWAIT into a single flag M_NOWAIT.


Revision tags: release/5.0.0_cvs, release/5.0.0
# 00acb133 26-Nov-2002 Cameron Grant <cg@FreeBSD.org>

(hopefully) fix build breakage some people are seeing

Approved by: re


Revision tags: release/4.7.0_cvs, release/4.6.2_cvs, release/4.6.2
# ca33ae23 25-Jul-2002 Brian Feldman <green@FreeBSD.org>

Fix some of the places where sound(4) can sleep with a lock held. (Help
courtesy of fenner).


123456789