would either:
1. Cause the machine to stop responding, or
2. Cause the currently playing voices to stop output.
With this change, voices are stopped on suspend, and continue from where they
left off on resume.
audio accelerators.
Mixing is done in hardware by the ASSP, but is limited to 4 simultaneous
channels due to the restricted "minisrc" image that we are currently
working with.
Due to limitations in the audio subsystem, I'm currently attaching multiple
'audio' devices to 'esa', one for each voice. Because of this hack, the
default ESA_NUM_VOICES is 1.
to the mixer. Ie:
$ mixerctl -w outputs.master=0,191
Would result in the _right_ speaker being turned off.
So, we will swap the left and right mixer channels to compensate
for this.
fancy, works for the basic output case, but does not support programs
which use playback while going into suspend.
Sketched after code found in FreeBSD and Linux drivers.