misc fixes for VC4

Rob Clark robdclark at gmail.com
Wed Dec 31 12:07:41 PST 2014


On Wed, Dec 31, 2014 at 2:52 PM, Eric Anholt <eric at anholt.net> wrote:
> Rob Clark <robdclark at gmail.com> writes:
>
>> On Tue, Dec 30, 2014 at 5:54 PM, Eric Anholt <eric at anholt.net> wrote:
>>> I've been looking into X performance on VC4 recently.  The first
>>> obvious thing happening was that we're hitting some fallbacks in the
>>> driver for things like GL_QUADS, so I thought "what if I use the GLES2
>>> paths instead?"  Turns out the GLES2 paths are thoroughly broken now.
>>> I wrote two quick patches that clean up a bunch of errors, but it's
>>> not working yet.
>>
>> What about simply not using GL_QUADS for the normal GL paths?  Is
>> using quads, vs tri's and a few extra vertices really going to be a
>> win on some other hw?  If not, avoiding quads would be a big help for
>> freedreno too..
>
> We could use tris with glDrawElements.  But with an IB, I'd need to be
> careful to use GL_UNSIGNED_SHORT indices and not GL_UNSIGNED_INT, and I
> forget what the limits are on number of prims per request so it might be
> tricky.

hmm, any reason to ever use GL_UNSIGNED_INT?  Prims-per-request seems
like an easier thing to work around in the driver than generating an
IB to convert quads to tris.  We may not have to restrict to strictly
things gles<n> can do...  restricting ourselves to things easy/cheap
to emulate sounds good enough to me.

BR,
-R


More information about the xorg-devel mailing list