Ok, here's a good news. I believe I have a code change to overcome chip
bug.
A bit of debug description:
I collected couple of more win7 IOMMU traces. It turns out even win7
sometimes does not detect mask in first place. It did about 20
read/writes before reading mask again.
I mirrored those r/w in hda driver, which enabled the mask for me, and
selectively removed unneeded I/Os by trial and error.
The code is in azx_reset function. In my inference, it simply resets the
chip, but the exact timing between resetting the chip, polling reset bit
and setting reset bit is important. I tried playing with the delays, but
found only this combo to be working.
Added code it pretty crude, but I'd like to see a revised version of it
in ubuntu as well as upstream driver. Here is the code added:
snd_printk(KERN_ERR SFX "GCTL read %x\n",azx_readl(chip, GCTL));
azx_writel(chip, GCTL, 0x100);
do{
mytemp = azx_readl(chip, GCTL); /* mytemp delacred as
int, just a temperory to hold reads */
snd_printk(KERN_ERR SFX "GCTL read %x\n",mytemp);
}while(mytemp != 0x0);
azx_writel(chip, GCTL, 0x1);
usleep_range(1000, 1200);
mytemp = azx_readw(chip, STATESTS);
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1155202
Title:
[Intel DZ77SL-50K, Intel PantherPoint HDMI, Digital Out, HDMI] No
sound at all
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/1155202/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs