Hi isaki@, I'm currently making in kernel mixing optional depending on a sysctl variable to benefit slower/older platforms and as a default if audio auto config fails, it will work as audio did before in kernel mixing.
This commit was an intermediate works as I may have to inject audio into the mixring directly and as such it would be more usefull as a virtual channel. If possible I will use the hardware ring directly in this case I will restore the record/play ringbuffers and reduce the memory consumption of this commit. Best regards, Nat On Mon, 25 Sep 2017 22:58:56 Tetsuya Isaki wrote > At Sun, 24 Sep 2017 23:40:41 +0000, > > > Module Name: src > > Committed By: nat > > Date: Sun Sep 24 23:40:41 UTC 2017 > > > > Modified Files: > > src/sys/dev: audio.c audiovar.h > > > > Log Message: > > Move play/rec mix ring buffers into a virtual channel sc_mixring. NFCI. > > > > > > To generate a diff of this commit: > > cvs rdiff -u -r1.406 -r1.407 src/sys/dev/audio.c > > cvs rdiff -u -r1.64 -r1.65 src/sys/dev/audiovar.h > > Is struct virtual_channel too large (sparse) to only have > two ring buffers? sizeof(struct virtual_channel) is 1244 bytes > and one sizeof(struct audio_ringbuffer) is 92 bytes on recent i386. > And I also think mixring is not (a part of) virtual channel. > > However, I agree the name of sc->sc_pr/sc_rr is not easy to > understand if you are focusing on the name. > > Thanks, > --- > Tetsuya Isaki <is...@pastel-flower.jp / is...@netbsd.org>