On 9/7/07, Paul Brook <[EMAIL PROTECTED]> wrote: > > Is there a patch for Qemu for adding an OGD card to it? Like hooking up > > ogsim? > > I did have a qemu patch, but only enough to get a simple framebuffer running. > > In the same way that we're missing bits of hardware to write a bios for, we're > also missing bits of hardware for talking to the 3D engine. > > I guess you could probably invent a simple DMA interface and feed ogsim > commands over that. I wouldn't like to say whether that'll end up anything > like the final hardware, but it might give you enough to take a stab at > writing the rest of the 3D driver.
I intend to give the 3D engine a PCI BAR, where every engine register has an address. The engine will be complex, and so will DMA, so it will be important for us to be able to eliminate variables whe debugging. Thus, the first driver should be all PIO. Indeed, anything that isn't performance critical that needs to use the GPU would do well to use the PIO interface, rather than going through the trouble to allocate DMA'able memory space, set up the DMA controller, etc., etc. In practice, the VGA BIOS would be the first thing to program the VGA microcode into the nanocontroller. The Linux driver for our card would know about where to find that code in the PROM so that it can be reloaded when necessary. Our X11 driver is probably what would load the DMA microcode (and reload the VGA microcode when safely switching consoles). On exit from X11, we'd probably arrange it so that the kernel driver restored the VGA program, so that it gets restored properly even in the event of a crash. If there are memory blocks free in the XP10 when we've gotten far enough along, we might increase the size of the program file. This way, we can have both programs loaded at boot time and not require any reprogramming (except perhaps for downloadable updates installed when the OS comes up). Then switching is a matter of setting a mode flag; the currently running program would detect this in its main loop and just jump into the other program. -- Timothy Normand Miller http://www.cse.ohio-state.edu/~millerti Open Graphics Project _______________________________________________ Open-graphics mailing list [email protected] http://lists.duskglow.com/mailman/listinfo/open-graphics List service provided by Duskglow Consulting, LLC (www.duskglow.com)
