At Wed, 25 Jul 2012 14:52:53 -0700, Adam Williamson wrote:
On Sat, 2012-03-17 at 11:00 +0100, Takashi Iwai wrote:
At Fri, 16 Mar 2012 16:10:09 -0700, Adam Williamson wrote:
Welp, pretty much as the topic says.
I just noticed today that sound is no longer playing from the internal speakers of my laptop, a 2010 model Sony Vaio Z. Plugging in headphones causes sound to be played fine through those. There are three possible choices for 'Connector' - 'Analog Speakers', 'Analog Output', and 'Analog Headphones' - but none of these seems to make sound come out of the internal speakers. The default is 'Analog Speakers', and when it's set to this, headphone output does work when headphones are plugged in.
I've verified that it's broken on Fedora 16 kernels 3.2.6-4, 3.2.8-3 and 3.2.10-1. It's also broken in a very recent Fedora 17 kernel, 3.3.0rc6 or so. It works on a Fedora 16 live image, with kernel 3.1.0-1. Unfortunately the kernels before 3.2.6 have been trashed from Fedora's buildsystem archives, I think, so it's hard to narrow things down any further :/
the alsa-info output is http://www.alsa-project.org/db/?f=368e2359757b537d4daa0f5399830d3942540196 .
At best, please provide the alsa-info.sh on the working kernel, too. You could install 3.1.x in addition to the current one just to check whether it works (i.e. no user-space side problem).
The codec amp values for the speaker pin in the alsa-info.sh output above looks OK, so the problem is something else such as GPIO. In the case of GPIO, it can be turned on/off by hda-verb, e.g.
hda-verb /dev/snd/hwC0D0 0x01 SET_GPIO_MASK 0x01 hda-verb /dev/snd/hwC0D0 0x01 SET_GPIO_DIR 0x01 hda-verb /dev/snd/hwC0D0 0x01 SET_GPIO_DATA 0x01
and/or
hda-verb /dev/snd/hwC0D0 0x01 SET_GPIO_MASK 0x02 hda-verb /dev/snd/hwC0D0 0x01 SET_GPIO_DIR 0x02 hda-verb /dev/snd/hwC0D0 0x01 SET_GPIO_DATA 0x02
Sorry for the very very late reply on this - I just worked back around to it on my non-urgent todo list :/
So, the situation is unchanged all the way up to kernel 3.4.6: basic playback through the laptop speakers does not work. I re-installed kernel 3.1.0 to verify that it still works there, it does.
I'm attaching the alsa-info output from working 3.1.0 and still-not-working 3.4.6. Remember, alsa-info output from not-working 3.2.6 is still available at http://www.alsa-project.org/db/?f=368e2359757b537d4daa0f5399830d3942540196 .
I installed hda-verb and ran the commands suggested by tiwai (above) after booting 3.4.6. It doesn't appear to make any difference (I tested sound before running any commands, after running the first three, and after running all six; didn't work in any case).
I would need more guidance to try and "use hda-analyzer to find out which ext mic is correct", as Raymond Yau suggested. Don't let the @redhat.com fool you, I'm not a guru =) I have hda-analyzer installed and working but I couldn't tell one end of it from the other without help, I'm afraid.
I don't know if tiwai's later suggestion to try the sound.git tree is still relevant, since I expect all of the stuff there that was 'new' back in March has been merged into later kernels since, and it's still broken. But if so, send me the word and I'll try it.
Thanks! I promise to reply more promptly for the next few weeks at least.
OK, then try the following two patches. The first one is to make the speaker-pin as the primary output like the earlier kernel (3.1.x), and the second one is to add the COEF setup for ALC889. Check each of them alone gives any difference.
Takashi
---