thorpej
b193480908
Add extensible malloc types, adapted from FreeBSD. This turns
...
malloc types into a structure, a pointer to which is passed around,
instead of an int constant. Allow the limit to be adjusted when the
malloc type is defined, or with a function call, as suggested by
Jonathan Stone.
2003-02-01 06:23:35 +00:00
lukem
3f7d8d47b6
add RCSID
2001-11-13 08:01:09 +00:00
augustss
1339e88a86
Add a new optional method, dev_ioctl, to the audio hardware driver interface.
...
It is called when an unrecognized ioctl() is performed on a device,
thus allowing ioctl()s that frob the hardware driver (like loading
microcode).
2001-10-03 00:04:47 +00:00
nathanw
46b2a2fcd4
Do ess_config_addr() in the ofisa front end, rather than in the match
...
routine. Prevents problems with non-SCR ess chips, as described in
PR 11630.
2001-01-06 22:50:00 +00:00
simonb
889c658b5b
Change the kernel mmap interface so that the offset to map is an
...
"off_t" and the return value is a "paddr_t" to allow mappings
at offsets past 2^31 bytes. Somewhat inspired by FreeBSD, which
only changed the offset to a "vm_offset_t".
Includes updates for the i386, pc532 and sh3 mmmmap from Jason Thorpe.
2000-06-26 04:55:19 +00:00
thorpej
fc96443d15
New callout mechanism with two major improvements over the old
...
timeout()/untimeout() API:
- Clients supply callout handle storage, thus eliminating problems of
resource allocation.
- Insertion and removal of callouts is constant time, important as
this facility is used quite a lot in the kernel.
The old timeout()/untimeout() API has been removed from the kernel.
2000-03-23 07:01:25 +00:00
thorpej
52a2804a5c
Add a new function call to the ISA DMA API: isa_dmamaxsize(), which returns
...
the maximum transfer size for the specified DMA channel. Make all clients
of ISA DMA use this call to determine their maximum transfer size.
2000-02-07 22:07:27 +00:00
mycroft
01c66d1c23
Mute the DAC -- not the master volume -- on close, so that CD passthrough is
...
unaffected.
2000-01-18 22:11:05 +00:00
augustss
35483ee3bf
Set mixer controls after a reset.
1999-11-02 17:05:05 +00:00
augustss
860ebb7a92
Make little endian and big endian version of all functions
...
that deal with 16 bit samples. Let the drivers decide which ones
to use.
1999-11-01 18:12:19 +00:00
augustss
a6a09bcdd6
Add support for ES18[67][89]. From PR #7427 by AW9K-NNK@asahi-net.or.jp,
...
Nonaka Kimihiro.
1999-06-18 20:25:23 +00:00
nathanw
70e38aa504
Fix bug uncovered by audio.c fix: Since the monitor control on the ESS
...
is a muting control, not a level control, change the name to reflect that.
XXX The fact that the audio code depends on the string names of the
XXX mixer devices is bogus.
1999-05-30 00:22:59 +00:00
mycroft
5b00b99bef
Allow DRQ[A-C] to be used on the 1888 as well.
1999-03-19 12:40:21 +00:00
mycroft
b6ee330d4e
dmapos should start at 0, in theory.
...
Also experimentally force polling mode.
1999-03-18 06:04:21 +00:00
mycroft
039246b8d5
Add support for polling.
1999-03-18 04:31:36 +00:00
mycroft
ff4754d6e5
Confirm that there was an interrupt before handling it. Allows IRQs to be
...
shared with other devices.
1999-03-18 02:44:27 +00:00
mycroft
8ace2247cb
Fix a couple of other places we should avoid the Audio2 DRQ on the 1788.
1999-03-17 02:39:59 +00:00
mycroft
81a1ade358
More redux:
...
* Use a single routine to halt both input and output on Audio1.
* Reduce the number of register reads/writes used to set up a channel.
* A few other minor things.
1999-03-17 01:06:17 +00:00
mycroft
84f100d175
Audio1 does not support 16-bit DMA. Eliminate some code that tried to handle
...
that case.
1999-03-16 14:17:00 +00:00
mycroft
13d43eb62b
Fix old typo.
1999-03-16 13:37:23 +00:00
mycroft
e085a0c921
A little more cleanup.
1999-03-16 13:32:25 +00:00
mycroft
28e080a143
Minor fix to some debugging output.
1999-03-16 13:24:27 +00:00
mycroft
3e404912dc
Clean up the previous:
...
* Separate the interrupt handlers based on which channel (audio1/audio2)
rather than which direction (input/output). Only register the handler for
audio1 on the 1788.
* Since the input sides are actually the same, GC the duplicated code.
* Re-KNF in a bunch of places.
* Make this work again on the 1887 in the Shark.
1999-03-16 13:06:35 +00:00
nathanw
64fffdfef9
Add support for the 1788 AudioDrive chip.
...
Some minor cleanup; refer to more registers by macros rather
than raw hex constants.
1999-03-02 20:36:50 +00:00
mycroft
ea50d6f672
Use DMAMODE_LOOPDEMAND.
...
Fixes the audible glitches (due to FIFO underruns) when receiving network
packets on the Shark.
1999-02-22 01:57:33 +00:00
mycroft
b81ad0de61
Fix the halt_input and halt_output routines to actually disable the channel,
...
not just the DMA FIFO. Fixes problems with sample misalignment.
1999-02-20 23:28:37 +00:00
mycroft
e5f5e628d2
Pass the direction to the allocm and round_buffersize methods.
...
Some drivers need this to properly allocate DMAable memory.
1999-02-17 02:37:38 +00:00
mycroft
88ad3aa42b
If we have an 8-bit DRQ, always pass that to isa_malloc().
1999-02-17 01:22:47 +00:00
augustss
0d32a9a78b
Fix more `void *' arithmetic.
1999-01-08 19:22:34 +00:00
mycroft
3357fbeefb
Minor format change.
1998-11-25 13:39:37 +00:00
augustss
8d64ea1683
Less debug printing.
1998-08-26 13:08:44 +00:00
augustss
bb3c56652c
Make the OPL driver turn on the sound on sound cards that require it.
...
That makes it much more likely that we get any sound. DUH!
1998-08-26 12:10:22 +00:00
augustss
c7e036f6e2
Let opl attach to ess.
...
WARNING: it doesn't work yet.
1998-08-22 22:55:09 +00:00
augustss
cd09067eb4
* Redo the way the way the MIDI driver attaches to audio devices.
...
* Improve the midisyn layer a little.
* Add a driver for the Yamaha OPL[23] FM synths.
The opl driver is not finished yet; it sounds pretty awful.
For some strange reason I cannot get any FM sound from my SB64 cards,
but a regular SB16 works fine.
1998-08-17 21:16:09 +00:00
mycroft
5c76b6a944
The mic preamp is really a property of the input stage, and affects both
...
pass-through and recording.
1998-08-12 19:13:14 +00:00
mycroft
3979b06d00
enhanced -> preamp
1998-08-12 03:18:34 +00:00
matthias
1f5c14d8ef
ess_audio_channel:active is now used even when DIAGNOSTICS is not defined.
1998-08-11 12:16:22 +00:00
mycroft
7fca135b1b
Use the new trigger interface.
1998-08-10 15:32:18 +00:00
mycroft
b4e0bf5dfb
Use 4- and 8-byte DMA transfers.
1998-08-09 06:52:57 +00:00
mycroft
0611fc34f8
Don't actually touch the hardware in set_params; defer that until we actually
...
start a transfer. Instead, just check that the parameters are valid.
Also, use 16-bit output for u-law and a-law.
1998-08-09 06:38:30 +00:00
mycroft
5eba82397c
Oops; fix typo.
1998-08-09 04:59:55 +00:00
mycroft
017b9af5fe
Clarify with a specific reference to the manual page in question.
1998-08-09 04:58:08 +00:00
mycroft
12f5a41e1f
Make the previous slightly more robust, and set AUDIO_PROP_INDEPENDENT.
1998-08-09 04:40:55 +00:00
mycroft
c8532af3b2
Make sure the sample rate is the same on both channels, tracking the change
...
from one channel to the other if only one is active.
1998-08-09 04:14:47 +00:00
mycroft
759ca5ee0c
The manual says to use the other crystal for 22050Hz.
1998-08-09 03:48:42 +00:00
mycroft
565adbaffb
Set the FIFO control bits correctly so that stereo recording works.
1998-08-09 02:54:50 +00:00
mycroft
80457a2c65
Use auto-initialize DMA for recording.
1998-08-09 02:05:52 +00:00
mycroft
254afcaecb
Sleeping forever kinda sucks.
1998-08-08 21:37:00 +00:00
mycroft
17932f0575
Set the correct modes for the record channel.
1998-08-08 20:55:36 +00:00
matt
7b044dea51
Make the irq checking logic somewhat less bogus.
1998-08-07 00:51:06 +00:00