From: Leif D. <lde...@re...> - 2002-08-18 01:28:19
|
On 17 Aug 2002, J. Christopher Pereira wrote: > On Sat, 2002-08-17 at 20:04, Leif Delgass wrote: > > > > You are hacking on the mach64-0.0.5 branch, right? > > > > Right. I was planning on making a patch that tests MMIO writes to the > > scratch registers (block 0, non-FIFOed), the pattern registers (block 0, > > FIFO-ed), and some other block 1 registers. The vertex registers used in > > the test are aliased at two different locations, so I was also going to > > try using VERTEX_1_SECONDARY_[S,T,W] for the test just in case, since they > > are not aliased. However, I can't imagine that any of the mach64's with a > > setup engine are not register compatible which each other. > > Ok. I checked out the cvs and played around. > > I checked MACH64_WRITE, writing also to the registers > VERTEX_1_SECONDARY_[S,T,W]...no luck. > > Definitively there is a problem with MMIO access. > > If you want, give me a list of the registers you want me to check for > reading/writing and I will add the code for testing MMIO access before > initializing the driver. > > Can I write any value to this registers, or may this crash the system? You could try MACH64_SCRATCH_REG[0,1] and MACH64_PAT_REG[0,1]. Just save the original values and restore them after the test, but you can write anything into them to test. Since the PAT_REGs go through the FIFO, you should call mach64_do_wait_for_fifo with the number of writes you are going to do (up to 16). Also, if you're going to try this, put in a call to mach64_dump_engine_info at the beginning to get a dump of the engine register state in the log too. -- Leif Delgass http://www.retinalburn.net |