Radeon X700 BUS_CNTL register problem
Euan Kirkohope
euank at mindless.com
Tue Apr 11 13:46:00 PDT 2006
Sorry for the intrusion, I'm looking for some help with code ported from X
to BeOS. I have an X800 that works absolutely great, but many users cant
get their X300 / X600 / X700 hardware running at all. Ive been my pulling
hair out for several weeks trying to find inconsistencies between X and the
BeOS / Haiku (open BeOS) code. They just a garbled screen, with working
cursor and the odd Icon that occasionally redraws.
Below are two partial reg dumps that are produced immediately after a CP
start. AGP X800 on the left, AGP X700 on the right:
rbbm_status =140 =140
bus_cntl =5133a2a0 =a0
mem_cntl =62 =69
cp_stat =80000004 =80000004
host_p_cntl =40800000 =40800000
tlb_cntl =1 =ffffffff
tlb_stat =4 =ffffffff
tlb_pt_base =1ea8000 =ffffffff
tlb_address =0 =ffffffff
tlb_data =0 =ffffffff
cp_rb_base =cdcdcdcc =cdcdcdcc
cp_rb_cntl =0 =0
cp_rb_raddr =0 =0
cp_rb_rptr =0 =0
cp_rb_wptr =0 =0
Both logs are from the same PC. Nforce2 mobo, Xp2500, 512Mb DDR ram. As
you can see the Bus control regs for the X700 are not right. The code path
for the two cards are identical (both cards are treated as R420). Any ideas
why the card is not initializing?
In the end the logs just end up with:
Radeon - Radeon_WaitForIdle: Engine didn't become idle
Radeon - Radeon_ResetEngine:
Radeon - Radeon_DiscardAllIndirectBuffers: 1
Radeon - SYNC_TO_TOKEN: Failed waiting for token 2 (active token: 0)
...
Full log for the X700:
http://euank.users.btopenworld.com/beos/x700dbg.txt
Full log for the X800:
http://euank.users.btopenworld.com/beos/x800dbg.txt
Source code if anyone wants it (it's very like X, but readable! Credits to
the author Thomas Kurschel).
http://euank.users.btopenworld.com/beos/BeOS_Radeon_V5.1.3.1_src.zip
Euan
More information about the xorg
mailing list