Re: [Dri-devel] Radeon TCL driver tested

2002-03-10 Thread Keith Whitwell

Gareth Hughes wrote:
> 
> Trond Eivind Glomsrød wrote:
> > Gareth Hughes <[EMAIL PROTECTED]> writes:
> >>That's probably more of a rasterization/fill test than a T&L test, so
> >>it's not surprising there isn't a more significant increase.
> >>
> >
> > What tests do you recommend?
> 
> Pretty much all of the Mesa/GLUT demos are pointless these days for
> measuring T&L performance.  Enlarging the window to these sizes makes
> them a fill test, and not a very good one at that :-)
> 
> For real T&L performance measurements, you need to look at things like
> viewperf, maybe glperf, things like that.  You basically need a
> polygonal model with 100K+ triangles before it gets interesting.  Even
> then, you have to be careful about things like data submission and so
> on, to ensure you're really testing T&L performance and not AGP
> bandwidth, rasterization throughput etc.

Certainly all of the t&l tests are also AGP bandwidth tests at the moment - we
don't yet store display lists on card or even agp memory.  

Keith

___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel



Re: [Dri-devel] Mesa viewport transformation and depth scaling

2002-03-10 Thread Leif Delgass

On Sun, 10 Mar 2002, José Fonseca wrote:

...
> So I removed the 'depth_scale' in calculation of hw_viewport, in 
> mach64CalcViewport, and everything worked fine.

Good catch!  This fixes some of the rendering problems I was seeing in 
tuxracer and gltron (I just set depth_scale=1 in StateInit when I tested 
this).
 
-- 
Leif Delgass 
http://www.retinalburn.net


___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel



Re: [Dri-devel] Radeon TCL driver tested

2002-03-10 Thread Gareth Hughes

Trond Eivind Glomsrød wrote:
> Gareth Hughes <[EMAIL PROTECTED]> writes:
>>That's probably more of a rasterization/fill test than a T&L test, so
>>it's not surprising there isn't a more significant increase.
>>
> 
> What tests do you recommend?

Pretty much all of the Mesa/GLUT demos are pointless these days for 
measuring T&L performance.  Enlarging the window to these sizes makes 
them a fill test, and not a very good one at that :-)

For real T&L performance measurements, you need to look at things like 
viewperf, maybe glperf, things like that.  You basically need a 
polygonal model with 100K+ triangles before it gets interesting.  Even 
then, you have to be careful about things like data submission and so 
on, to ensure you're really testing T&L performance and not AGP 
bandwidth, rasterization throughput etc.

-- Gareth




___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel



Re: [Dri-devel] Mach64 DMA

2002-03-10 Thread José Fonseca

On 2002.03.10 21:30 Frank C. Earl wrote:
> ...
> 
> If you don't have issues with sending commands directly, you don't need
> to
> copy or map/unmap.  You don't need special clear commands or swap
> commands,
> you only need to issue DMAable buffers of commands to the DRM engine for
> eventual submission to the chip.  Right now, I'm not 100% sure that the
> mach64 is one of those sorts of chips, but it's shaping up to be a good
> prospect for that.
> 
> 
> --
> Frank Earl
> 

If there is any chance mach64 is one of those chips, it's surely worth 
trying. Things will get clearer as we get forward.

Regards,

José Fonseca

___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel



Re: [Dri-devel] Radeon TCL driver tested

2002-03-10 Thread Trond Eivind Glomsrød

Gareth Hughes <[EMAIL PROTECTED]> writes:

> Jeffrey W. Baker wrote:
>  >
> > glxgears at 1600x1200x24 improved from 804 to 824fps.
> 
> That's probably more of a rasterization/fill test than a T&L test, so
> it's not surprising there isn't a more significant increase.

What tests do you recommend?

-- 
Trond Eivind Glomsrød
Red Hat, Inc.

___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel



Re: [Dri-devel] Re: [Dri-patches] CVS Update: xc (branch: tcl-0-0-branch)

