Comment 22 for bug 598242

Revision history for this message
Ewen McNeill (ewen) wrote :

This bug also affects me on a HP NC6220 laptop, with a fresh install of Ubuntu Linux 10.04 (Lucid).

It appears to be a reversion of the fix in bug #151111 (https://bugs.launchpad.net/ubuntu/+source/linux/+bug/151111), from 2007 (Fiesty, Gutsty). Prior to that fix the internal speakers stopped working after suspend/resume, but headphones/external speakers worked; after that fix, the internal speakers stayed working over suspend/resume. The same thing is true now (after suspend the internal speakers don't work, but headphones do work).

In bug #151111 it was tracked down to a specific patch that was applied to break things (and I can confirm that reverting that patch and building a custom module did fix the problem at the time):

https://bugs.launchpad.net/ubuntu/+source/linux/+bug/151111/comments/1
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/151111/comments/7

The resolution of bug #151111 was to add a "quirk" to the suspend code for various HP laptop models which would run the appropriate kernel function to power off (during suspend) and hence on (during resume) the amplifier for internal speakers. I suspect (but have not confirmed) that that quirk went missing between 8.04 LTS and 10.04 LTS; based on comments in #151111 it seems to have been reintroduced between 9.04 and 9.10.

FTR, I have found that hibernating the laptop (ie, out to disk, full power off), is sufficient to reset the internal amplifier state and make the internal speakers work again until the next suspend-to-RAM. IIRC from #151111 the issue seemed to be that the internal amplifier power up code didn't get run unless it had been explicitly powered down. (And unfortunately it seems on other laptops it never got powered up if it got powered down, hence the patch which caused the problem.)

Ewen