[Nouveau] [PATCH] mesa: nouveau/nvfx primitive restart

Patrice Mandin mandin.patrice at orange.fr
Mon Nov 15 10:55:00 PST 2010


Le Sat, 13 Nov 2010 15:26:51 +0100
Patrice Mandin <mandin.patrice at orange.fr> a écrit:

> Le Sat, 13 Nov 2010 12:40:38 +0100
> Christoph Bumiller <e0425955 at student.tuwien.ac.at> a écrit:
> 
> > On 13.11.2010 11:20, Patrice Mandin wrote:
> > > Hello,
> > >
> > > As nv30/nv40 supports primitive restart in hardware, here is a patch.
> > >
> > Thank you, note however that this does not make it work yet in the case
> > where the driver decides to push vertex data on the FIFO directly, which
> > is implemented via the translate module and u_split_prim in nvfx_push.c,
> > maybe you could adjust that path too ?
> 
> Of course, I was also wondering if there were any other code paths that
> may need to be fixed.

After having rewritten a bit the test in renouveau, my patch appears to
be wrong.

I found a bit of early announcements about nv30 chips that talk about a
vertex cache. Luca Barbieri thought 0x1710 could be some kind of vertex
cache flush (see http://people.freedesktop.org/~cbrill/dri-log/dri-devel-2010-01-14.log
(at 18:50)).

0x1dac that I changed recently, thinking it could be
PRIMITIVE_RESTART_ENABLE, could be a VERTEX_CACHE_ENABLE instead. 

When using a vbo, the blob always resend vertex data when
primitive_restart is used, even when using an array of indices (which
could contain the primitive_restart index, set with 0x1db0).

-- 
Patrice Mandin
WWW: http://pmandin.atari.org/
Programmeur Linux, Atari
Spécialité: Développement, jeux

"who writes the code, decides"


More information about the Nouveau mailing list