Bug 16656

Summary: [i965] Support more program parameters
Product: Mesa Reporter: Ian Romanick <idr>
Component: Drivers/DRI/i965Assignee: Ian Romanick <idr>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: medium CC: michael.fu
Version: gitKeywords: patch
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:
Bug Depends on:    
Bug Blocks: 19084    
Attachments: Enable 256 program parameters

Description Ian Romanick 2008-07-09 13:45:46 UTC
i965 should support more program parameters (as reported by GL_MAX_PROGRAM_PARAMETERS_ARB and friends).  The ARB_vertex_program spec only requires 96, and we currently support 128.  However, the hardware is capable of supporting more, and some applications require more.  For example, Enemy Territory: Quake Wars appears to require 243.

I've attached the obvious patch to increase support to 256.  Due to lack of other tests and other issues getting ET:QW running on i965, I am unable to verify it.
Comment 1 Michael Fu 2008-07-09 23:23:21 UTC
where is the patch, Ian?
Comment 2 Ian Romanick 2008-07-10 11:35:40 UTC
Created attachment 17622 [details] [review]
Enable 256 program parameters

I selected for this patch to be uploaded when I submitted the bug.  I'm not sure what happened.  Weird.
Comment 3 Eric Anholt 2008-12-15 16:56:04 UTC
We can do a maximum of 32 * 512 bits = 16k of constant data at once on G965-GM45, and 256 parameters would be 256 * 4 * 32bits = 32k.  Since programs seem to expect this much from us, we should figure out how to support it, but it looks like we'll have to bind the constants as a buffer and sample it.
Comment 4 Adam Jackson 2009-08-24 12:30:34 UTC
Mass version move, cvs -> git
Comment 5 Eric Anholt 2009-10-09 12:56:39 UTC
Current state is:
GL_VERTEX_PROGRAM_ARB:
    GL_MAX_PROGRAM_PARAMETERS_ARB = 1024
    GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB = 1024

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.