summaryrefslogtreecommitdiffstats
path: root/sys/dev/sound/isa
Commit message (Collapse)AuthorAgeFilesLines
* Use BUS_PROBE_DEFAULT in preference to 0 and BUS_PROBE_LOW_PRIORITY inimp2005-03-011-1/+1
| | | | | preference to some random negative number to allow other drivers a bite at the apple.
* Use mss_{format,speed}() rather than chn_set{format,speed}() and holdmdodd2005-02-271-2/+4
| | | | | | | mss lock across call. This allows my Thinkpad 600E to resume with the sound driver loaded and vchans enabled.
* Start each of the license/copyright comments with /*-, minor shuffle of linesimp2005-01-0611-39/+39
|
* PNP BIOS devices are fundamentally different than ISA PNP devices.imp2004-12-071-1/+1
| | | | | | | These devices should be probed first because they are at fixed locations and cannot be turned off. ISA PNP devices, on the other hand, can be turned off and often can be flexible in the resources they use. Probe them last, as always.
* Re-add an acpi attachment for the legacy probe that was inadvertentlynjl2004-10-151-0/+1
| | | | removed.
* Audio drivers failed to detect failure condition and attempted toyongari2004-10-135-5/+7
| | | | | | | | | | assign DMA address to the wrong address. It can cause system lockup or other mysterious errors. Since most sound cards requires low DMA address(BUS_SPACE_MAXADDR_24BIT) sndbuf_alloc() would fail when the audio driver is loaded after long running of operations. Approved by: jake (mentor) Reviewed by: truckman, matk
* * Remove the acpi attachment from the es1888. It has an identify methodnjl2004-10-123-3/+2
| | | | | | | | | that conjures up the device node so it isn't true PNP. Noticed by jhb@. * Add an attachment for esscontrol since it too uses ISA_PNP_PROBE. * Move an attachment from snd_mss to snd_pnpmss. The latter is the real PNP user.
* Add acpi attachments for ISA sound drivers. This is needed so they'llnjl2004-10-114-0/+4
| | | | | | | probe and attach when ACPI is enabled. Submitted by: takawata (sbc fix) MFC after: 1 day
* Change sb_lock() calls to sbc_lockassert() and remove the sb_unlock()truckman2004-09-121-4/+2
| | | | | | | | | | | calls in sb_cmd2() and sb_getmixer(). The lock has already be grabbed before these functions are called. This is a RELENG_5 candidate. PR: 71189 Submitted by: stephane MFC after: 3 days
* Rename the sound device drivers:tanimura2004-07-168-10/+10
| | | | | | | | | | | | | | - `sound' The generic sound driver, always required. - `snd_*' Device-dependent drivers, named after the sound module names. Configure accordingly to your hardware. In addition, rename the `snd_pcm' module to `sound' in order to sync with the driver names. Suggested by: cg
* s/DDB/BVDDB/gmarcel2004-07-101-1/+1
| | | | Note that DDB is unrelated to the debugger with the same acronym.
* Improve mapping of relative to absolute volume.josef2004-06-141-2/+15
| | | | | | | | | | I added bounds checking to the patch and cg improved the formular. Submitted by: Andriy Gapon <avg@icyb.net.ua> PR: kern/65485 Approved by: cg Reviewed by: imp, rwatson, le
* Axe the old midi drivers and framework. matk has developed a newtanimura2004-06-015-5734/+0
| | | | module-friendly midi subsystem to be merged soon.
* Remove extraneous spaces.truckman2004-05-131-1/+1
|
* Implement sbc_lockassert() and sb_lockassert() functions to allowtruckman2004-05-133-3/+19
| | | | | | | | | | | | | proper locking to be checked at runtime. Remove sb_lock() and sb_unlock() calls from sb_reset_dsp() because the latter is called from sb_setup() with the lock already held. Add a call to sb_lockassert(). Surround the call to sb_reset_dsp() in sb16_attach() with sb_lock() and sb_unlock() calls. Tested by: Bartek Marcinkiewicz <junior AT p233.if.pwr.wroc.pl>
* The newpcm headers currently #define away INTR_MPSAFE and INTR_TYPE_AVgreen2004-04-146-7/+7
| | | | | | | | | | | | | | | | | | because they bogusly check for defined(INTR_MPSAFE) -- something which never was a #define. Correct the definitions. This make INTR_TYPE_AV finally get used instead of the lower-priority INTR_TYPE_TTY, so it's quite possible some improvement will be had on sound driver performance. It would also make all the drivers marked INTR_MPSAFE actually run without Giant (which does seem to work for me), but: INTR_MPSAFE HAS BEEN REMOVED FROM EVERY SOUND DRIVER! It needs to be re-added on a case-by-case basis since there is no one who will vouch for which sound drivers, if any, willy actually operate correctly without Giant, since there hasn't been testing because of this bug disabling INTR_MPSAFE. Found by: "Yuriy Tsibizov" <Yuriy.Tsibizov@gfk.ru>
* Convert callers to the new bus_alloc_resource_any(9) API.njl2004-03-1710-54/+72
| | | | | Submitted by: Mark Santcroos <marks@ripe.net> Reviewed by: imp, dfr, bde
* Augment /dev/sndstat with the module names, if applicable.matk2004-03-064-8/+12
| | | | Approved by: tanimura (mentor)
* Don't attempt to destroy the driver mutex when it hasn't yetdeischen2003-10-291-1/+1
| | | | | | been created. This has been sitting in my local tree for far too long; I can't believe noone else has come across this yet.
* Fixed world breakage in previous commit. Somehow the wrong include wasbde2003-09-171-1/+1
| | | | removed in the world although the correct one was removed in the universe.
* Don't include another driver's private reg.h file (sioreg.h). Includingbde2003-09-162-2/+0
| | | | ns16550.h is now sufficient.
* update my email address.cg2003-09-076-6/+6
|
* Mega busdma API commit.scottl2003-07-015-8/+13
| | | | | | | | | | | | | | | | | | | | | | | | Add two new arguments to bus_dma_tag_create(): lockfunc and lockfuncarg. Lockfunc allows a driver to provide a function for managing its locking semantics while using busdma. At the moment, this is used for the asynchronous busdma_swi and callback mechanism. Two lockfunc implementations are provided: busdma_lock_mutex() performs standard mutex operations on the mutex that is specified from lockfuncarg. dftl_lock() is a panic implementation and is defaulted to when NULL, NULL are passed to bus_dma_tag_create(). The only time that NULL, NULL should ever be used is when the driver ensures that bus_dmamap_load() will not be deferred. Drivers that do not provide their own locking can pass busdma_lock_mutex,&Giant args in order to preserve the former behaviour. sparc64 and powerpc do not provide real busdma_swi functions, so this is largely a noop on those platforms. The busdma_swi on is64 is not properly locked yet, so warnings will be emitted on this platform when busdma callback deferrals happen. If anyone gets panics or warnings from dflt_lock() being called, please let me know right away. Reviewed by: tmm, gibbs
* Include <isa/isavar.h> to fix building on alpha.nyan2003-02-081-0/+2
|
* - Clean up ISA DMA supports.nyan2003-02-077-29/+144
| | | | | | | - Rename all sndbuf_isadma* functions to sndbuf_dma* and move them into sys/dev/sound/isa/sndbuf_dma.c. No response from: sound
* - GC a few more hand-rolled 'abs' macros.mdodd2003-01-151-1/+0
| | | | - GC a few hand-rolled min()/max() macros while I'm here.
* - Add acpi module binding.mdodd2003-01-081-3/+12
| | | | | - Restore speed and format settings on resume for CS423x and CS423x-PCI devices.
* Correct typos, mostly s/ a / an / where appropriate. Some whitespace cleanup,schweikh2003-01-011-1/+1
| | | | especially in troff files.
* Do not return(foo()) in void function.semenu2002-12-187-17/+17
| | | | | Submitted by: marius@alchemy.franken.de MFC after: 3 days
* (hopefully) fix build breakage some people are seeingcg2002-11-263-4/+4
| | | | Approved by: re
* Add support for controlling line1 mixer device, which on some cards representssobomax2002-07-301-2/+9
| | | | | | onboard FM tuner. MFC after: 2 weeks
* Fix driver to re-enable sound output on AD1816 based cards caused by anhm2002-06-091-0/+4
| | | | | | | | obviously bogous return value of ad1816chan_setformat(). PR: 37932 Submitted by: Martin Kaeske <Martin.Kaeske@Stud.TU-Ilmenau.DE> Reviewed by: hm MFC after: 10 days
* Change callers of mtx_init() to pass in an appropriate lock type name. Injhb2002-04-045-5/+5
| | | | | | | most cases NULL is passed, but in some cases such as network driver locks (which use the MTX_NETWORK_LOCK macro) and UMA zone locks, a name is used. Tested on: i386, alpha, sparc64
* Add lock type arguments to callers of snd_mtxcreate().jhb2002-04-043-3/+3
|
* Add support for the Aztech 2320 chip.tg2002-02-051-0/+45
| | | | | Reviewed by: cg Obtained from: NetBSD (partly)
* - Do not hang if the resource allocation fails.tanimura2002-02-051-19/+28
| | | | | | | - Add another quirk entry of SB AWE64. PR: kern/32530 Submitted by: Magnus Backstrom <b@etek.chalmers.se>
* Fix code that had rotted behind debugging macros.scottl2002-01-253-3/+3
| | | | | Approved by: cg (in principle) MFC after: 2 weeks
* - Provide toggles to show debug messages. Set new sysctl variablestanimura2002-01-045-63/+71
| | | | | | | | | | | | | | hw.midi.debug and hw.midi.seq.debug to 1 to enable debug log. - Make debug messages human-frendly. - Implement /dev/music. - Add a timer engine required by /dev/music. - Fix nonblocking I/O. - Fix the numbering of midi and synth devices.
* - Do not uiomove with a mutex locked.tanimura2002-01-015-28/+72
| | | | | | | | | - Move from msleep/wakeup to condvar. - Return either zero or a positive errno value from a function. Return additional result via references. - Unify the typedef of callback functions.
* Fixes apparent hang at probe time due to an extremely long timeoutpb2001-12-211-1/+1
| | | | | | (experienced with an Opti931/ISA PnP card). Approved by: cg
* Modify the critical section API as follows:jhb2001-12-181-6/+5
| | | | | | | | | | | | | | | | | | | - The MD functions critical_enter/exit are renamed to start with a cpu_ prefix. - MI wrapper functions critical_enter/exit maintain a per-thread nesting count and a per-thread critical section saved state set when entering a critical section while at nesting level 0 and restored when exiting to nesting level 0. This moves the saved state out of spin mutexes so that interlocking spin mutexes works properly. - Most low-level MD code that used critical_enter/exit now use cpu_critical_enter/exit. MI code such as device drivers and spin mutexes use the MI wrappers. Note that since the MI wrappers store the state in the current thread, they do not have any return values or arguments. - mtx_intr_enable() is replaced with a constant CRITICAL_FORK which is assigned to curthread->td_savecrit during fork_exit(). Tested on: i386, alpha
* These two used sioreg.h as well. This is mildly bogus, but it is harderimp2001-10-222-2/+2
| | | | | | | | to fix right in a hurry. This (almost) fixes LINT. Submitted by: bde
* use mixer channel numbers, not channel masks- this should fix sb/sbpro mixercg2001-10-071-10/+10
| | | | problems.
* Add another pnpid for the AWE64greid2001-09-291-0/+1
| | | | | | PR: 30909 Submitted by: Kinji Itoh <kinji-i@gray.plala.or.jp> MFC after: 7 days
* release isa dma channels on unload.cg2001-09-291-3/+7
|
* allow the hardware buffer size to be controlled with hintscg2001-09-295-96/+123
| | | | release isa dma channels on unload (ad1816, ess, sb8)
* when setting blocksize, fix blockcount to 2 to reduce latency with smallercg2001-09-181-0/+2
| | | | block sizes.
* make buffer size adjustable.cg2001-09-181-5/+7
|
* KSE Milestone 2julian2001-09-126-11/+11
| | | | | | | | | | | | | | Note ALL MODULES MUST BE RECOMPILED make the kernel aware that there are smaller units of scheduling than the process. (but only allow one thread per process at this time). This is functionally equivalent to teh previousl -current except that there is a thread associated with each process. Sorry john! (your next MFC will be a doosie!) Reviewed by: peter@freebsd.org, dillon@freebsd.org X-MFC after: ha ha ha ha
* many changes:cg2001-08-238-27/+27
| | | | | | | | | | | | | | | * 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.
OpenPOWER on IntegriCloud