History log of /src/sys/dev/pci/gcscaudio.c |
Revision | | Date | Author | Comments |
1.20 |
| 07-Feb-2024 |
msaitoh | Remove ryo@'s mail addresses.
|
1.19 |
| 29-Feb-2020 |
isaki | round_blocksize must return a multiple of the framesize. It's not divisible when blk=GCSCAUDI_PRD_SIZE_MAX and channels=4.
|
1.18 |
| 08-Jun-2019 |
isaki | branches: 1.18.2; 1.18.4; 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.17 |
| 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.16 |
| 09-Dec-2018 |
jdolecek | branches: 1.16.2; use pci_intr_establish_xname() everywhere
|
1.15 |
| 01-Jun-2017 |
chs | branches: 1.15.8; 1.15.10; remove checks for failure after memory allocation calls that cannot fail:
kmem_alloc() with KM_SLEEP kmem_zalloc() with KM_SLEEP percpu_alloc() pserialize_create() psref_class_create()
all of these paths include an assertion that the allocation has not failed, so callers should not assert that again.
|
1.14 |
| 29-Mar-2014 |
christos | branches: 1.14.6; make pci_intr_string and eisa_intr_string take a buffer and a length instead of relying in local static storage.
|
1.13 |
| 31-Jan-2014 |
ryo | fix a problem to set sample rate of AC97 codec.
|
1.12 |
| 02-Mar-2012 |
nonaka | branches: 1.12.2; 1.12.4; convert to device_t.
|
1.11 |
| 25-Nov-2011 |
jmcneill | branches: 1.11.2; remove an unnecessary call to vtbl->unlock
|
1.10 |
| 25-Nov-2011 |
jmcneill | need to hold thread lock when using AC97_IS_* macros
|
1.9 |
| 24-Nov-2011 |
mrg | 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.8 |
| 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.7 |
| 09-Jun-2011 |
joerg | branches: 1.7.2; 1.7.4; Use a format string when printing strings
|
1.6 |
| 13-Nov-2010 |
uebayasi | branches: 1.6.6; Don't pull in the whole uvm(9) API to access only PAGE_SIZE and some other constants. These are provided by sys/param.h now.
|
1.5 |
| 24-Feb-2010 |
dyoung | branches: 1.5.2; 1.5.4; A pointer typedef entails trading too much flexibility to declare const and non-const types, and the kernel uses both const and non-const PMF qualifiers and device suspensors, so change the pmf_qual_t and device_suspensor_t typedefs from "pointers to const" to non-pointer, non-const types.
|
1.4 |
| 08-Jan-2010 |
dyoung | branches: 1.4.2; Expand PMF_FN_* macros.
|
1.3 |
| 26-Nov-2009 |
njoly | Cleanup interrupt establish error messages. Do not mix aprint_error/aprint_normal/printf calls for a single line.
|
1.2 |
| 06-May-2009 |
cegger | struct cfdata * -> cfdata_t, no functional changes intended.
|
1.1 |
| 28-Dec-2008 |
jmcneill | branches: 1.1.2; 1.1.4; 1.1.6; 1.1.8; 1.1.10; PR# port-i386/40284: add AMD Geode CS5536 audio driver; written by SHIMIZU Ryo <ryo@nerv.org>
|
1.1.10.4 |
| 11-Mar-2010 |
yamt | sync with head
|
1.1.10.3 |
| 16-May-2009 |
yamt | sync with head
|
1.1.10.2 |
| 04-May-2009 |
yamt | sync with head.
|
1.1.10.1 |
| 28-Dec-2008 |
yamt | file gcscaudio.c was added on branch yamt-nfs-mp on 2009-05-04 08:12:55 +0000
|
1.1.8.2 |
| 01-May-2009 |
snj | Pull up following revision(s) (requested by jmcneill in ticket #260): sys/dev/pci/files.pci: revision 1.309 sys/dev/pci/gcscaudio.c: revision 1.1 sys/dev/pci/gcscaudioreg.h: revision 1.1 PR# port-i386/40284: add AMD Geode CS5536 audio driver; written by SHIMIZU Ryo <ryo@nerv.org>
|
1.1.8.1 |
| 28-Dec-2008 |
snj | file gcscaudio.c was added on branch netbsd-5 on 2009-05-01 01:19:09 +0000
|
1.1.6.1 |
| 13-May-2009 |
jym | Sync with HEAD.
Commit is split, to avoid a "too many arguments" protocol error.
|
1.1.4.2 |
| 19-Jan-2009 |
skrll | Sync with HEAD.
|
1.1.4.1 |
| 28-Dec-2008 |
skrll | file gcscaudio.c was added on branch nick-hppapmap on 2009-01-19 13:18:25 +0000
|
1.1.2.2 |
| 17-Jan-2009 |
mjf | Sync with HEAD.
|
1.1.2.1 |
| 28-Dec-2008 |
mjf | file gcscaudio.c was added on branch mjf-devfs2 on 2009-01-17 13:28:59 +0000
|
1.4.2.1 |
| 30-Apr-2010 |
uebayasi | Sync with HEAD.
|
1.5.4.2 |
| 21-Apr-2010 |
matt | sync to netbsd-5
|
1.5.4.1 |
| 24-Feb-2010 |
matt | file gcscaudio.c was added on branch matt-nb5-mips64 on 2010-04-21 00:27:40 +0000
|
1.5.2.2 |
| 12-Jun-2011 |
rmind | sync with head
|
1.5.2.1 |
| 05-Mar-2011 |
rmind | sync with head
|
1.6.6.1 |
| 23-Jun-2011 |
cherry | Catchup with rmind-uvmplock merge.
|
1.7.4.4 |
| 22-Nov-2011 |
jmcneill | get rid of unused 'powerstate' callback in audio_hw_if
|
1.7.4.3 |
| 20-Nov-2011 |
jmcneill | need to hold intr_lock when calling audio_pint/audio_rint
|
1.7.4.2 |
| 19-Nov-2011 |
jmcneill | add gcscaudio_get_locks()
|
1.7.4.1 |
| 19-Nov-2011 |
jmcneill | adapt to audiomp api changes
|
1.7.2.2 |
| 22-May-2014 |
yamt | sync with head.
for a reference, the tree before this commit was tagged as yamt-pagecache-tag8.
this commit was splitted into small chunks to avoid a limitation of cvs. ("Protocol error: too many arguments")
|
1.7.2.1 |
| 17-Apr-2012 |
yamt | sync with head
|
1.11.2.3 |
| 06-Mar-2012 |
mrg | sync to -current
|
1.11.2.2 |
| 06-Mar-2012 |
mrg | sync to -current
|
1.11.2.1 |
| 04-Mar-2012 |
mrg | sync to latest -current.
|
1.12.4.1 |
| 18-May-2014 |
rmind | sync with head
|
1.12.2.2 |
| 03-Dec-2017 |
jdolecek | update from HEAD
|
1.12.2.1 |
| 20-Aug-2014 |
tls | Rebase to HEAD as of a few days ago.
|
1.14.6.1 |
| 28-Aug-2017 |
skrll | Sync with HEAD
|
1.15.10.2 |
| 08-Apr-2020 |
martin | Merge changes from current as of 20200406
|
1.15.10.1 |
| 10-Jun-2019 |
christos | Sync with HEAD
|
1.15.8.1 |
| 26-Dec-2018 |
pgoyette | Sync with HEAD, resolve a few conflicts
|
1.16.2.4 |
| 04-May-2019 |
isaki | Move dev/audio_if.h -> dev/audio/audio_if.h
|
1.16.2.3 |
| 04-May-2019 |
isaki | Remove obsoleted methods in audio_hw_if. - drain: is handled in audio upper layer now. - mappage: is handled in audio upper layer now. - setfd: no one uses and it's meaningless now.
|
1.16.2.2 |
| 28-Apr-2019 |
isaki | Adapt to audio2.
|
1.16.2.1 |
| 21-Apr-2019 |
isaki | Use C99 style struct initializer to audio_format.
|
1.18.4.1 |
| 29-Feb-2020 |
ad | Sync with head.
|
1.18.2.1 |
| 21-Mar-2020 |
martin | Pull up following revision(s) (requested by isaki in ticket #792):
sys/arch/amiga/dev/aucc.c: revision 1.48 sys/dev/pci/auixp.c: revision 1.49 sys/dev/pci/gcscaudio.c: revision 1.19 sys/dev/pci/auich.c: revision 1.159 sys/dev/sbus/dbri.c: revision 1.42 sys/dev/pci/auvia.c: revision 1.85 sys/dev/pci/auacer.c: revision 1.39
Drop 512 bytes limit on auvia_round_blocksize().
This fixes attach on 6 channels device. PR kern/55017.
round_blocksize must return a multiple of the framesize. aucc(4) supports 3 channels mode.
round_blocksize must return a multiple of the framesize even if passed blocksize is greater than the upper limit.
round_blocksize must return a multiple of the framesize.
It's not divisible when blk=GCSCAUDI_PRD_SIZE_MAX and channels=4. round_blocksize must return a multiple of the framesize even if 6 channels mode.
I believe that keeping "good alignment" is just a wish, not constraint.
|