On Wednesday 24 April 2002 11:31 am, Leif Delgass wrote: > I know you need to flag the final descriptor at the end of the pass by > setting END_OF_LIST_STATUS in BM_COMMAND (third dword of the descriptor). > In Utah-glx, there's also a series of register writes added to end of the > buffer to "go back to drawing on the front buffer the way the X server > expects." Is this necessary? Utah-glx does this even for pseudo-DMA, but > we don't do this currently.
Some of that is not to "go back" but to ensure that things are as close to as they were before execution of the DMA pass. If you reset the control registers to what they were before the GUI master pass, there is no risk of some delayed effect attacks (While there's no risk during a gui-master pass of anything critcal being messed up, there's a slight risk (unverified) that some of the control flags might be acted upon afterwards, messing things up down the line. ). Setting BUS_CNTL and a few select others back to what they were before the pass might not be a bad idea for this stuff. > I was starting to try setting up the descriptor table through the DRM > framework as well, but I'm thinking that this might be the best way to get > started. It might be usable, but it all depends on the smallest size you can allocate that way. I don't know, can the DRM framework allocate 1 16k buffer and then allocate a bunch of 128k or larger ones? If it can't, you don't want to be using that framework for this- you only need 16k aligned on a 16k boundary. -- Frank Earl _______________________________________________ Dri-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/dri-devel