Subject: Re: ACPI suspend support.
To: Jared D. McNeill <jmcneill@invisible.ca>
From: Daniel Carosone <dan@geek.com.au>
List: tech-kern
Date: 01/28/2005 10:01:04
--lMM8JwqTlfDpEaS6
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Thu, Jan 27, 2005 at 06:35:05PM -0400, Jared D. McNeill wrote:
> On Fri, 2005-01-28 at 09:15 +1100, Daniel Carosone wrote:
> >   esa0: esa_read_codec: timed out
>=20
> This makes me curious... If you close all applications using the audio
> device on suspend and start them on resume, does the device still
> function?

Me too.. I started trying a few combinations after sending that mail.

First time, gkrellm is killed before I go to S1, I don't get those
messages, and I can restart gkrellm afterwards without provoking them,
and the sliders work.

However, the volume settings changed across the suspend/resume, and
playing audio produced silence.  It looked like a whole bunch of mixer
settings were changed, so I reboot to capture before and after another
suspend.

# sdiff -w 60 /tmp/before /tmp/after
outputs.master=3D87,87         |  outputs.master=3D7,7
outputs.master.mute=3Doff      |  outputs.master.mute=3Don
outputs.mono=3D255             |  outputs.mono=3D3
outputs.mono.mute=3Don            outputs.mono.mute=3Don
outputs.mono.source=3Dmixerout |  outputs.mono.source=3Dmic
inputs.speaker=3D255           |  inputs.speaker=3D15
inputs.speaker.mute=3Doff      |  inputs.speaker.mute=3Don
inputs.phone=3D191             |  inputs.phone=3D7
inputs.phone.mute=3Don            inputs.phone.mute=3Don
inputs.mic=3D191               |  inputs.mic=3D7
inputs.mic.mute=3Don              inputs.mic.mute=3Don
inputs.mic.preamp=3Doff        |  inputs.mic.preamp=3Don
inputs.mic.source=3Dmic0       |  inputs.mic.source=3Dmic1
inputs.line=3D191,191          |  inputs.line=3D7,7
inputs.line.mute=3Doff         |  inputs.line.mute=3Don
inputs.cd=3D191,191            |  inputs.cd=3D7,7
inputs.cd.mute=3Doff           |  inputs.cd.mute=3Don
inputs.video=3D191,191         |  inputs.video=3D7,7
inputs.video.mute=3Doff        |  inputs.video.mute=3Don
inputs.aux=3D191,191           |  inputs.aux=3D7,7
inputs.aux.mute=3Doff          |  inputs.aux.mute=3Don
inputs.dac=3D191,191           |  inputs.dac=3D7,7
inputs.dac.mute=3Doff          |  inputs.dac.mute=3Don
record.source=3Dmic            |  record.source=3Dphone
record.volume=3D0,0            |  record.volume=3D240,240
record.volume.mute=3Doff       |  record.volume.mute=3Don
outputs.spatial=3Doff          |  outputs.spatial=3Don
outputs.spatial.center=3D0     |  outputs.spatial.center=3D240
outputs.spatial.depth=3D0      |  outputs.spatial.depth=3D240

This time around, I got some of those messages again from the mixerctl
after resume.  The volume settings the first time went to 255,255 and
this time to 7,7.

Trying to restore settings (cat /tmp/before | xargs -n 1 mixerctl -w)
produced a whole lot more of those messages, and several like this:
sys_ioctl: _IOWR('M', 1, 20) returned -1: pid=3D1044 comm=3Dmixerctl

So it seems the device or driver is quite confused, this time at least :)

Also worth noting, I'm using the ESA_NUM_VOICES=3D4 option.

--
Dan.

--lMM8JwqTlfDpEaS6
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (NetBSD)

iD8DBQFB+XKvEAVxvV4N66cRAuX7AJ0dmCJkHcLm8O0KUvrjtJSu85KcTQCgmAsm
/LzgaJJxdchZCRwiiB+gKkw=
=yJII
-----END PGP SIGNATURE-----

--lMM8JwqTlfDpEaS6--