2002-03-10 Thread Michael

On Sun, Mar 10, 2002 at 10:44:00PM +, Keith Whitwell wrote:
> Nice.  How kludged is kludged?

Attached.

Most of it is just uncommenting what's already there, and adding a call
(probably in the wrong place as MakeCurrent seems to be called a lot,
hence the check added to avoid enabling over and over) if
RADEON_PAGEFLIP exists.  Plus sorting out drawOffset.

I removed what I assume is either for old clients or a bogus emit_state
call in the clear stuff, and I suspect an off-by-1 error somewhere,
which I hacked by removing the -1 from the x2,y2 figures (you get a
flashing line at the bottom and right of the screen otherwise)

Lots of things are broken about it (switching to a console, the obvious
effects with windowed apps, single buffered demos that don't call
glSwapBuffers don't display anything (there don't appear to be any none
doublebuffered visuals for the tests in the driver to ever fail?)

But it seems to work fine with q3, rtcw and fullscreen stuff.

Occasionally it exits on the dark side too no doubt a call to
CloseFullScreen would help.

At the moment 1024x768 (which I expected to get the biggest benefit)
hits lack of texture space and/or maybe depth clears / lack of
hierarchical z, even with the pixmap cache set to 1 page and low
texturing - at the mo this is still only a 2 or 3 fps gain there.

-- 
Michael.


Index: lib/GL/mesa/src/drv/radeon/radeon_context.c
===
RCS file: /cvsroot/dri/xc/xc/lib/GL/mesa/src/drv/radeon/radeon_context.c,v
retrieving revision 1.7.2.11
diff -u -3 -p -r1.7.2.11 radeon_context.c
--- lib/GL/mesa/src/drv/radeon/radeon_context.c 9 Mar 2002 00:40:41 -   
1.7.2.11
+++ lib/GL/mesa/src/drv/radeon/radeon_context.c 10 Mar 2002 23:03:57 -
@@ -71,6 +71,8 @@ USE OR OTHER DEALINGS IN THE SOFTWARE.
 int RADEON_DEBUG = (0);
 #endif
 
+static GLboolean radeonOpenFullScreen( __DRIcontextPrivate *driContextPriv );
+static GLboolean radeonCloseFullScreen( __DRIcontextPrivate *driContextPriv );
 
 
 /* Return the width and height of the current color buffer.
@@ -631,6 +633,8 @@ radeonMakeCurrent( __DRIcontextPrivate *
 _mesa_set_viewport( newRadeonCtx->glCtx, 0, 0,
 driDrawPriv->w, driDrawPriv->h );
   }
+   if (getenv("RADEON_PAGEFLIP"))
+  radeonOpenFullScreen ( driContextPriv ); 
} else {
   _mesa_make_current( 0, 0 );
}
@@ -652,13 +656,13 @@ radeonUnbindContext( __DRIcontextPrivate
 static GLboolean
 radeonOpenFullScreen( __DRIcontextPrivate *driContextPriv )
 {
-#if 0
+#if 1
radeonContextPtr rmesa = (radeonContextPtr)driContextPriv->driverPrivate;
GLint ret;
 
/* FIXME: Do we need to check this?
 */
-   if ( !rmesa->glCtx->Visual.doubleBufferMode )
+   if ( !rmesa->glCtx->Visual.doubleBufferMode || rmesa->doPageFlip )
   return GL_TRUE;
 
LOCK_HARDWARE( rmesa );
@@ -666,11 +670,12 @@ radeonOpenFullScreen( __DRIcontextPrivat
 
/* Ignore errors.  If this fails, we simply don't do page flipping.
 */
-   ret = drmRadeonFullScreen( rmesa->driFd, GL_TRUE );
+   ret = drmRadeonFullScreen( rmesa->dri.fd, GL_TRUE );
 
UNLOCK_HARDWARE( rmesa );
 
rmesa->doPageFlip = ( ret == 0 );
+   rmesa->currentPage = 0;
 #endif
return GL_TRUE;
 }
