[Nouveau] [Bug 72943] [NV98] hangs in nvbios_init on probe (worked in 3.2)
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Sun Jan 5 16:58:22 PST 2014
https://bugs.freedesktop.org/show_bug.cgi?id=72943
--- Comment #10 from Ilia Mirkin <imirkin at alum.mit.edu> ---
Created attachment 91531
--> https://bugs.freedesktop.org/attachment.cgi?id=91531&action=edit
make jump execution conditional
Please try this patch, I'm pretty sure it will help things out. The problem
VBIOS has the following snippet:
0xd9d0: 74 64 00 TIME 0x0064
0xd9d3: 75 10 CONDITION 0x10
0xd9d5: 38 NOT
0xd9d6: 6e 24 e8 00 00 ff ff ff ff 00 00 20 00 NV_REG R[0x00e824] &=
0xffffffff |= 0x00200000
0xd9e3: 6e 20 e8 00 00 ff ff ff ff 00 00 00 80 NV_REG R[0x00e820] &=
0xffffffff |= 0x80000000
0xd9f0: 6e 18 e8 00 00 ff ff ff ff 00 00 00 08 NV_REG R[0x00e818] &=
0xffffffff |= 0x08000000
0xd9fd: 6e 18 e8 00 00 ff ff ff 7f 00 00 00 00 NV_REG R[0x00e818] &=
0x7fffffff |= 0x00000000
0xda0a: 6e 18 e8 00 00 ff ff ff 7f 00 00 00 80 NV_REG R[0x00e818] &=
0x7fffffff |= 0x80000000
0xda17: 74 64 00 TIME 0x0064
0xda1a: 5c d0 d9 JUMP 0xd9d0
With the old code, the JUMP was always executed and so there was no way to
break out of the loop. The new code makes JUMP conditional the same way
NV_REG/etc are.
--
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/nouveau/attachments/20140106/89848583/attachment.html>
More information about the Nouveau
mailing list