Thread (93 messages) 93 messages, 6 authors, 2003-03-12

Re: Some questions

flat view

From: Antonino Daplas <hidden>
Date: 2003-03-11 22:54:55

On Wed, 2003-03-12 at 06:27, Thomas Winischhofer wrote:
Antonino Daplas wrote:
quoted
Unfortunately, this is what we are trying to prevent.  X assumes that
the console is in text mode, so only registers that affect text mode are
restored.  Frequently, cursor registers and bitmaps, as an example, are
not refreshed.  There's probably more, ie accel engine, etc.
Argh.. of course, cursor and accelerator registers are usually not 
restored, you're right at this. But the drivers usually leave the engine 
in the same state as when started. (A "restore" of accelerator engine 
registers is mostly impossible, because a complete restore would cause 
the last command to be executed again)
The accel engine is probably not a problem if it uses mmio.  However,
engines that use command buffers are more susceptible to this if the
buffers can be dynamically allocated by the process.

The i810 for instance uses ringbuffers.  It has to be dynamically
allocated via agpgart.  Fortunately, the i810 can support 2 ringbuffers,
so X can use one and fb the other, so there's no conflict. 

Then you also have DRI joining in the confusion :-)

The best solution, personally, is to have one module controlling chipset
access -- DRM for 2D and 3D, and fb for video mode switching.

Tony



-------------------------------------------------------
This SF.net email is sponsored by:Crypto Challenge is now open! 
Get cracking and register here for some mind boggling fun and 
the chance of winning an Apple iPod:
http://ads.sourceforge.net/cgi-bin/redirect.pl?thaw0031en
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help