Commit Graph

49 Commits

Author SHA1 Message Date
augustss 74545baf39 Add a Yamaha OPL3-SA3 driver and clean up all AD1848 drivers.
Submitted by Constantine Sapuntzakis <csapuntz@reeducation-labor.lcs.mit.edu>
and originally written for OpenBSD.
1998-05-20 16:19:41 +00:00
augustss 09f43c63cf Update probing for GUS a little. From soren@t.dk,
closes PR kern/5148.
1998-03-12 12:28:50 +00:00
augustss d644f9b973 Apply cs4236 fix from rh@vip.at. Closes PR 5143. 1998-03-11 09:26:05 +00:00
cgd ccfe537e97 don't include <machine/pio.h>. It's unneeded here now (this code
uses the bus_space_* interfaces), and therefore unwanted.
1998-02-24 02:12:09 +00:00
augustss 6f6593a533 Fix initialization and timing problem.
As per misc/4902, from Clifford Wright <cliff@snipe444.org>.
1998-01-30 02:02:38 +00:00
augustss 59d2219410 Split out the ISA part of the WSS driver to allow PnP attachment.
Make the AD1848 driver a little more readable with some macros.
1998-01-19 22:18:23 +00:00
augustss e7029fc0da Make the audio API (almost) SunOS compatible.
The changes is to allow some limited mixer manipulation through
the audio device (instead of the mixer device).
This rendered 4 methods in audio_hw_if unused so garbage collect these.
1997-10-19 07:41:33 +00:00
mycroft b551325998 AudioElinear -> AudioEslinear 1997-10-11 12:36:04 +00:00
augustss a50d4ba893 XXX Add a drq2 locator for the ISA bus. Many sound cards need
two DMA channels to do e.g. full-duplex.  This allows
a way of specifying the second channel in a sane way.
THIS IS TEMPORARY.  The drq2 locator will go away when
the locator system has been changed to allow multiple
values per locator.
1997-08-26 19:26:38 +00:00
augustss 6616d47838 - Change audio_hw_if a little: set_param now sets the play and record modes
at the same time instead by using two different calls.  This enables
  it to check more easily if the combined mode is all right.
- Improve the error checking in audio.c.
- Add a new audio property, AUDIO_PROP_INDEPENDENT, show if the
  play and record settings are independent.
