I hope I'm not spamming this bug with information; as the cause is somewhat unclear, all these things may or may not be important in the end. There's two kinds of config data: pci and memory mapped. PCI can be checked using sysfs, About memory mapped registers. Find attached a dump of these before and after resume (and also a dump of the stream's BDL). Differences: * pci 0x044 TCSEL traffic class select * mem 0x030-0x033 wall clock * mem 0x048-0x04a reserved * mem 0x058-0x059 RIRB write pointer (constant during stream, differs before/after resume) * mem 0x104-0x107 LPIB0 is different within stream, that was known already (differences before/after resume probably due to timing) I shouldn't have missed anything, but I'm a bit tired at the moment.
And now for the really good news: try this after suspend ... # cd /sys/bus/pci/devices/0000:00:1b.0 # dd if=config of=/tmp/foo # printf "\x0" | dd of=/tmp/foo bs=1 seek=68 # dd if=/tmp/foo of=config and play a sound file ... Replace "\x0" with "\x7" to go back to the non-working state. I don't know yet why TCSEL is 7 after resume. This note about TCSEL in the HDA document may have an impact: "These bits are not reset on D3HOT to D0 transition; however, they are reset by PLTRST#." Its default is zero however. ** Attachment added: "hda-config-01.txt" http://launchpadlibrarian.net/8417105/hda-config-01.txt -- snd-hda-intel: distorted sound after resume, until the module is reloaded https://bugs.launchpad.net/bugs/100114 You received this bug notification because you are a member of Ubuntu Bugs, which is the bug contact for Ubuntu. -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs