Well, to start, which version of the driver are you running? (cat /proc./asound/version).
Also, what model Gateway? What is the output from http://bulletproof.servebeer.com/alsa/scripts/alsa-info.sh
These tidbits will help to get your system supported. What Windows does during use and what Alsa does can be completely different due to numerous factors. But for the Sigmatel codecs, the key is the initialization settings for the pins. Once these are set properly, the sound will work almost the same (well, alsa doesn't have the bloat that Windows has).
Tobin
On Mon, 2007-09-03 at 17:31 -0400, Brian Hinz wrote:
Hi,
I'll apologize up front if this post seems a little incoherent, I've been trying to find a solution to this bug for a few months now and this is sort of a collection of observations that I've made and I'm hoping someone might read this and a light will go on...
The problem is no sound from a stac9200 on various gateway models, although it's possible to get sound from the mic port, never from the hp or internal stereo speakers. I recently used a windows utility called "regmon" to log the registry events that occurred during a jack cycle on the hp port. I expected to see something like this:
... stsystra.exe:2380 SetValue HKLM\Software\Sigmatel\GlobalState\STSysTray\1.0\JackPresenced SUCCESS 0x0 ...
indicating an event on port D, but instead got:
... SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Compressor\CompRatio SUCCESS 0xC8 SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Compressor\CompAttack SUCCESS 0x26B6 SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Compressor\CompRelease SUCCESS 0x26B6 SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Compressor\CompThreshDb SUCCESS 0xFFFFFDA8 SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Compressor\MakeupGainDB SUCCESS 0xC8 SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Compressor\GateRatio SUCCESS 0x258 SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Compressor\GateAttack SUCCESS 0x2706 SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Compressor\GateRelease SUCCESS 0x2706 SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Compressor\GateThreshDb SUCCESS 0xFFFFDCD8 SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Compressor\Flags SUCCESS 0x9 ... SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Limiter\CompRatio SUCCESS 0xE74 SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Limiter\CompAttack SUCCESS 0x26AC SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Limiter\CompRelease SUCCESS 0x26AC SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Limiter\CompThreshDb SUCCESS 0x0 SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Limiter\MakeupGainDB SUCCESS 0x0 SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Limiter\GateRatio SUCCESS 0x64 SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Limiter\GateAttack SUCCESS 0x2328 SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Limiter\GateRelease SUCCESS 0x2328 SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Limiter\GateThreshDb SUCCESS 0xFFFFDCD8 SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Limiter\Flags SUCCESS 0xB ...
and upon removal:
... SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Compressor\CompRatio SUCCESS 0xC8 SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Compressor\CompAttack SUCCESS 0x26B6 SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Compressor\CompRelease SUCCESS 0x26B6 SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Compressor\CompThreshDb SUCCESS 0xFFFFFDA8 SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Compressor\MakeupGainDB SUCCESS 0xC8 SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Compressor\GateRatio SUCCESS 0x258 SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Compressor\GateAttack SUCCESS 0x2706 SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Compressor\GateRelease SUCCESS 0x2706 SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Compressor\GateThreshDb SUCCESS 0xFFFFDCD8 SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Compressor\Flags SUCCESS 0x8 ... SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Limiter\CompRatio SUCCESS 0xE74 SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Limiter\CompAttack SUCCESS 0x26AC SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Limiter\CompRelease SUCCESS 0x26AC SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Limiter\CompThreshDb SUCCESS 0x0 SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Limiter\MakeupGainDB SUCCESS 0x0 SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Limiter\GateRatio SUCCESS 0x64 SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Limiter\GateAttack SUCCESS 0x2328 SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Limiter\GateRelease SUCCESS 0x2328 SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Limiter\GateThreshDb SUCCESS 0xFFFFDCD8 SetValue HKLM\System\CurrentControlSet\Control\Class{4D36E96C-E325-11CE-BFC1-08002BE10318}\0005\Settings\filter\Rear\Presets_Initial\Render\Limiter\Flags SUCCESS 0xA ...
Notice how the "Flags" key changes? I don't understand much of this, but it seems like the output is being manipulated via digital post-processing rather than re-tasking of the analog pin widgets. I had also been trying to make sense of the following line in the windows driver file:
InitVerbs: 03, a0, 45, 01;
which I'd guessed earlier could be interpreted as verb 0x3a0 and payload of 0x4501, (amplifier gain/mute, set input amp, port B(?), unmute, gain step 1) which actually makes some sense in this context, since if the flags key is referencing pin widgets the input mux should be unmuted if it's to be used as the limiter.
So if I'm actually on the right track here, how would something like this be implemented in ALSA? Via /etc/asoundrc? I tried setting the digital mixer as the default pcm device and now the gnome-volume-applet shows the device as being muted, and is unable to unmute it. Nothing is muted in alsamixer though, so I'm guessing that I didn't do this correctly in any event.
Another potentially interesting observation is that in the windows sound control options there is both a master volume control and a "Wave" volume control which seem to be bound together somehow even though they are independent controls. ie: the wave control appears to have the exact same function as the master volume.
Lastly, the system beep (which for what it's worth "sounds digital" to my untrained ears), works prior to the snd-hda-intel module being loaded, but not afterwards, even when unloaded. Is there any debugging code aready in alsa that would produce a copy of /proc/asound/card0/codec#0 prior to any codec initialization?
If anyone can make some suggestions I'd be quite grateful. Also, if there is any specific debugging results you'd like to see let me know and I'll append them to the bug report.
Thanks, -brian
Alsa-devel mailing list Alsa-devel@alsa-project.org http://mailman.alsa-project.org/mailman/listinfo/alsa-devel