History log of /src/sys/arch/macppc/dev/awacs.c |
Revision | | Date | Author | Comments |
1.52 |
| 30-Aug-2023 |
macallan | don't abuse the interrupt lock for waits in the event thread
|
1.51 |
| 05-Mar-2021 |
rin | Convert to intr_establish_xname().
|
1.50 |
| 06-Feb-2021 |
isaki | Calling halt_{input,output} is done by the MI audio layer if necessary.
|
1.49 |
| 26-Jan-2021 |
thorpej | There is not much point in of_compatible() returning -1 for "no match" and >= 0 for "match". Just make it return 0 for "no match" and >0 for "match" so it can be treated like a boolean expression.
As such of_match_compatible() (a wrapper around of_compatible()) is now obsolete, and will be removed once all call sites are converted to an appropriate replacement.
|
1.48 |
| 08-Jun-2019 |
isaki | branches: 1.48.10; Clean get_props(). - Make get_props() return AUDIO_PROP_{PLAYBACK,CAPTURE} properly. This eliminates need for audio.c to take care of such (old) drivers which don't return both of PLAYBACK and CAPTURE. - All get_props() doesn't need to return AUDIO_PROP_MMAP. It is handled in the audio layer now.
|
1.47 |
| 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.46 |
| 16-Mar-2019 |
isaki | branches: 1.46.2; Use C99 style struct initializer to audio_hw_if.
|
1.45 |
| 24-Aug-2016 |
macallan | branches: 1.45.16; don't grab the interrupt lock around mixer operations
|
1.44 |
| 15-Jul-2016 |
macallan | adjust to dbdma changes
|
1.43 |
| 02-Nov-2012 |
phx | branches: 1.43.14; 1.43.18; My PowerMac3,1 is using gpio4 to detect a connected headphone, and I would bet that the same is true for PowerMac3,2.
|
1.42 |
| 24-Nov-2011 |
mrg | branches: 1.42.4; 1.42.8; 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.41 |
| 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.40 |
| 20-Feb-2011 |
macallan | branches: 1.40.4; 1.40.6; bus_spacify, while there explicitly un-mute the headphone output when using the beige G3's external mixer
|
1.39 |
| 22-Dec-2010 |
macallan | branches: 1.39.2; 1.39.4; we need uvm_extern.h now
|
1.38 |
| 20-Dec-2010 |
matt | Move counting of faults, traps, intrs, soft[intr]s, syscalls, and nswtch from uvmexp to per-cpu cpu_data and move them to 64bits. Remove unneeded includes of <uvm/uvm_extern.h> and/or <uvm/uvm.h>.
|
1.37 |
| 07-Sep-2010 |
macallan | make this work with PMF hotkey events Now the volume control buttons work on my Pismo
|
1.36 |
| 05-Nov-2009 |
dyoung | branches: 1.36.2; 1.36.4; In awacs(4) and snapper(4), use deviter(9) instead of accessing alldevs directly.
In pbms(4), delete some unused debugging macros, expand USB compatibility macros, and add a child-detachment routine. Simplify pbms(4) deactivation and detachment.
These changes are compile-tested, only.
|
1.35 |
| 27-Aug-2008 |
jmcneill | branches: 1.35.4; PR#39414: No audio from awacs on PowerBook G3 (Firewire/Pismo)
Don't enable parallel output on PowerBook3,1 models.
|
1.34 |
| 16-May-2008 |
macallan | branches: 1.34.4; struct device * -> device_t
|
1.33 |
| 04-Nov-2007 |
macallan | branches: 1.33.16; 1.33.18; 1.33.20; 1.33.22; add a mixer control for the loopthrough channel that some awacs have - it controls the volume of input data looped through to the output ( for listening to what you record, it has no influence on recording level ) - defaults to zero.
|
1.32 |
| 18-Oct-2007 |
macallan | - make match() return 100 for awacs and only 1 for i2s - correct gpio wiring for PowerMac3,3 / Gigabit G4
|
1.31 |
| 17-Oct-2007 |
garbled | Merge the ppcoea-renovation branch to HEAD.
This branch was a major cleanup and rototill of many of the various OEA cpu based PPC ports that focused on sharing as much code as possible between the various ports to eliminate near-identical copies of files in every tree. Additionally there is a new PIC system that unifies the interface to interrupt code for all different OEA ppc arches. The work for this branch was done by a variety of people, too long to list here.
TODO: bebox still needs work to complete the transition to -renovation. ofppc still needs a bunch of work, which I will be looking at. ev64260 still needs to be renovated amigappc was not attempted.
NOTES: pmppc was removed as an arch, and moved to a evbppc target.
|
1.30 |
| 14-Aug-2007 |
macallan | branches: 1.30.2; 1.30.4; 1.30.6; fix a logic botch in the headphone wiring setup - what was thought to be 'screamer' specific is actually beige G3 specific.
|
1.29 |
| 09-Jul-2007 |
ad | branches: 1.29.4; 1.29.8; Merge some of the less invasive changes from the vmlocking branch:
- kthread, callout, devsw API changes - select()/poll() improvements - miscellaneous MT safety improvements
|
1.28 |
| 25-Mar-2007 |
macallan | branches: 1.28.4; automatically switch between speaker and headphone output, simplify mixer controls to match snapper XXX - the gpios to monitor audio jacks are wired differently on different Macs, this is known to work right on beige G3, PowerBook 3400 and Performa 63xx, it should do The Right Thing on others as well but needs more testing
|
1.27 |
| 25-Mar-2007 |
jmcneill | Handle the input change interrupt, and automatically switch between headphone and speaker as appropriate.
|
1.26 |
| 28-Feb-2007 |
thorpej | branches: 1.26.2; 1.26.4; 1.26.6; TRUE -> true, FALSE -> false
|
1.25 |
| 17-Jan-2007 |
macallan | branches: 1.25.2; use sgsmix if present and appropriate
|
1.24 |
| 11-Dec-2005 |
christos | branches: 1.24.20; merge ktrace-lwp.
|
1.23 |
| 15-Jan-2005 |
kent | branches: 1.23.10; ansify and KNF
|
1.22 |
| 10-Jan-2005 |
kent | merge kent-audio1 branch, which introduces audio filter pipeline to the MI audio framework
Summary of changes:
* struct audio_params - remove sw_code, factor, factor_denom, hw_sample_rate, hw_encoding ,hw_precision, and hw_channels. Conversion information is conveyed by stream_filter_list_t. - change the type of sample_rate: u_long -> u_int - add `validbits,' which represents the valid data size in precision bits. It is required in order to distinguish 24/32bit from 24/24bit or 32/32bit.
* audio_hw_if - add two parameters to set_params() stream_filter_list_t *pfil, stream_filter_list *rfil A HW driver should set filter recipes for requested formats - constify audio_params parameters of trigger_output() and trigger_input(). They represent audio formats for the hardware. - make open() and close() optional - add int (AUMODE_PLAY or AUMODE_RECORD) and audio_params_t parameters to round_blocksize()
* sw_code is replaced with stream_filter_t. stream_filer_t converts audio data in an input buffer and writes into another output buffer unlike sw_code, which converts data in single buffer. converters in dev/auconv.c, dev/mulaw.c, dev/aurateconv.c, dev/tc/bba.c, dev/ic/msm6258.c, and arch/arm/iomd/vidcaudio.c are reimplemented as stream_filter_t
* MI audio - audiosetinfo() builds filter pipelines from stream_filter_list_t filled by audio_hw_if::set_params() - audiosetinfo() returns with EINVAL if mmapped and set_params() requests filters - audio_write(), audio_pint(), and audio_rint() invoke a filter pipeline. - ioctl() for FIONREAD, AUDIO_WSEEK, AUDIO_GETIOFFS, AUDIO_GETOOFFS, and audio_prinfo::{seek,samples} for AUDIO_GETINFO handle values for a buffer nearest to userland.
* add `struct device *' parameter to ac97_attach()
* all of audio HW drivers follow audio_hw_if and ac97 changes
|
1.21 |
| 29-Oct-2004 |
yamt | branches: 1.21.2; constify audio_hw_if, midi_hw_if, and radio_hw_if.
|
1.20 |
| 02-Nov-2003 |
thorpej | Squish some recent compiler warnings.
|
1.19 |
| 15-Jul-2003 |
lukem | __KERNEL_RCSID()
|
1.18 |
| 03-May-2003 |
wiz | branches: 1.18.2; DMA, not dma nor Dma.
|
1.17 |
| 02-Apr-2003 |
thorpej | Use PAGE_SIZE rather than NBPG.
|
1.16 |
| 04-Mar-2003 |
soren | Attach on recent TiBooks. XXX The mixer doesn't work yet.
|
1.15 |
| 13-Oct-2002 |
wiz | Support 48kHz by using aurateconv. Based on a patch by TAMURA Kent -- thanks!
|
1.14 |
| 02-Oct-2002 |
thorpej | Use CFATTACH_DECL().
|
1.13 |
| 27-Sep-2002 |
thorpej | Declare all cfattach structures const.
|
1.12 |
| 03-Oct-2001 |
augustss | branches: 1.12.4; 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).
|
1.11 |
| 19-Jun-2001 |
simonb | branches: 1.11.2; 1.11.4; Add/change prototypes so that macpcc builds with -Wstrict-prototypes.
|
1.10 |
| 08-Jun-2001 |
matt | Make macppc compile by default with -Wall -Wmissing-prototype in addition to its currently enabled warnings. For the lack of a better place, most global function prototype wound up in <machine/autoconf.h> unless there was a better place for them. ofb_* structs renamed to offb_* to avoid conflict with ofb_softc in <dev/ofw/openfirm.h>
|
1.9 |
| 05-Apr-2001 |
tsubai | Support uni-north based models. (XXX not complete)
|
1.8 |
| 05-Apr-2001 |
tsubai | Correct input volume settings.
|
1.7 |
| 15-Mar-2001 |
tsubai | Accept 8000Hz (XXX).
|
1.6 |
| 15-Mar-2001 |
tsubai | Add ulinear16 support. Return EINVAL if specified rate is not available.
|
1.5 |
| 12-Mar-2001 |
tsubai | Round up block size to at least NBPG bytes.
|
1.4 |
| 26-Feb-2001 |
wiz | branches: 1.4.2; add handling for the input channel selection/volume (no recording yet, just the mixer interface)
|
1.3 |
| 25-Jan-2001 |
wiz | branches: 1.3.2; Make output selection work -- you can use lineout now instead of the internal loudspeakers.
|
1.2 |
| 03-Nov-2000 |
tsubai | branches: 1.2.2; Don't match if nintr > 12 (more than 3 cells).
|
1.1 |
| 25-Aug-2000 |
tsubai | Add (experimental) awacs audio driver. Output (play) only.
|
1.2.2.7 |
| 21-Apr-2001 |
bouyer | Sync with HEAD
|
1.2.2.6 |
| 27-Mar-2001 |
bouyer | Sync with HEAD.
|
1.2.2.5 |
| 12-Mar-2001 |
bouyer | Sync with HEAD.
|
1.2.2.4 |
| 11-Feb-2001 |
bouyer | Sync with HEAD.
|
1.2.2.3 |
| 22-Nov-2000 |
bouyer | Sync with HEAD.
|
1.2.2.2 |
| 20-Nov-2000 |
bouyer | Update thorpej_scsipi to -current as of a month ago A i386 GENERIC kernel compiles without the siop, ahc and bha drivers (will be updated later). i386 IDE/ATAPI and ncr work, as well as sparc/esp_sbus. alpha should work as well (untested yet). siop, ahc and bha will be updated once I've updated the branch to current -current, as well as machine-dependant code.
|
1.2.2.1 |
| 03-Nov-2000 |
bouyer | file awacs.c was added on branch thorpej_scsipi on 2000-11-20 20:12:56 +0000
|
1.3.2.4 |
| 22-Mar-2001 |
he | Pull up revisions 1.5-1.7 (requested by tsubai): Round up block size to at least NBPG bytes. Return EINVAL if specified sample rate is not available. Fix 16bit ulinear bug, and enable ulinear.
|
1.3.2.3 |
| 26-Feb-2001 |
he | Apply patch (requested by wrstuden): Make this compile on this release branch.
|
1.3.2.2 |
| 04-Feb-2001 |
he | Pull up revision 1.1 (new, requested by mycroft): Add new driver for Apple sound chip.
|
1.3.2.1 |
| 25-Jan-2001 |
he | file awacs.c was added on branch netbsd-1-5 on 2001-02-04 20:22:48 +0000
|
1.4.2.2 |
| 21-Jun-2001 |
nathanw | Catch up to -current.
|
1.4.2.1 |
| 09-Apr-2001 |
nathanw | Catch up with -current.
|
1.11.4.1 |
| 11-Oct-2001 |
fvdl | Catch up with -current. Fix some bogons in the sparc64 kbd/ms attach code. cd18xx conversion provided by mrg.
|
1.11.2.2 |
| 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.11.2.1 |
| 10-Jan-2002 |
thorpej | Sync kqueue branch with -current.
|
1.12.4.2 |
| 18-Oct-2002 |
nathanw | Catch up to -current.
|
1.12.4.1 |
| 03-Oct-2001 |
nathanw | file awacs.c was added on branch nathanw_sa on 2002-10-18 02:38:34 +0000
|
1.18.2.5 |
| 17-Jan-2005 |
skrll | Sync with HEAD.
|
1.18.2.4 |
| 02-Nov-2004 |
skrll | Sync with HEAD.
|
1.18.2.3 |
| 21-Sep-2004 |
skrll | Fix the sync with head I botched.
|
1.18.2.2 |
| 18-Sep-2004 |
skrll | Sync with HEAD.
|
1.18.2.1 |
| 03-Aug-2004 |
skrll | Sync with HEAD
|
1.21.2.2 |
| 09-Jan-2005 |
kent | audio_hw_if change * make open() and close() optional * add int (AUMODE_PLAY or AUMODE_RECORD) and audio_params_t parameters to round_blocksize()
|
1.21.2.1 |
| 03-Jan-2005 |
kent | adopt the filter pipeline framework
|
1.23.10.4 |
| 15-Nov-2007 |
yamt | sync with head.
|
1.23.10.3 |
| 27-Oct-2007 |
yamt | sync with head.
|
1.23.10.2 |
| 03-Sep-2007 |
yamt | sync with head.
|
1.23.10.1 |
| 26-Feb-2007 |
yamt | sync with head.
|
1.24.20.1 |
| 01-Feb-2007 |
ad | Sync with head.
|
1.25.2.2 |
| 15-Apr-2007 |
yamt | sync with head.
|
1.25.2.1 |
| 12-Mar-2007 |
rmind | Sync with HEAD.
|
1.26.6.1 |
| 29-Mar-2007 |
reinoud | Pullup to -current
|
1.26.4.1 |
| 11-Jul-2007 |
mjf | Sync with head.
|
1.26.2.6 |
| 03-Dec-2007 |
ad | Sync with HEAD.
|
1.26.2.5 |
| 03-Dec-2007 |
ad | Sync with HEAD.
|
1.26.2.4 |
| 23-Oct-2007 |
ad | Sync with head.
|
1.26.2.3 |
| 20-Aug-2007 |
ad | Sync with HEAD.
|
1.26.2.2 |
| 15-Jul-2007 |
ad | Sync with head.
|
1.26.2.1 |
| 10-Apr-2007 |
ad | Sync with head.
|
1.28.4.5 |
| 03-Oct-2007 |
garbled | Sync with HEAD
|
1.28.4.4 |
| 14-Aug-2007 |
macallan | sync with HEAD
|
1.28.4.3 |
| 02-Aug-2007 |
macallan | sync with HEAD
|
1.28.4.2 |
| 14-Jun-2007 |
macallan | fix some bus_spacification fallout
|
1.28.4.1 |
| 11-May-2007 |
macallan | request the correct interrupt type in a couple drivers - necessary since these days we actually do something with the type argument
|
1.29.8.3 |
| 04-Nov-2007 |
jmcneill | Sync with HEAD.
|
1.29.8.2 |
| 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.29.8.1 |
| 16-Aug-2007 |
jmcneill | Sync with HEAD.
|
1.29.4.1 |
| 15-Aug-2007 |
skrll | Sync with HEAD.
|
1.30.6.2 |
| 13-Nov-2007 |
bouyer | Sync with HEAD
|
1.30.6.1 |
| 25-Oct-2007 |
bouyer | Sync with HEAD.
|
1.30.4.1 |
| 18-Oct-2007 |
yamt | sync with head.
|
1.30.2.1 |
| 06-Nov-2007 |
matt | sync with HEAD
|
1.33.22.2 |
| 18-Sep-2008 |
wrstuden | Sync with wrstuden-revivesa-base-2.
|
1.33.22.1 |
| 23-Jun-2008 |
wrstuden | Sync w/ -current. 34 merge conflicts to follow.
|
1.33.20.3 |
| 09-Oct-2010 |
yamt | sync with head
|
1.33.20.2 |
| 11-Mar-2010 |
yamt | sync with head
|
1.33.20.1 |
| 04-May-2009 |
yamt | sync with head.
|
1.33.18.1 |
| 18-May-2008 |
yamt | sync with head.
|
1.33.16.2 |
| 28-Sep-2008 |
mjf | Sync with HEAD.
|
1.33.16.1 |
| 02-Jun-2008 |
mjf | Sync with HEAD.
|
1.34.4.1 |
| 19-Oct-2008 |
haad | Sync with HEAD.
|
1.35.4.1 |
| 06-Nov-2012 |
riz | Pull up following revision(s) (requested by phx in ticket #1816): sys/arch/macppc/dev/awacs.c: revision 1.43 My PowerMac3,1 is using gpio4 to detect a connected headphone, and I would bet that the same is true for PowerMac3,2.
|
1.36.4.1 |
| 05-Mar-2011 |
rmind | sync with head
|
1.36.2.1 |
| 22-Oct-2010 |
uebayasi | Sync with HEAD (-D20101022).
|
1.39.4.1 |
| 05-Mar-2011 |
bouyer | Sync with HEAD
|
1.39.2.1 |
| 06-Jun-2011 |
jruoho | Sync with HEAD.
|
1.40.6.2 |
| 22-Nov-2011 |
jmcneill | get rid of unused 'powerstate' callback in audio_hw_if
|
1.40.6.1 |
| 22-Nov-2011 |
macallan | adapt to jmcneill-audiomp3 from mrg@, minor fixes and testing by me
|
1.40.4.2 |
| 16-Jan-2013 |
yamt | sync with (a bit old) head
|
1.40.4.1 |
| 17-Apr-2012 |
yamt | sync with head
|
1.42.8.2 |
| 03-Dec-2017 |
jdolecek | update from HEAD
|
1.42.8.1 |
| 20-Nov-2012 |
tls | Resync to 2012-11-19 00:00:00 UTC
|
1.42.4.1 |
| 19-Nov-2012 |
riz | Pull up following revision(s) (requested by phx in ticket #666): sys/arch/macppc/dev/awacs.c: revision 1.43 My PowerMac3,1 is using gpio4 to detect a connected headphone, and I would bet that the same is true for PowerMac3,2.
|
1.43.18.1 |
| 26-Jul-2016 |
pgoyette | Sync with HEAD
|
1.43.14.1 |
| 05-Oct-2016 |
skrll | Sync with HEAD
|
1.45.16.1 |
| 10-Jun-2019 |
christos | Sync with HEAD
|
1.46.2.3 |
| 04-May-2019 |
isaki | Move dev/audio_if.h -> dev/audio/audio_if.h
|
1.46.2.2 |
| 24-Apr-2019 |
isaki | Adapt to audio2. - Some models don't have SLINEAR_LE but only SLINEAR_BE is enough.
|
1.46.2.1 |
| 21-Apr-2019 |
isaki | Use C99 style struct initializer to audio_format.
|
1.48.10.1 |
| 03-Apr-2021 |
thorpej | Sync with HEAD.
|