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)

Reply via email to