@@ -680,7 +685,7 @@ radeonOpenFullScreen( __DRIcontextPrivat
 static GLboolean
 radeonCloseFullScreen( __DRIcontextPrivate *driContextPriv )
 {
-#if 0
+#if 1
radeonContextPtr rmesa = (radeonContextPtr)driContextPriv->driverPrivate;
 
LOCK_HARDWARE( rmesa );
@@ -688,7 +693,7 @@ radeonCloseFullScreen( __DRIcontextPriva
 
/* Don't care if this fails, we're not page flipping anymore.
 */
-   drmRadeonFullScreen( rmesa->driFd, GL_FALSE );
+   drmRadeonFullScreen( rmesa->dri.fd, GL_FALSE );
 
UNLOCK_HARDWARE( rmesa );
 
Index: lib/GL/mesa/src/drv/radeon/radeon_span.c
===
RCS file: /cvsroot/dri/xc/xc/lib/GL/mesa/src/drv/radeon/radeon_span.c,v
retrieving revision 1.11.2.1
diff -u -3 -p -r1.11.2.1 radeon_span.c
--- lib/GL/mesa/src/drv/radeon/radeon_span.c20 Feb 2002 01:06:32 -  
1.11.2.1
+++ lib/GL/mesa/src/drv/radeon/radeon_span.c10 Mar 2002 23:03:57 -
@@ -292,12 +292,22 @@ static void radeonSetReadBuffer( GLconte
 
switch ( mode ) {
case GL_FRONT_LEFT:
-  rmesa->state.pixel.readOffset = rmesa->radeonScreen->frontOffset;
-  rmesa->state.pixel.readPitch  = rmesa->radeonScreen->frontPitch;
+  if ( rmesa->doPageFlip && rmesa->currentPage == 0 ) {
+rmesa->state.color.drawOffset = rmesa->radeonScreen->backOffset;
+rmesa->state.color.drawPitch  = rmesa->radeonScreen->backPitch;
+  } else {
+   rmesa->state.color.drawOffset = rmesa->radeonScreen->frontOffset;
+   rmesa->state.color.drawPitch  = rmesa->radeonScreen->frontPitch;
+  }
   break;
case GL_BACK_LEFT:
-  rmesa->state.pixel.readOffset = rmesa->radeonScreen->backOffset;
-  r

Re: [Dri-devel] Mach64 DMA

2002-03-10 Thread Frank C . Earl

On Sunday 10 March 2002 04:36 pm, José Fonseca wrote:

> I didn't fully understand the implications of above, but shouldn't the
> direct access to the chip registers still be denied to clients?

Depends.  

Looking at the gamma source code (I could be wrong, mind...) it appears that 
the DRM is taking in direct commands from userspace in DMA buffers and 
sending them on to the chip as time goes along.  

If you can make it so that it doesn't lock up the card or the machine and 
doesn't compromise system security in any way (i.e. issuing a DMA pass from a 
part of memory to the framebuffer and then from the framebuffer to another 
part of memory so as to clobber things or to pilfer info from other areas), 
it's pretty safe to do "direct" commands.  From observations, it appears that 
you can't get the engine to do anything except GUI operations during a 
properly set up GUI-mastering pass.  

The only risks that I can see right at the moment with sending direct 
commands over "indirect" commands is one of not resetting certain select 
registers to what they were before the pass and one of the engine not 
handling certian GUI operations well.  The first is easily taken care of by 
having the driver have a 4k block submitted in the descriptor chain as the 
last entry that updates those registers accordingly- the list of commands 
should only need to be built once and reused often since these registers 
won't be changed by the DRM engine, Mesa driver, or the XAA driver after the 
XAA driver does it's setup for the chip operation.  The second case is a 
tough one and one that copying/mapping won't protect you from it- you have to 
process commands to prevent them from occuring (compute intensive and there 
might be other cases, each time you'd have to come up with yet another 
workaround) or find something to detect a hang on the engine and reset it 
proper.  I seriously doubt that we'd encounter one of those, but we might all 
the same.  I've still got one or two more tests to run (I've yet to 
deliberately hang the engine, detect the same, and then do a reset- but then 
I've yet to be able to hang the engine with it _properly_ set up...) but most 
of the innards for copying commands or whatever would be largely the same 
(some of the interfaces might change, but that's less of an issue than the 
heart of the DMA engine itself which is the same no matter what...) so I'm 
going to get _SOMETHING_ in place to see what our performance actually would 
be with some DMA operation going on.

> > Mapping and unmapping a memory space is somewhat compute intensive.
>
> This one has to be compared to the time that takes to copy a buffer,
> unless there is a way to do it in a secure manner without copying or
> unmapping.

If you don't have issues with sending commands directly, you don't need to 
copy or map/unmap.  You don't need special clear commands or swap commands, 
you only need to issue DMAable buffers of commands to the DRM engine for 
eventual submission to the chip.  Right now, I'm not 100% sure that the 
mach64 is one of those sorts of chips, but it's shaping up to be a good 
prospect for that.


-- 
Frank Earl

___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel



Re: [Dri-devel] Re: [Dri-patches] CVS Update: xc (branch: tcl-0-0-branch)

2002-03-10 Thread Keith Whitwell

Michael wrote:
> 
> On Sun, Mar 10, 2002 at 07:28:21PM +, Keith Whitwell wrote:
> > Are you sure?  It loads *v into %ebx, then pulls it apart to %al, %cl
> >
> >0x8b, 0x5c, 0x24, 0x08,/* mov0x8(%esp,1), %ebx */
> >0x8b, 0x1b,/* mov(%ebx), %ebx */
> >0x88, 0xd8,/* mov%bl, %al */
> >0x88, 0xf9,/* mov%bh, %cl */
> >
> > It does this twice...
> 
> Yeah, there was mixed 'what was wrong' and 'what is wrong' in my
> explanation, this code is what I committed last night.

OK - that's why I didn't recognize the code above...  

> > Good point - these extra steps are skipped in the "cached codegen" case.  But
> > they really need to be done...
> 
> Your CHOOSE_COLOR patch fixes what I was seeing in tuxracer.
> 
> (q3 is looking much better, 102.8fps @ 640x480HQ with kludged page
> flipping (adds about 7-8fps), 76.8 @ 800x600)

Nice.  How kludged is kludged?

Keith

___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel



Re: [Dri-devel] Re: [Dri-patches] CVS Update: xc (branch: tcl-0-0-branch)

2002-03-10 Thread Michael

On Sun, Mar 10, 2002 at 07:28:21PM +, Keith Whitwell wrote:
> Are you sure?  It loads *v into %ebx, then pulls it apart to %al, %cl
> 
>0x8b, 0x5c, 0x24, 0x08,/* mov0x8(%esp,1), %ebx */
>0x8b, 0x1b,/* mov(%ebx), %ebx */
>0x88, 0xd8,/* mov%bl, %al */
>0x88, 0xf9,/* mov%bh, %cl */
> 
> It does this twice...

Yeah, there was mixed 'what was wrong' and 'what is wrong' in my
explanation, this code is what I committed last night.
 
> Good point - these extra steps are skipped in the "cached codegen" case.  But
> they really need to be done...

Your CHOOSE_COLOR patch fixes what I was seeing in tuxracer.

(q3 is looking much better, 102.8fps @ 640x480HQ with kludged page
flipping (adds about 7-8fps), 76.8 @ 800x600)

-- 
Michael.

___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel



Re: [Dri-devel] Mach64 DMA

2002-03-10 Thread José Fonseca

On 2002.03.10 15:55 Frank C. Earl wrote:
> On Sunday 10 March 2002 11:44 am, José Fonseca wrote:
> 
> ...
> 
> Sorry for being silent for so long gang.  Been, yet again, crushed under
> with lovely personal business.  I have started a new branch
> (mach64-0-0-3-dma-branch), and I'm actually putting the hacks I've been
> playing with into a unified DMA framework.  I should be putting the first
> updates to the branch in over the next couple of days.
> 

I look forward to check it out.

> Of note, when I did find some spare time, I ran tests on what we needed
> to do
> to secure the chip's DMA path.  I found out some interesting facts.
> 
> It will accept any values written to the registers.
> It will not act on any of those settings during the DMA pass unless
> they're a
> GUI specific operation when it's doing a command-type DMA.
> It will not act on many of the settings after a DMA pass is complete.
> It will not let you set up any sort of DMA pass during the operation.
> Junk commands, by themselves, do not seem to hose up the engine in
> operation.

I didn't fully understand the implications of above, but shouldn't the 
direct access to the chip registers still be denied to clients?

> Mapping and unmapping a memory space is somewhat compute intensive.

This one has to be compared to the time that takes to copy a buffer, 
unless there is a way to do it in a secure manner without copying or 
unmapping.

> 
> --
> Frank Earl
> 

José Fonseca

___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel



[Dri-devel] Mesa viewport transformation and depth scaling

2002-03-10 Thread José Fonseca

The current mach64 (mesa 4.x) driver doesn't seem to be doing z depth 
test. After assuring that the mach64's z control register was being set 
properly I realized that the vertex buffers had the z in a [0,1] scale 
while the primitive drawing functions expected them in a a [0,0x].

The previous mach64 (mesa 3.x) driver defined the coord setup as

#define COORD   \
do {\
GLfloat *win = VB->Win.data[i];  \
v->v.x =   win[0] + xoffset; \
v->v.y = - win[1] + yoffset; \
v->v.z =   win[2];   \
v->v.rhw = win[3];   \
} while (0)

while for example the R128 defined as

#define COORD   \
do {\
GLfloat *win = VB->Win.data[i];  \
v->v.x =   win[0] + xoffset; \
v->v.y = - win[1] + yoffset; \
v->v.z = depth_scale * win[2];   \
v->v.rhw = v->v.rhw2 = win[3];   \
} while (0)

So I removed the 'depth_scale' in calculation of hw_viewport, in 
mach64CalcViewport, and everything worked fine.

But I still don't understand what's the relationship between *CalcViewport 
and the viewport calculations made in _mesa_set_viewport. At 
_mesa_set_viewport, for instance, there is a comment that says "This is 
really driver-specific and should be maintained elsewhere if at all.". It 
seems that _mesa_set_viewport sets the scale to [0,MaxDepth], but the 
*CalcViewport in most DRI drivers "undo" this scaling, rescaling to a 
[0,1].

My question is why the other DRI drivers do this (don't the chips expect 
the depths in integer format as well?) and in what depth scale should the 
vertex buffers be after all?

This understanding would be important because the current mach64 triangle 
setup engine is able to specify the z values in 16.1 format, but only the 
16 integer part is being used, so I would like to implement that as well.

Regards,

José Fonseca

___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel



Re: [Dri-devel] Re: [Dri-patches] CVS Update: xc (branch: tcl-0-0-branch)

2002-03-10 Thread Keith Whitwell

Michael wrote:
> 
> On Sun, Mar 10, 2002 at 04:35:31PM +, Keith Whitwell wrote:
> > What did you change exactly?
> 
> Originally _ae_loopback_array_element called glColor4ub passing it 1 param, I 
>changed that to
> call glColor4ubv (api_arrayelt.c). So original code took random values for colours 
>ergo
> red snow (there is no codegen for non PKCOLOR 4ub case it just does return 0,
> so it always used the generic stuff, albeit afaict incorrectly?).

Yes, it should never have been in the 4ub path.  The _ae_loopback change was
definitely correct.

> Once that was changed CHOOSE_COLOR calls radeon_makeX86Color4ubv, the
> non PKCOLOR case,  which (unless there was some deep magic I missed?)
> was written like makeX86Color4ub, taking params off the stack @ 4(%esp),
> 8(%esp) etc, rather than ubv.

Are you sure?  It loads *v into %ebx, then pulls it apart to %al, %cl

 0x8b, 0x5c, 0x24, 0x08,/* mov0x8(%esp,1), %ebx */
 0x8b, 0x1b,/* mov(%ebx), %ebx */
 0x88, 0xd8,/* mov%bl, %al */
 0x88, 0xf9,/* mov%bh, %cl */

It does this twice...


> But, that aside, in CHOOSE_COLOR, in the generic case where there is no
> CODEGEN function, it checks FPALPHA (which isn't true) so it wouldn't
> call 4ubv_4f (and the semantics of makeX86Color4ubv when PKCOLOR is
> false match this 4ub_4f case).
> 
> Without a codegen 4ubv function, CHOOSE_COLOR would check FPCOLOR (true)
> and conditionally call copy_to_current, _mesa_install_exec_vtxfmt and
> finally the Color4ubv_3f in radeon_vtxfmt_c.c Obviously the codegen stuff
> doesn't do any of this additional stuff.

Good point - these extra steps are skipped in the "cached codegen" case.  But
they really need to be done...

> I'm assuming here, that it should check FPALPHA and return 0 if
> it's false? (or have the processing for the 3f cases?)
> 
> Am I completely hatstand?

No, it sounds like you've spotted a bunch of good problems...

Keith

___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel



Re: [Dri-devel] Re: [Dri-patches] CVS Update: xc (branch: tcl-0-0-branch)

2002-03-10 Thread Michael

On Sun, Mar 10, 2002 at 04:35:31PM +, Keith Whitwell wrote:
> What did you change exactly?  

Originally _ae_loopback_array_element called glColor4ub passing it 1 param, I changed 
that to
call glColor4ubv (api_arrayelt.c). So original code took random values for colours ergo
red snow (there is no codegen for non PKCOLOR 4ub case it just does return 0,
so it always used the generic stuff, albeit afaict incorrectly?).

Once that was changed CHOOSE_COLOR calls radeon_makeX86Color4ubv, the
non PKCOLOR case,  which (unless there was some deep magic I missed?)
was written like makeX86Color4ub, taking params off the stack @ 4(%esp),
8(%esp) etc, rather than ubv.

But, that aside, in CHOOSE_COLOR, in the generic case where there is no
CODEGEN function, it checks FPALPHA (which isn't true) so it wouldn't
call 4ubv_4f (and the semantics of makeX86Color4ubv when PKCOLOR is
false match this 4ub_4f case).

Without a codegen 4ubv function, CHOOSE_COLOR would check FPCOLOR (true)
and conditionally call copy_to_current, _mesa_install_exec_vtxfmt and
finally the Color4ubv_3f in radeon_vtxfmt_c.c Obviously the codegen stuff
doesn't do any of this additional stuff.

I'm assuming here, that it should check FPALPHA and return 0 if
it's false? (or have the processing for the 3f cases?)

Am I completely hatstand?

-- 
Michael.

___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel



Re: [Dri-devel] Mach64 DMA

2002-03-10 Thread Frank C . Earl

On Sunday 10 March 2002 11:44 am, José Fonseca wrote:

> I really don't know much about that, since it must happened before I
> subscribed to this mailing list, but perhaps you'll want to take a look to
> the Utah-GLX and this list archives. You can get these archives in mbox
> format and also filtered with just the messages regarding mach64 at
> http://mefriss1.swan.ac.uk/~jfonseca/dri/mailing-lists/

The problem was that the XAA driver for mach64 was setting the FIFO size up 
for some reason and it was leaving the chip in a state that wouldn't work for 
the DMA mode.  If we set the size back to the default setting before we do 
the first DMA pass, everybody's happy.  I suspect if we got with the 
developer of the XAA driver we can sell him on leaving that setting alone in 
the driver's setup.

Sorry for being silent for so long gang.  Been, yet again, crushed under with 
lovely personal business.  I have started a new branch 
(mach64-0-0-3-dma-branch), and I'm actually putting the hacks I've been 
playing with into a unified DMA framework.  I should be putting the first 
updates to the branch in over the next couple of days.

Of note, when I did find some spare time, I ran tests on what we needed to do 
to secure the chip's DMA path.  I found out some interesting facts.

It will accept any values written to the registers.
It will not act on any of those settings during the DMA pass unless they're a 
GUI specific operation when it's doing a command-type DMA.
It will not act on many of the settings after a DMA pass is complete. 
It will not let you set up any sort of DMA pass during the operation.
Junk commands, by themselves, do not seem to hose up the engine in operation.
Mapping and unmapping a memory space is somewhat compute intensive.

-- 
Frank Earl

___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel



Re: [Dri-devel] Mach64 DMA

2002-03-10 Thread José Fonseca

On 2002.03.10 11:30 Robert Lunnon wrote:
> A while back there was a problem with the Mach64 initialisation such that
> it
> locked up after executing dma, can someone point at what the resolution
> to
> that problem was and where things were patched so I can have a look at it
> ?
> 
> Thanks
> 
> Bob

I really don't know much about that, since it must happened before I 
subscribed to this mailing list, but perhaps you'll want to take a look to 
the Utah-GLX and this list archives. You can get these archives in mbox 
format and also filtered with just the messages regarding mach64 at 
http://mefriss1.swan.ac.uk/~jfonseca/dri/mailing-lists/

I hope this helps.

Regards,

José Fonseca

___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel



Re: [Dri-devel] Re: [Dri-patches] CVS Update: xc (branch: tcl-0-0-branch)

2002-03-10 Thread Keith Whitwell

Michael wrote:
> 
> On Sat, Mar 09, 2002 at 11:34:30PM -0700, Jens Owen wrote:
> > Michael Fitzpatrick wrote:
> >
> > > Log message:
> > >   Fix arrayelts color processing, vtxfmt_x86 Color4ubv function (red snow
> > >   problem in Tuxracer)
> >
> > Good work Michael.  You got the Red Out!  :-)
> 
> I did but I think it's still wrong.
> 
> In the fallback case (RADEON_NO_CODEGEN=1) it calls radeon_Color4ubv_3f
> which works differently to what I changed (which is effectively
> radeon_Color4ubv_4f)
> 
> That messes the fog somehow.

What did you change exactly?  

Keith

___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel



Re: [Dri-devel] Re: [Dri-patches] CVS Update: xc (branch: tcl-0-0-branch)

2002-03-10 Thread Michael

On Sat, Mar 09, 2002 at 11:34:30PM -0700, Jens Owen wrote:
> Michael Fitzpatrick wrote:
> 
> > Log message:
> >   Fix arrayelts color processing, vtxfmt_x86 Color4ubv function (red snow
> >   problem in Tuxracer)
> 
> Good work Michael.  You got the Red Out!  :-)

I did but I think it's still wrong.

In the fallback case (RADEON_NO_CODEGEN=1) it calls radeon_Color4ubv_3f
which works differently to what I changed (which is effectively 
radeon_Color4ubv_4f)

That messes the fog somehow.
 
-- 
Michael.

___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel



[Dri-devel] Re: [Dri-patches] CVS Update: xc (branch: tcl-0-0-branch)

2002-03-10 Thread Keith Whitwell

Michael Fitzpatrick wrote:
> 
> CVSROOT:/cvsroot/dri
> Module name:xc
> Repository: xc/xc/lib/GL/mesa/src/drv/radeon/
> Changes by: leahcim@usw-pr-cvs1.02/03/09 20:16:11
> 
> Log message:
>   Fix IDX typo. Fix tcl_vertex_format breakage (better fix for
>   this? Fixes a heap of demos / samples and Tuxracer)

The rmesa->vertex_format / rmesa->tcl_vertex_format thing is all kindof broken
and has been the source of quite a few bugs.  The real problem is that there
are 3 files all which believe that rmesa->vertex_format is their own private
state that they can modify at will without notifying anyone else.  When they
get swapped between (_tris.c, _tcl.c, _vtxfmt.c) they often find the rest of
their state out of sync with rmesa->vertex_format.

An obvious thing to do would be to triplicate that variable and give them each
a private copy & make sure nobody else uses it (ie pass it as a parameter to
all external usage of the field)

Keith

___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel



Re: [Dri-devel] Re: [Dri-patches] CVS Update: xc (branch: tcl-0-0-branch)

2002-03-10 Thread Keith Whitwell

Keith Whitwell wrote:
> 
> Jens Owen wrote:
> >
> > Michael Fitzpatrick wrote:
> >
> > > Log message:
> > >   Fix arrayelts color processing, vtxfmt_x86 Color4ubv function (red snow
> > >   problem in Tuxracer)
> >
> > Good work Michael.  You got the Red Out!  :-)
> >
> > I am seeing some debugging messages from the FIXUP2 macro, but I don't
> > think there is a problem.
> >
> > Here's the messages and a stack trace from when they are
> > generated...just in case.
> >
> > radeonCreateScreen
> > radeon_makeX86Color4ubv/438 CVAL 0 OFFSET 2
> > radeon_makeX86Color4ubv/439 CVAL deadbeaf OFFSET 27
> > radeon_makeX86Color4ubv/440 CVAL deadbeaf OFFSET 33
> > radeon_makeX86Color4ubv/441 CVAL deadbeaf OFFSET 55
> > radeon_makeX86Color4ubv/442 CVAL deadbeaf OFFSET 61
> 
> This is just me not quite finishing my job.  The next step would be to turn
> all those FIXUP2's into FIXUP's using the results printed above.
> 

Jens - I've done this.  Can you check your app is still working...

Keith

___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel



[Dri-devel] Mach64 DMA

2002-03-10 Thread Robert Lunnon

A while back there was a problem with the Mach64 initialisation such that it 
locked up after executing dma, can someone point at what the resolution to 
that problem was and where things were patched so I can have a look at it ?

Thanks

Bob

___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel



Re: [Dri-devel] Re: [Dri-patches] CVS Update: xc (branch: tcl-0-0-branch)

2002-03-10 Thread Keith Whitwell

Jens Owen wrote:
> 
> Michael Fitzpatrick wrote:
> 
> > Log message:
> >   Fix arrayelts color processing, vtxfmt_x86 Color4ubv function (red snow
> >   problem in Tuxracer)
> 
> Good work Michael.  You got the Red Out!  :-)
> 
> I am seeing some debugging messages from the FIXUP2 macro, but I don't
> think there is a problem.
> 
> Here's the messages and a stack trace from when they are
> generated...just in case.
> 
> radeonCreateScreen
> radeon_makeX86Color4ubv/438 CVAL 0 OFFSET 2
> radeon_makeX86Color4ubv/439 CVAL deadbeaf OFFSET 27
> radeon_makeX86Color4ubv/440 CVAL deadbeaf OFFSET 33
> radeon_makeX86Color4ubv/441 CVAL deadbeaf OFFSET 55
> radeon_makeX86Color4ubv/442 CVAL deadbeaf OFFSET 61

This is just me not quite finishing my job.  The next step would be to turn
all those FIXUP2's into FIXUP's using the results printed above.

I could even do something crazy like print out code that can be cut & pasted
in instead of this which needs some interpretation...

Keith

___
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel