Stephen C. Tweedie wrote: > Hi, > >> On Sat, May 19, 2001 at 02:10:43PM +1000, Gareth Hughes wrote: >> >>> I'm currently working on some kernel-related tasks, but I can take a >>> look into the problems you (and others) have mentioned regarding the >>> Radeon driver early next week. Are you running it from the DRI CVS? If >>> you're game, you might want to try the in-development mesa-3-5-branch. >> >> OK, I will try that. > > > Done --- it didn't help. > > The mesa-3.5 branch _did_ cure the q3a cinematics problem, and the bad > performance and rendering artifacts in one of the tribes2 training > levels (which looks as if it was due to an imperfect software fallback > path in the sky rendering). In fact, I'm very pleased by the 3.5 > branch performance. However, it did not help the lockup on startup. > > A couple of other data points: dynamic X resolution switching is fine, > so it's not a mode timing setup problem. X -probeonly works fine, so > I can get you a verbose server log up to the graphics setup point if > you want it. Initialising or restoring graphics state, either on > entering X or on leaving it (or switching to/from a text VC), locks up > about 75% of the time. > > I have got both trunk and mesa-3.5-branch trees built and installed so > I can easily apply any patches you want me to try, either in hope of > fixing things or to obtain a trace of where things stop working. > > Cheers, > Stephen > > _______________________________________________ > Dri-devel mailing list > [EMAIL PROTECTED] > http://lists.sourceforge.net/lists/listinfo/dri-devel > Well there is one thing that is likely to cause the problems you are seeing. I need to spend some time with an AMD engineer to get AGP completely stable on all the Irongate revisions. I have been told there are some revision specific workarounds that need to be done. and I have not received any info on these workarounds. I also have a hunch which might fix your problem. Could you try the following patch and tell me if it helps or cures your problem? Its kinda a stab in the dark, but considering your symptoms, it just might help. -Jeff
diff -ur linux-orig/drivers/char/agp/agpgart_be.c linux/drivers/char/agp/agpgart_be.c --- linux-orig/drivers/char/agp/agpgart_be.c Tue Feb 13 15:13:43 2001 +++ linux/drivers/char/agp/agpgart_be.c Mon May 21 08:50:34 2001 @@ -1827,7 +1827,17 @@ static void amd_irongate_tlbflush(agp_memory * temp) { + u32 temp; + unsigned long end; + int i; + + end = jiffies + (HZ*3); + OUTREG32(amd_irongate_private.registers, AMD_TLBFLUSH, 0x00000001); + do { + temp = INREG32(amd_irongate_private.registers, AMD_TLBFLUSH); + for(i = 0; i < 4096; i++) ; + } while((temp & 0x00000001) || ((signed)(end - jiffies) <= 0)); } static unsigned long amd_irongate_mask_memory(unsigned long addr, int type)