[Bug 59982] Radeon: evergreen Atombios in loop during initialization on ppc64

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Wed Feb 6 09:07:13 PST 2013


https://bugs.freedesktop.org/show_bug.cgi?id=59982

--- Comment #8 from Jerome Glisse <glisse at freedesktop.org> ---
Here is how we try to figure out atombios stuck. We use the atombios disasm :

git://people.freedesktop.org/~mhopf/AtomDis

To produce a readable file ./atomdis bios.rom > bios.txt

Then when you get a message such as :

*ERROR* atombios stuck executing C898 (len 62, WS 0, PS 0) @ 0xC8B4

It means it's stuck executing function that is at offset 0xc898 (look for c898
in your disasm output it's EnableCRTC. Inside that atombios function it's stuck
in a loop. 0xC8B4 is the offset of the instruction at which the loop was
interrupted (from one run to the other this offset might point to a different
instruction in the same loop).

So when you look at EnableCRTC it's stuck executing 0xC8B4 - 0xC898 = 0x1c
which is :

  001c: 4aa59c1b01        TEST   reg[1b9c]  [.X..]  <-  01
  0021: 491c00            JUMP_NotEqual  001c

So test here test that register (0x1b9c << 2) ie register 0x6e70 as value of :
0x..01.... or if you prefer : (READREG(0x6e70) & 0x00ff0000) == 0x00010000


Lucas if you have any more atombios stuck don't hesitate to add them here.

To find the register meaning you can grep the various header files of
drivers/gpu/drm/radeon/ mostly evergreen one and modesetting one.

-- 
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/dri-devel/attachments/20130206/04d38e41/attachment.html>


More information about the dri-devel mailing list