summaryrefslogtreecommitdiff
path: root/sys/dev/sound
Commit message (Collapse)AuthorAgeFilesLines
* tweaks to reduce latency/pauses in outputCameron Grant2001-08-292-8/+11
| | | | Notes: svn path=/head/; revision=82492
* Add support for the Acer Labs M5451 chip.George C A Reid2001-08-291-0/+8
| | | | | | | Submitted by: Mitsuru IWASAKI <iwasaki@jp.FreeBSD.org> Notes: svn path=/head/; revision=82490
* add some extra diagnostic info to sndstat output.Cameron Grant2001-08-293-18/+41
| | | | Notes: svn path=/head/; revision=82479
* * change buffering method a bitCameron Grant2001-08-291-40/+30
| | | | | | | | | | | | * swap record/mic channels * initialise all channels * align dma buffers to 8 bytes Submitted by: Katsurajima Naoto <raven@katsurajima.seya.yokohama.jp> (mostly) Notes: svn path=/head/; revision=82478
* now we have the rate feeder, we don't need to constrain the default channelCameron Grant2001-08-271-1/+3
| | | | | | | | speed. however, continue to do so for record channels until the feederchain builder is fixed. Notes: svn path=/head/; revision=82381
* MFS rev 1.8.2.8:Cameron Grant2001-08-271-2/+22
| | | | | | | | | release resources on detach Submitted by: "Christopher N . Harrell" <cnh@netvmg.com> Notes: svn path=/head/; revision=82379
* Add support for the SiS 7018George C A Reid2001-08-262-9/+39
| | | | | | | | PR: 30100 Submitted by: Ada Lim <adal@cse.unsw.edu.au> Notes: svn path=/head/; revision=82363
* the feederchain builder is currently broken for recording channels. disableCameron Grant2001-08-231-0/+3
| | | | | | | | it until it is fixed. this limits recording to native formats and speeds only. Notes: svn path=/head/; revision=82186
* handle bogus values passed to SOUND_PCM_WRITE_CHANNELS/SNDCTL_DSP_CHANNELSCameron Grant2001-08-231-4/+5
| | | | | | | | | | ioctls better- if 0 is passed, return the current setting. if 1 or 2 are passed, behave accordingly. treat values >2 as 2. PR: kern/29964 Notes: svn path=/head/; revision=82185
* make the 4dwave nx chip workCameron Grant2001-08-231-1/+1
| | | | | | | Submitted by: Philippe Anel <xigh@noos.fr> Notes: svn path=/head/; revision=82183
* MFS: make SNDCTL_DSP_SETTRIGGER workCameron Grant2001-08-232-7/+5
| | | | Notes: svn path=/head/; revision=82182
* MFS: allow multiple opens of mixer devicesCameron Grant2001-08-231-8/+11
| | | | Notes: svn path=/head/; revision=82181
* many changes:Cameron Grant2001-08-2340-407/+738
| | | | | | | | | | | | | | | | | | * add new channels to the end of the list so channels used in order of addition * de-globalise definition of struct snddev_info and provide accessor functions where necessary. * move the $FreeBSD$ tag in each .c file into a macro and allow the /dev/sndstat handler to display these when set to maximum verbosity to aid debugging. * allow each device to register its own sndstat handler to reduce the amount of groping sndstat must do in foreign structs. Notes: svn path=/head/; revision=82180
* Set up the via_chinfo structures properly so we write to the correctGeorge C A Reid2001-08-021-2/+2
| | | | | | | | registers later on; this fixes the VIA82C686 sound problems recently reported by a number of people. Notes: svn path=/head/; revision=81071
* Limit the device to only one playback channel until I can figure out whyScott Long2001-07-191-1/+1
| | | | | | | | a) newpcm insists on using only the highest number channel available, and b) the maestro3 driver no longer likes anything above channel 0. Notes: svn path=/head/; revision=80004
* Fix an off-by-one error in the dma tag. This was causing the VM system toScott Long2001-07-191-1/+2
| | | | | | | | | freak out occasionally. MFC after: 1 week Notes: svn path=/head/; revision=80003
* Somehow I missed this. Use INTR_TYPE_AV (high priority) instead ofPeter Wemm2001-07-091-1/+1
| | | | | | | INTR_TYPE_TTY (lowest priority). Notes: svn path=/head/; revision=79498
* * simplifyCameron Grant2001-07-032-823/+325
| | | | | | | | | | | | | | | * add support for mic record channel * add support for setblocksize * make mpsafe * make getptr accurate * reduce buffer size from 64k to 16k for better synchronisation Notes: svn path=/head/; revision=79148
* remove obsolete typedefs.Cameron Grant2001-07-033-7/+5
| | | | | | | only define INTR_TYPE_AV if it is not already defined. Notes: svn path=/head/; revision=79141
* Correct obviously wrong mistakes.Brian Feldman2001-07-023-3/+3
| | | | Notes: svn path=/head/; revision=79116
* make it compile again in -currentMatt Jacob2001-07-021-1/+1
| | | | Notes: svn path=/head/; revision=79099
* Detect the device on e.g. Dell OptiPlex GX110s.Brian Feldman2001-07-021-0/+1
| | | | Notes: svn path=/head/; revision=79091
* Make all this compile on 4.3, modulus sbuf.Brian Feldman2001-07-024-3/+15
| | | | Notes: svn path=/head/; revision=79090
* intel ich/ich2 driver - this needs some work but is functional enough forCameron Grant2001-07-012-0/+1205
| | | | | | | | | | | | | | | | | | the impatient. Hardware... Provided by: ps Lost by: <censored> Found by: <censored> Not delivered by: Ashley Penney <ashp@unloved.org> Retrieved by: greid, Andrew McKay <andy@openirc.co.uk> Delivered by: Andrew McKay <andy@openirc.co.uk> PR: kern/25507 Submitted by: Katsurajima Naoto <raven@katsurajima.seya.yokohama.jp> Notes: svn path=/head/; revision=79047
* add module version/dependanciesCameron Grant2001-07-011-1/+4
| | | | Notes: svn path=/head/; revision=79046
* don't set a flag that is already setCameron Grant2001-07-011-1/+3
| | | | Notes: svn path=/head/; revision=79045
* set default 'monitor' volume (ac97 headphones) to 75%Cameron Grant2001-07-011-0/+1
| | | | Notes: svn path=/head/; revision=79044
* don't flag the playback hardchan as busy on devices with only one of them.Cameron Grant2001-06-273-19/+68
| | | | | | | | | | | if a device has vchans already but they are all busy, allocate another one at open() time, up to a maximum of hw.snd.maxvchans. when creating/destroying vchans, don't make/remove a devnode for the first/last one as it replaces a hardchan. Notes: svn path=/head/; revision=78895
* tidy up/simplify dsp_clone()Cameron Grant2001-06-271-24/+13
| | | | Notes: svn path=/head/; revision=78893
* add a tunable/sysctl, hw.snd.autovchans. if this is set to a value n whereCameron Grant2001-06-263-4/+53
| | | | | | | | n > 0, n vchans will be assigned to any devices that subsequently register with a single playback channel. Notes: svn path=/head/; revision=78853
* the turtle beach santacruz implements ac97 eapd in an inverted sense -Cameron Grant2001-06-233-13/+15
| | | | | | | inform the ac97 code of this. Notes: svn path=/head/; revision=78673
* add defines and ifdefs so this code will compile on 4.xCameron Grant2001-06-237-14/+113
| | | | | | | add spls so this code will work on 4.x Notes: svn path=/head/; revision=78670
* move a private struct definition from ac97.h to ac97.cCameron Grant2001-06-232-13/+32
| | | | | | | | add proper handling of cards which take eapd=1 to mean 'produce sound' instead of 'external amplifier power down' Notes: svn path=/head/; revision=78668
* Use the M_ZERO flag to malloc(9)George C A Reid2001-06-2121-64/+32
| | | | | | | | Reviewed by: cg MFC after: 1 week Notes: svn path=/head/; revision=78564
* stop csa from panicing in clkrun_hack() - we were using free'd memoryCameron Grant2001-06-181-4/+3
| | | | | | | | | don't leak memory in clkrun_hack() Submitted by: grog (partially) Notes: svn path=/head/; revision=78429
* Call bus_teardown_intr when csa_attach fails after the interrupt hasThomas Moestl2001-06-181-31/+29
| | | | | | | | | | | been set up. PR: kern/28178 Reviewed by: cg MFC after: 2 weeks Notes: svn path=/head/; revision=78421
* use devclass_get_maxunit() correctlyCameron Grant2001-06-183-4/+4
| | | | Notes: svn path=/head/; revision=78396
* revise dsp_clone() to return the first nonbusy channel instead of simplyCameron Grant2001-06-174-15/+17
| | | | | | | | | cycling channel numbers. remove unused fields from struct snddev_info. Notes: svn path=/head/; revision=78395
* fix a potential panic in dsp_clone() if no pcm devices were detectedCameron Grant2001-06-171-0/+2
| | | | Notes: svn path=/head/; revision=78394
* Use INTR_TYPE_AV for the interrupt handlers because:Peter Wemm2001-06-167-8/+8
| | | | | | | | | | | | 1: most drivers are sensitive to timing, and 2: the handlers are MPSAFE and need a chance to get into the kernel before some other non-mpsafe handler blocks the ithread on Giant in shared irq cases. Reviewed by: cg (in principle) Notes: svn path=/head/; revision=78366
* use a global devclass for all drivers - i'm not entirely sure why thisCameron Grant2001-06-1630-929/+936
| | | | | | | | | | | | | | | | | | 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. Notes: svn path=/head/; revision=78362
* various locking fixes, rework open logic and channel registrationCameron Grant2001-06-145-144/+317
| | | | | | | PR: kern/28084 Notes: svn path=/head/; revision=78214
* identify es1371 revision aCameron Grant2001-06-111-1/+6
| | | | Notes: svn path=/head/; revision=78033
* get clkrun the right way aroundCameron Grant2001-06-111-5/+0
| | | | | | | remove debug messages Notes: svn path=/head/; revision=78032
* sbuf_new(9) now returns a struct sbuf * instead of an int. If the callerDag-Erling Smørgrav2001-06-101-1/+1
| | | | | | | | does not provide a struct sbuf, sbuf_new(9) will allocate one and return a pointer to it. Notes: svn path=/head/; revision=77989
* Catch up to csareg.h rev 1.3.Seigo Tanimura2001-06-081-4/+7
| | | | | | | Forgotten by: cg Notes: svn path=/head/; revision=77907
* "Fix" the previous initial attempt at fixing TUNABLE_INT(). This timePeter Wemm2001-06-081-1/+1
| | | | | | | | | | around, use a common function for looking up and extracting the tunables from the kernel environment. This saves duplicating the same function over and over again. This way typically has an overhead of 8 bytes + the path string, versus about 26 bytes + the path string. Notes: svn path=/head/; revision=77900
* lock sound device when adding/removing channelsCameron Grant2001-06-074-20/+102
| | | | | | | | | implement setblocksize for vchans don't panic when doing certain ioctls or aborting on a vchan xmms now works with vchans Notes: svn path=/head/; revision=77882
* Back out part of my previous commit. This was a last minute changePeter Wemm2001-06-071-1/+1
| | | | | | | | and I botched testing. This is a perfect example of how NOT to do this sort of thing. :-( Notes: svn path=/head/; revision=77853
* Make the TUNABLE_*() macros look and behave more consistantly like thePeter Wemm2001-06-061-2/+2
| | | | | | | | SYSCTL_*() macros. TUNABLE_INT_DECL() was an odd name because it didn't actually declare the int, which is what the name suggests it would do. Notes: svn path=/head/; revision=77843