- Fix some buglets in audio.c.
1997-08-24 22:31:23 +00:00
augustss 8fdd7cab62 Convert WSS driver to use non-broken indirect configuration. 1997-08-20 15:26:25 +00:00
augustss f78dfdfe6e Avoid munging audio_defaults. 1997-08-19 23:35:44 +00:00
augustss 1fea370221 Get rid of `register'. 1997-08-04 19:05:27 +00:00
augustss 658656bb99 Audio changes:
- Change the way attach and open works to allow multiple audio
	  devices.
	- Split the mulaw.c file into two to avoid dragging in mulaw
	  convertsion when they are not needed.  Add 16 bit alaw/mulaw tables.
	- Change the way audio properties are gotten.
	- Recognize more versions os SoundBlaster.
1997-07-31 22:33:08 +00:00
augustss a63034762b Audio: Remove the machine dependant code I put in audio.c by mistake.
This adds another method to audio_hw_if.  Also remove a field from
audio_hw_if that was not read-only.
1997-07-28 20:56:05 +00:00
augustss f6cd87f322 audio: Minor cleanup and enable looping DMA for PSS and PAS. 1997-07-28 01:31:50 +00:00
augustss 9745684ebe Changes to the sudio system:
- It is now possible to handle devices that want "looping" DMA,
    e.g. the SoundBlaster correctly.  The WSS and SB drivers use this.
    To do this several new methods were introduced in audio_hw_if.
  - Different silence handling (forced by previous change).
  - The audio driver can now be mmap()-ed, but due to problems in
    the VM system only for writing for now.
  - The OSS (Linux) audio emulation takes advantage of some of the
    new features.
1997-07-27 01:16:32 +00:00
augustss 8727da130b In the name of backwards compatibility AUDIO_ENCODING_LINEAR has been
renamed AUDIO_ENCODING_SLINEAR and AUDIO_ENCODING_LINEAR reverts to the
NetBSD 1.2 sematics.  A kernel with COMPAT_12 defined will accept
AUDIO_ENCODING_LINEAR and treat it as before, without COMPAT_12 it
will be rejected.
1997-07-15 07:46:04 +00:00
thorpej 11e78a6b0d Pull thorpej-bus-dma branch into mainline. 1997-06-06 23:43:45 +00:00
jtk 5759a768d7 add software emulation stub for ulinear_be 1997-05-31 15:30:22 +00:00
augustss 1fd29f4172 Make the audio default parameters into a globally accessible constant. 1997-05-20 12:51:43 +00:00
augustss 37be371415 Clean up emulation code, SB, and GUS drivers and add some more encoding
emulation to SB.
1997-05-13 19:02:11 +00:00
augustss e63a553175 Change the interface between high and lowlevel audio drivers again:
Set the encoding parameters slightly differently.
Remove the SW encoding/decodinf functions from this interface
and move them to the audio_parameter struct; this is both more efficient
and flexible.
1997-05-09 22:16:27 +00:00
augustss c4a52794f1 Convert to new orthogonal audio encoding scheme and implement
some of the new encodings.  The change to ioctl AUDIO_GETENC is
NOT backwards compatible.
1997-05-07 18:51:31 +00:00
augustss 526ef2f618 Change the interface between the high and low level audio drivers
so that all audio encoding parameters are set at once.  This simplifies
the interface and make error checking easier.
1997-04-29 21:01:33 +00:00
jtk 73cfcd9f66 fix compile error if AUDIO_DEBUG 1997-04-06 17:21:45 +00:00
augustss 7dedd37033 Busify the WSS driver. 1997-04-05 23:50:23 +00:00
mycroft b89990fba6 Oops; fix pasto. 1997-03-20 20:18:40 +00:00
mycroft 4f9648674a Make sure we round the block size to a multiple of the sample size. 1997-03-20 20:15:24 +00:00
mycroft e0b3534b6c Remove bogus block rounding code. If the application sets a
block size explicitly, it had better know what it's doing.  From
PR 2587, by Robert Baron.
1997-03-20 16:04:22 +00:00
mycroft c1cc14fa25 Combine set_encoding and set_precision into a single set_format interface. 1997-03-20 06:48:48 +00:00
mycroft de69173e77 Fix oversights in previous. 1997-03-20 03:56:11 +00:00
mycroft 2b72395bfc ad1848_commit_settings(): Don't set the speed/format register if the
parameters haven't changed.  From PR 3360, by Jason Baker.

Also, clean up several overly-complex interfaces.
1997-03-19 19:31:15 +00:00
mikel 8147d1718f fix various AD1848/PSS misfeatures; from Jason Baker in PR kern/2045.
also did some misc cleanup of my own.
1997-03-13 08:34:49 +00:00
mycroft ac3b8b13b7 Don't share the silence block between devices. Make silence filling work for
more encodings, and make it device-independent.  From Lennart Augustsson, in
PR kern/3305.
1997-03-13 02:19:32 +00:00
mikel 179a058e17 fix AUTO_CAL_ENABLE bug, & misc. cleanup. 1996-12-05 07:01:30 +00:00
jtk aa8449a9ef fix compile errors & warnings 1996-10-16 01:12:18 +00:00
christos 86373f8cf9 backout kprintf changes 1996-10-13 01:37:04 +00:00
christos 58953408cb printf -> kprintf, sprintf -> ksprintf 1996-10-10 22:04:48 +00:00
christos e8a8a6298c - prototype fixes 1996-04-29 20:02:32 +00:00
mycroft 546ad9e88b Add support to the ISA DMA framework for auto-initialize mode.
Add experimental SB16 code, disabled for now.
1996-03-01 04:08:13 +00:00
scottr ae06fdb589 Allow blocksize of NBPG/2 to NBPG for higher sampling rates. From
Lennart Augustsson <augustss@cs.chalmers.se>, closes PR 2013.
1996-02-05 21:32:26 +00:00
mycroft d8f6a1896b Convert IRQ, DRQ, and port numbers to int. 1995-11-10 04:30:36 +00:00
brezak 0bdd4aa7c2 add support for cs4231 1995-07-07 02:11:45 +00:00
brezak c68110e043 Remove strings 1995-05-08 22:01:34 +00:00
cgd 982230db44 update for new locations 1995-04-17 15:48:20 +00:00
cgd 8a640328ed clean up several ISA device interfaces: autoconfiguration, header
inclusion, and interrupt configuration.  more work still needs to be done,
but it's getting better...
1995-04-17 12:06:30 +00:00
mycroft ff6c206c3f Use void* rather than caddr_t in many places. 1995-03-25 00:00:53 +00:00
brezak 977594d1a9 Driver for ad1848 codec 1995-02-21 02:26:39 +00:00