History log of /src/sys/dev/isa/sb_isa.c |
Revision | | Date | Author | Comments |
1.39 |
| 08-May-2019 |
isaki | Merge isaki-audio2 branch, the overhaul of audio subsystem. - Interrupt-oriented system rather than thread-oriented. - Improve stability, quality and performance. - Split playback and record cleanly. Improve halfduplex support. - Many bugs are fixed including deadlocks, resource leaks, abuses, etc. - Simplify audio filter mechanism. The encoding/channels/frequency conversions are completely handled in the upper layer. So the hard- ware driver only converts its hardware encoding (if necessary). - audio_hw_if changes: - Obsoletes query_encoding and add query_format instead. - Obsoletes set_params and add set_format instead. - Remove drain, setfd, mappage. - The call sequences are changed. - ioctl AUDIO_GETFD/SETFD, AUDIO_GETCHAN/SETCHAN are obsoleted. - ioctl AUDIO_{QUERY,GET,SET}FORMAT are introduced. - cleanup config attributes: au*conv and mulaw. - All hardware drivers should follow it (I've done as much as possible).
Some file paths are changed: - dev/audio.c -> dev/audio/audio.c (rewritten) - dev/audiovar.h -> dev/audio/audiovar.h - dev/audio_dai.h -> dev/audio/audio_dai.h - dev/audio_if.h -> dev/audio/audio_if.h - dev/audiobell.c -> dev/audio/audiobell.c - dev/audiobellvar.h -> dev/audio/audiobellvar.h - dev/mulaw.[ch] -> dev/audio/mulaw.[ch] + dev/audio/alaw.c
|
1.38 |
| 24-Nov-2011 |
mrg | branches: 1.38.50; 1.38.54; put back IPL_AUDIO and splaudio(), at the request of rmind. they are aliases and now we can easily revert audio to IPL_VM if necessary, without having to revert the whole branch.
|
1.37 |
| 23-Nov-2011 |
jmcneill | Merge jmcneill-audiomp3 branch, which is derived from ad-audiomp2. From the original ad-audiomp branch notes:
Add MP locking to the audio drivers.
Making the audio drivers MP safe is necessary before efforts can be made to make the VM system MP safe.
The are two locks per device instance, an ISR lock and a character device lock. The ISR lock replaces calls to splaudio()/splx(), and will be held across calls to device methods which were called at splaudio() before (e.g. trigger_output). The character device lock is held across calls to nearly all of the methods, excluding some only used for initialization, e.g. get_locks.
Welcome to 5.99.57.
|
1.36 |
| 15-Mar-2008 |
cube | branches: 1.36.16; 1.36.38; 1.36.40; Split device_t and softc for sb(4) and all its attachments.
|
1.35 |
| 19-Oct-2007 |
ad | branches: 1.35.12; 1.35.16; machine/{bus,cpu,intr}.h -> sys/{bus,cpu,intr}.h
|
1.34 |
| 16-Nov-2006 |
christos | branches: 1.34.6; 1.34.8; 1.34.22; 1.34.24; 1.34.28; __unused removal on arguments; approved by core.
|
1.33 |
| 12-Oct-2006 |
christos | - sprinkle __unused on function decls. - fix a couple of unused bugs - no more -Wno-unused for i386
|
1.32 |
| 11-Dec-2005 |
christos | branches: 1.32.20; 1.32.22; merge ktrace-lwp.
|
1.31 |
| 27-Feb-2005 |
perry | branches: 1.31.4; nuke trailing whitespace
|
1.30 |
| 04-Feb-2005 |
perry | de-__P
|
1.29 |
| 02-Oct-2002 |
thorpej | branches: 1.29.6; 1.29.14; 1.29.16; Fix sizeof and whitespace bug from the script I'm using to do the CFATTACH_DECL conversion. (Grumble.)
|
1.28 |
| 02-Oct-2002 |
thorpej | Use CFATTACH_DECL().
|
1.27 |
| 27-Sep-2002 |
thorpej | Declare all cfattach structures const.
|
1.26 |
| 11-Jan-2002 |
jdolecek | Fix fallout from previous - the 'sc->sc_dev.dv_cfdata = match' needs to be retained, it's referenced in sbdsp.c:sbdsp_probe().
|
1.25 |
| 07-Jan-2002 |
thorpej | Overhaul of the ISA autoconfiguration code to support direct configuration of devices logically attached to the ISA bus:
* Change the isa_attach_args to have arrays of io, mem, irq, drq resources. * Add a "pnpnames" and a linked list of "pnpcompatnames" to the isa_attach_args. If either of these members are non-NULL, direct configuration of the bus is being performed. Add an ISA_DIRECT_CONFIG() macro to test for this. * Drivers are not allowed to modify the isa_attach_args unless direct configuration is not being performed and the probe fucntion is returning success. * Adapt device drivers -- currently, all driver probe routines return "no match" if ISA_DIRECT_CONFIG() evaluates to true.
|
1.24 |
| 13-Nov-2001 |
lukem | add RCSID
|
1.23 |
| 18-Jul-2001 |
thorpej | bzero -> memset
|
1.22 |
| 07-Sep-1999 |
soren | branches: 1.22.14; 1.22.16; Do not complain in sbfind() if another driver has mapped the registers.
|
1.21 |
| 22-Mar-1999 |
mycroft | Several things: * Rearrange the speed mapping table and adjust the code so that the highest rate can actually be used. Previously we ended up rounding up slightly lower speeds and then losing because set_params couldn't set the mode back to the current one. * Allow 260 as a valid I/O address, since the SB1 can be jumpered to this. * Change the MPU-401 code so it can be attached as a separate device. (XXX Really, the SB code ought to just attach a subdevice itself.) * Do not attach an OPL on the SB1. Writing to the OPL registers at SB_base+0 on this card wedges my machine. (XXX Should we access it at 388 instead? The Creative web site claims that this board *does* have an OPL2, but I haven't played with this extensively.) * Allocate the SB DMA channels at open time, rather than attach time, so that a single DRQ can be used for multiple cards (if only one is in use at a given time). (XXX Let me tell you why this is a horrible hack. If the ISA DMA code tries to allocate a bounce buffer after boot time, it will generally fail, because there is no contiguous memory below 16MB and the code to allocate contiguous pages doesn't know how to move things around. Now, we shouldn't ever be using bounce buffers here, because we use isa_dmamem_alloc(). So we just turn off BUS_DMA_ALLOCNOW and we don't actually try to. That's cool, and it even works, but isa_dmamem_alloc() has the same problem. It just happens that we allocate the ring buffers at boot time, and whenever we reallocate them (due to the buffer size changing), we just deallocated the previous (contiguous) buffer, so we get lucky. This is absolutely disgusting and needs to be fixed.)
|
1.20 |
| 19-Feb-1999 |
mycroft | Move IRQ setup into frontend. Need to move DRQ handling as well.
|
1.19 |
| 17-Aug-1998 |
augustss | * 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.
|
1.18 |
| 29-Jun-1998 |
thorpej | Interrupt share type is EDGE.
|
1.17 |
| 09-Jun-1998 |
thorpej | Nuke __BROKEN_INDIRECT_CONFIG.
|
1.16 |
| 09-Jun-1998 |
thorpej | Adjust for changes to the ISA DMA API.
|
1.15 |
| 30-Nov-1997 |
drochner | fix inconsistent declaration in non-"__BROKEN_INDIRECT_CONFIG" case
|
1.14 |
| 28-Aug-1997 |
augustss | branches: 1.14.4; Zap drq2 if unused.
|
1.13 |
| 26-Aug-1997 |
augustss | 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.
|
1.12 |
| 25-Aug-1997 |
augustss | Fix the "non-broken" indirect configuration so it might actually work.
|
1.11 |
| 24-Aug-1997 |
augustss | Remove indirect brokenness.
|
1.10 |
| 07-Aug-1997 |
augustss | Add a 'return 1' that got lost in the last commit.
|
1.9 |
| 04-Aug-1997 |
augustss | Implement a function to test if a drq is taken and use it in two drivers. There are still many drivers left to fix...
|
1.8 |
| 27-Jul-1997 |
augustss | branches: 1.8.2; 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.
|
1.7 |
| 06-Jun-1997 |
thorpej | Pull thorpej-bus-dma branch into mainline.
|
1.6 |
| 23-May-1997 |
augustss | Redo the way selecting the mode for SB cards is done completely. It is now table driven since there are so many different variations of SB cards out there. Also fix a bug that stopped SB2 and SBPro from working.
|
1.5 |
| 17-May-1997 |
augustss | Change lowater calculation a little. Fix mixer setting bug and add some missing splaudio(). Set SB drq16 to 5 and don't pretend to be SB v1.0.
|
1.4 |
| 13-May-1997 |
augustss | Clean up emulation code, SB, and GUS drivers and add some more encoding emulation to SB.
|
1.3 |
| 20-Mar-1997 |
mycroft | branches: 1.3.2; Add 16-bit DRQ support on PnP, and enable 16-bit output.
|
1.2 |
| 12-Feb-1997 |
thorpej | Pass the i/o handle, not bus PA, to bus_space_unmap(). From Matthias Drochner <drochner@zelz28.zel.kfa-juelich.de>, in PR #3216.
|
1.1 |
| 16-Jan-1997 |
christos | branches: 1.1.2; 1.1.4; - convert to bus_space_* - split attachment code to sb_isa.c
|
1.1.4.1 |
| 12-Mar-1997 |
is | Merge in changes from The Trunk
|
1.1.2.2 |
| 18-Jan-1997 |
thorpej | Update from trunk.
|
1.1.2.1 |
| 16-Jan-1997 |
thorpej | file sb_isa.c was added on branch thorpej-setroot on 1997-01-18 04:30:37 +0000
|
1.3.2.3 |
| 24-May-1997 |
thorpej | Update from trunk.
|
1.3.2.2 |
| 19-May-1997 |
thorpej | Update from trunk.
|
1.3.2.1 |
| 13-May-1997 |
thorpej | Adapt to new software interface to the on-board ISA DMA controller.
|
1.8.2.3 |
| 01-Sep-1997 |
thorpej | Update marc-pcmcia branch from trunk.
|
1.8.2.2 |
| 27-Aug-1997 |
thorpej | Update marc-pcmcia branch from trunk.
|
1.8.2.1 |
| 23-Aug-1997 |
thorpej | Update marc-pcmcia branch from trunk.
|
1.14.4.1 |
| 17-Dec-1997 |
mellon | Pull rev 1.15 up from trunk (mycroft)
|
1.22.16.4 |
| 10-Oct-2002 |
jdolecek | sync kqueue with -current; this includes merge of gehenna-devsw branch, merge of i386 MP branch, and part of autoconf rototil work
|
1.22.16.3 |
| 11-Feb-2002 |
jdolecek | Sync w/ -current.
|
1.22.16.2 |
| 10-Jan-2002 |
thorpej | Sync kqueue branch with -current.
|
1.22.16.1 |
| 03-Aug-2001 |
lukem | update to -current
|
1.22.14.5 |
| 18-Oct-2002 |
nathanw | Catch up to -current.
|
1.22.14.4 |
| 28-Feb-2002 |
nathanw | Catch up to -current.
|
1.22.14.3 |
| 11-Jan-2002 |
nathanw | More catchup.
|
1.22.14.2 |
| 14-Nov-2001 |
nathanw | Catch up to -current.
|
1.22.14.1 |
| 24-Aug-2001 |
nathanw | Catch up with -current.
|
1.29.16.2 |
| 19-Mar-2005 |
yamt | sync with head. xen and whitespace. xen part is not finished.
|
1.29.16.1 |
| 12-Feb-2005 |
yamt | sync with head.
|
1.29.14.1 |
| 29-Apr-2005 |
kent | sync with -current
|
1.29.6.2 |
| 04-Mar-2005 |
skrll | Sync with HEAD.
Hi Perry!
|
1.29.6.1 |
| 04-Feb-2005 |
skrll | Sync with HEAD.
|
1.31.4.3 |
| 17-Mar-2008 |
yamt | sync with head.
|
1.31.4.2 |
| 27-Oct-2007 |
yamt | sync with head.
|
1.31.4.1 |
| 30-Dec-2006 |
yamt | sync with head.
|
1.32.22.2 |
| 10-Dec-2006 |
yamt | sync with head.
|
1.32.22.1 |
| 22-Oct-2006 |
yamt | sync with head
|
1.32.20.1 |
| 18-Nov-2006 |
ad | Sync with head.
|
1.34.28.1 |
| 25-Oct-2007 |
bouyer | Sync with HEAD.
|
1.34.24.2 |
| 23-Mar-2008 |
matt | sync with HEAD
|
1.34.24.1 |
| 06-Nov-2007 |
matt | sync with HEAD
|
1.34.22.1 |
| 26-Oct-2007 |
joerg | Sync with HEAD.
Follow the merge of pmap.c on i386 and amd64 and move pmap_init_tmp_pgtbl into arch/x86/x86/pmap.c. Modify the ACPI wakeup code to restore CR4 before jumping back into kernel space as the large page option might cover that.
|
1.34.8.1 |
| 23-Oct-2007 |
ad | Sync with head.
|
1.34.6.1 |
| 27-Feb-2007 |
ad | Add MP locking for audio drivers.
|
1.35.16.1 |
| 03-Apr-2008 |
mjf | Sync with HEAD.
|
1.35.12.1 |
| 24-Mar-2008 |
keiichi | sync with head.
|
1.36.40.1 |
| 19-Nov-2011 |
jmcneill | port ad-audiomp2 branch changes to 5.99.56 todo: - port ad-audiomp2 pcppi changes - these drivers need to be fixed: - emuxki - gcscaudio - hdafg - uaudio - umidi - MD audio drivers
|
1.36.38.1 |
| 17-Apr-2012 |
yamt | sync with head
|
1.36.16.1 |
| 08-Dec-2008 |
ad | Convert some more drivers.
|
1.38.54.2 |
| 04-May-2019 |
isaki | Move dev/audio_if.h -> dev/audio/audio_if.h
|
1.38.54.1 |
| 03-May-2019 |
isaki | Remove dev/auconv.[ch]. Now it is handled in dev/audio/audio.c and dev/audio/linear.c. Remove dev/mulaw.h. It already have been just a link to dev/audio/mulaw.h in this branch.
|
1.38.50.1 |
| 10-Jun-2019 |
christos | Sync with HEAD
|