Commit Graph

21 Commits

Author SHA1 Message Date
tsutsui 397cf8a482 {HZ,hz,hZ} -> Hz 2003-02-22 04:58:43 +00:00
hannken b7fea04c8d The SonicVibes DMA is broken and only works on 24-bit addresses. As long
as bus_dmamem_alloc_range() is missing we use the ISA dma tag on i386.

The iorange for the dma registers now gets allocated near the used range.
Chances are high, that this range is valid on this PCI bus.

This one is really ugly :-)

Approved by: Lennart Augustsson <augustss@netbsd.org>
2003-02-20 12:24:05 +00:00
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
thorpej b75a007d9f Add trailing ; to CFATTACH_DECL. 2002-10-02 16:51:16 +00:00
thorpej 387fc6dc87 Use CFATTACH_DECL(). 2002-09-30 20:37:04 +00:00
thorpej f818766afe Declare all cfattach structures const. 2002-09-27 20:31:45 +00:00
lukem 9048aaae21 add RCSID 2001-11-13 07:48:40 +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
kleink d775ce82eb Hint BUS_DMA_READ and BUS_DMA_WRITE. 2001-07-19 17:47:18 +00:00
sommerfeld 851de295eb Change pci_intr_map to get interrupt source information from a "struct
pci_attach_args *" instead of from four separate parameters which in
all cases were extracted from the same "struct pci_attach_args".

This both simplifies the driver api, and allows for alternate PCI
interrupt mapping schemes, such as one using the tables described in
the Intel Multiprocessor Spec which describe interrupt wirings for
devices behind pci-pci bridges based on the device's location rather
the bridge's location.

Tested on alpha and i386; welcome to 1.5Q
2000-12-28 22:59:06 +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
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
kleink 2422638ad5 Fix a buglet in the driver's DMA buffer list ipmlementation, causing the next-
in-list (wrong) descriptor structure of the buffer in question to be freed.
1999-07-10 16:46:19 +00:00
jonathan af729a150c initialize 'p' for lame gcc-2.7.2.2 flow analysis. 1999-04-14 03:26:34 +00:00
mycroft cfe7413adb Make 48KHz output work. 1999-03-22 07:58:55 +00:00
mycroft bd4cd051b9 This is an utterly revolting hack to work around the previously mentioned
lossage.  On the Alpha, we force the buffers to be allocated through the SGMAP
so that the PCI bus addresses are low enough.
At least it's only one line of code...
1999-02-19 02:27:59 +00:00
mycroft 699a815751 Pass the correct address (PCI bus address, not PA) to the card.
Also fix some typos and add more debugging printf()s.
This would work on the Alpha, but the card I have appears to have the upper
address bits chopped off, and the ring buffer gets mapped using the DGMAP,
which uses the upper bits.  Boom.
1999-02-18 09:22:17 +00:00
mycroft 6ce15ae4e3 spaces -> tabs 1999-02-18 00:55:36 +00:00
mycroft f1e84a4ec5 A few things:
* Use the trigger interface.
* Permit different encodings for record and playback.
* Set AUDIO_PROP_INDEPENDENT.
* Fix the mmap(2) hole again.
* Use 16-bit mode for a-law and u-law playback.
1999-02-18 00:54:19 +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
augustss b94cb7b768 Add a driver for the S3 SonicVibes chip. From OpenBSD and
Constantine Paul Sapuntzakis (csapuntz@cvs.openbsd.org) with
some changes by me.
XXX The driver still needs work.
1998-12-10 18:47:18 +00:00