History log of /external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
3423488d55b9c483fcdb3996eb89b424c1031d24 19-Oct-2016 Timothy Arceri <timothy.arceri@collabora.com> st/mesa/r200/i915/i965: eliminate gl_fragment_program

Here we move OriginUpperLeft and PixelCenterInteger into gl_program
all other fields have been replace by shader_info.

V2: Don't use anonymous union/structs to hold vertex/fragment fields
suggested by Ian.

Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
c349031c27b7f66151f07d785625c585e10a92c2 23-Mar-2015 Ville Syrjälä <ville.syrjala@linux.intel.com> i915: Fix texcoord vs. varying collision in fragment programs

i915 fragment programs utilize the texture coordinate registers
for both texture coordinates and varyings. Unfortunately the
code doesn't check if the same index might be in use for both.
It just naively uses the index to pick a texture unit, which
could lead to collisions.

Add an extra mapping step to allocate non conflicting texture
units for both uses.

The issue can be reproduced with a pair of simple shaders like
these:
attribute vec4 in_mod;
varying vec4 mod;
void main() {
mod = in_mod;
gl_TexCoord[0] = gl_MultiTexCoord0;
gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex;
}

varying vec4 mod;
uniform sampler2D tex;
void main() {
gl_FragColor = texture2D(tex, vec2(gl_TexCoord[0])) * mod;
}

Fixes many piglit tests on i915:

glsl-link-varyings-2
glsl-orangebook-ch06-bump
interpolation-none-gl_frontcolor-smooth-fixed
interpolation-none-gl_frontcolor-smooth-none
interpolation-none-gl_frontcolor-smooth-vertex
interpolation-none-gl_frontsecondarycolor-smooth-fixed
interpolation-none-gl_frontsecondarycolor-smooth-vertex
interpolation-none-gl_frontsecondarycolor-smooth-none
interpolation-none-other-flat-fixed
interpolation-none-other-flat-none
interpolation-none-other-flat-vertex
interpolation-none-other-smooth-fixed
interpolation-none-other-smooth-none
interpolation-none-other-smooth-vertex

v2 [idr]: Minor formatting tweaks.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Cc: "11.0" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
8e9fe53ce9f8b01ae66b19dc273594fa413e9ad5 26-Feb-2015 Brian Paul <brianp@vmware.com> i915: replace INLINE with inline

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
0d924738d9d86a19b9bffa01ba9f29f2f697bb27 06-Jul-2014 Ville Syrjälä <ville.syrjala@linux.intel.com> i915: Emit 3DSTATE_SCISSOR_RECTANGLE_0 before 3DSTATE_SCISSOR_ENABLE

According to gen2 BSpec the pipeline must be flushed at least up to the
windower before changing the scissor rect enable field. Emitting the
3DSTATE_SCISSOR_RECTANGLE_0 before 3DSTATE_SCISSOR_ENABLE is sufficient
to do that.

gen3 BSpec no longer has that piece of text, but let's make the same
change there too for symmetry. The spec does still say that the scissor
rectangle must be defined before enabling it, so the new order does seem
more in line with the spec.

Reviewed-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
6bac47c05a40ea5a9f62b8b40bc1399a613d53df 24-Apr-2014 Eric Anholt <eric@anholt.net> mesa: Drop dead last_ReallyEnabled fields from drivers.

Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
877128505431adaf817dc8069172ebe4a1cdf5d8 17-Jan-2014 José Fonseca <jfonseca@vmware.com> s/Tungsten Graphics/VMware/

Tungsten Graphics Inc. was acquired by VMware Inc. in 2008. Leaving the
old copyright name is creating unnecessary confusion, hence this change.

This was the sed script I used:

$ cat tg2vmw.sed
# Run as:
#
# git reset --hard HEAD && find include scons src -type f -not -name 'sed*' -print0 | xargs -0 sed -i -f tg2vmw.sed
#

# Rename copyrights
s/Tungsten Gra\(ph\|hp\)ics,\? [iI]nc\.\?\(, Cedar Park\)\?\(, Austin\)\?\(, \(Texas\|TX\)\)\?\.\?/VMware, Inc./g
/Copyright/s/Tungsten Graphics\(,\? [iI]nc\.\)\?\(, Cedar Park\)\?\(, Austin\)\?\(, \(Texas\|TX\)\)\?\.\?/VMware, Inc./
s/TUNGSTEN GRAPHICS/VMWARE/g

# Rename emails
s/alanh@tungstengraphics.com/alanh@vmware.com/
s/jens@tungstengraphics.com/jowen@vmware.com/g
s/jrfonseca-at-tungstengraphics-dot-com/jfonseca-at-vmware-dot-com/
s/jrfonseca\?@tungstengraphics.com/jfonseca@vmware.com/g
s/keithw\?@tungstengraphics.com/keithw@vmware.com/g
s/michel@tungstengraphics.com/daenzer@vmware.com/g
s/thomas-at-tungstengraphics-dot-com/thellstom-at-vmware-dot-com/
s/zack@tungstengraphics.com/zackr@vmware.com/

# Remove dead links
s@Tungsten Graphics (http://www.tungstengraphics.com)@Tungsten Graphics@g

# C string src/gallium/state_trackers/vega/api_misc.c
s/"Tungsten Graphics, Inc"/"VMware, Inc"/

Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
38366c0c6e715314367b15680702e382d5c46a4a 08-Dec-2013 Kristian Høgsberg <krh@bitplanet.net> dri_util: Don't assume __DRIcontext->driverPrivate is a gl_context

The driverPrivate pointer is opaque to the driver and we can't assume
it's a struct gl_context in dri_util.c. Instead provide a helper function
to set the struct gl_context flags from the incoming DRI context flags.

v2 (idr): Modify the other classic drivers to also use
driContextSetFlags. I ran all the piglit GLX_ARB_create_context tests
with i965 and classic swrast without regressions.

Signed-off-by: Kristian Høgsberg <krh@bitplanet.net>
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> [v1]
Reviewed-by: Eric Anholt <eric@anholt.net>
Tested-by: Ilia Mirkin <imirkin@alum.mit.edu> [v1 on Gallium nouveau]
Cc: "10.0" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
db273724c9484d513f5caa34729475d2873d9f7b 07-Aug-2012 Ian Romanick <ian.d.romanick@intel.com> i915: Validate API and version in i915CreateContext

v2: Use base-10 for versions like gl_context::Version. Suggested by Ken.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
c6532875493ffe7de9c37924c70ebf6d0472e23d 17-Mar-2012 Yuanhan Liu <yuanhan.liu@linux.intel.com> i915: set SPRITE_POINT_ENABLE bit correctly

When SPRITE_POINT_ENABLE bit is set, the texture coord would be
replaced, and this is only needed when we called something like
glTexEnvi(GL_POINT_SPRITE, GL_COORD_REPLACE, GL_TRUE).

And more, we currently handle varying inputs as texture coord,
we would be careful when setting this bit and set it just when
needed, or you will find the value of varying input is not right
and changed.

Thus we do set SPRITE_POINT_ENABLE bit only when all enabled tex
coord units need do CoordReplace. Or fallback is needed to make
sure the rendering is right.

With handling the bit setup at i915_update_sprite_point_enable(),
we don't need the relative code at i915Enable then.

This patch would _really_ fix the webglc point-size.html test case and
of course, not regress piglit point-sprite and glean-pointSprite
testcase.

NOTE: This is a candidate for stable release branches.

v2: fallback just when all enabled tex coord units need do
CoordReplace (Eric)
v3: move the sprite point validate code at I915InvalidateState (Eric)
v4: sprite point enable bit update based on _NEW_PROGRAM, too
add relative _NEW-state comments to show what state is being used(Eric)

Signed-off-by: Yuanhan Liu <yuanhan.liu@linux.intel.com>
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
2e5a1a254ed81b1d3efa6064f48183eefac784d0 07-Oct-2011 Kenneth Graunke <kenneth@whitecape.org> intel: Convert from GLboolean to 'bool' from stdbool.h.

I initially produced the patch using this bash command:
for file in {intel,i915,i965}/*.{c,cpp,h}; do [ ! -h $file ] && sed -i
's/GLboolean/bool/g' $file && sed -i 's/GL_TRUE/true/g' $file && sed -i
's/GL_FALSE/false/g' $file; done

Then I manually added #include <stdbool.h> to fix compilation errors,
and converted a few functions back to GLboolean that were used in core
Mesa's function pointer table to avoid "incompatible pointer" warnings.

Finally, I cleaned up some whitespace issues introduced by the change.

Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Acked-by: Chad Versace <chad@chad-versace.us>
Acked-by: Paul Berry <stereotype441@gmail.com>
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
d439491a77cf9f25ea7a7f9c2309d2542d87f83e 16-Apr-2011 Ian Romanick <ian.d.romanick@intel.com> i915: Gut all remaining bits of hardware fog

None of this ever gets used. Fog is always calculated by a fragment
program. Even though the fixed-function fog unit is never used, state
updates are still sent to the hardware. Removing those spurious state
updates can't hurt performance.

Reviewed-by: Eric Anholt <eric@anholt.net>
Acked-by: Corbin Simpson <MostAwesomeDude@gmail.com>
Acked-by: Alex Deucher <alexdeucher@gmail.com>
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
499f7c0114cca195c9569c202ae099ef0277b010 16-Apr-2011 Ian Romanick <ian.d.romanick@intel.com> i915: i915_context::vertex_fog is always I915_FOG_NONE, so kill it

Reviewed-by: Eric Anholt <eric@anholt.net>
Acked-by: Corbin Simpson <MostAwesomeDude@gmail.com>
Acked-by: Alex Deucher <alexdeucher@gmail.com>
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
2c6793fb6bc89df16c23f727bcb072a157ab8d10 25-Nov-2010 Chris Wilson <chris@chris-wilson.co.uk> i915: Emit a single relocation per vbo

Reducing the number of relocations has lots of nice knock-on effects,
not least including reducing batch buffer size, auxilliary array sizes
(vmalloced and copied into the kernel), processing of uncached
relocations etc.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
7c97e288fb6a105ea60c377aef4472cc33ca01bc 26-Nov-2010 Chris Wilson <chris@chris-wilson.co.uk> i915: Separate BLEND from general context state.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
0b0cad38c57fbe59710cb4058866b2e68f6d471a 25-Nov-2010 Chris Wilson <chris@chris-wilson.co.uk> i915: suppress repeated sampler state emission

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
f9995b30756140724f41daf963fa06167912be7f 12-Oct-2010 Kristian Høgsberg <krh@bitplanet.net> Drop GLcontext typedef and use struct gl_context instead
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
d3491e775fb07f891463b2185d74bbad62f3ed24 12-Oct-2010 Kristian Høgsberg <krh@bitplanet.net> Rename GLvisual and __GLcontextModes to struct gl_config
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
34474fa4119378ef9fbb9fb557cc19c0a1ca1f7e 07-Jun-2010 Eric Anholt <eric@anholt.net> intel: Change dri_bo_* to drm_intel_bo* to consistently use new API.

The slightly less mechanical change of converting the emit_reloc calls
will follow.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
6d741627b00677d269537ad36e5f2ecd31fd98b5 05-Jun-2010 Chris Wilson <chris@chris-wilson.co.uk> i915: Only emit a MI_FLUSH when the drawing rectangle offset changes.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
4b69100bdcf26dbb5be4d600b7ca5f5cdf6e8f20 27-Apr-2010 Kristian Høgsberg <krh@bitplanet.net> dri: Add DRI entrypoints to create a context for a given API
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
b87406e55f029d29594ae76a4b39a4fe1007fe4f 03-Mar-2010 Eric Anholt <eric@anholt.net> i915: Use x,y drawing offsets instead of changing buffer offsets.

This should fix rendering into mipmaps of tiled textures.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
c9886d535e4ac5ae108b1015a9682f4ddd297536 28-Jan-2010 Eric Anholt <eric@anholt.net> i915: Remove unused initial and current state, now that there's nothing else.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
f9439e4a4696b8bc5fcdf3ac664f5e8d446f6621 28-Jan-2010 Eric Anholt <eric@anholt.net> intel: Remove long-disabled meta readpixels, and associated meta support.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
d61f07318c8678901b948fdaa8ccdf37aa3203e9 01-Jan-2010 Kristian Høgsberg <krh@bitplanet.net> Remove leftover __DRI{screen,drawable,context}Private references

As part of the DRI driver interface rewrite I merged __DRIscreenPrivate
and __DRIscreen, and likewise for __DRIdrawablePrivate and
__DRIcontextPrivate. I left typedefs in place though, to avoid renaming
all the *Private use internal to the driver. That was probably a
mistake, and it turns out a one-line find+sed combo can do the mass
rename. Better late than never.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
650e02003fbb5511ec758d993b7ec0a302ee2235 01-Dec-2009 Ian Romanick <ian.d.romanick@intel.com> Merge branch 'mesa_7_6_branch' into mesa_7_7_branch

Conflicts:
progs/util/shaderutil.c
src/mesa/drivers/dri/r600/r600_context.c
src/mesa/main/version.h
533b7660073f2c1cd1a19105d4989ec11bfdcd87 30-Nov-2009 Ian Romanick <ian.d.romanick@intel.com> i915: Fallback bit define missed on previous commit
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
96a3c69d48bb7c021181e061d010cca08198ae4c 30-Jul-2009 Eric Anholt <eric@anholt.net> i915: Increase maximum program size to the hardware limits.

This fixes potential heap trashing if the program of choice exceeds limits,
and fixes the native instructions limit being lower than what can be
used by valid programs.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
de80eeea0eebf00ee678b1a0fbd5fe67b00a8636 04-Aug-2009 Eric Anholt <eric@anholt.net> intel: Add support for EXT_provoking_vertex.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
246729162ccc7e2672aa6cc957053ce3a8975a2c 29-Jul-2009 Eric Anholt <eric@anholt.net> i915: Add support for EXT_stencil_two_side and ATI_separate_stencil.

Passes tests/stencil_twoside and glean/stencil2.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
0cade4de4f74f6b0e86fb6622e2fc370c73fd840 20-Oct-2008 Eric Anholt <eric@anholt.net> intel: Don't keep intel->pClipRects, and instead just calculate it when needed.

This avoids issues with dereferencing stale cliprects around intel_draw_buffer
time. Additionally, take advantage of cliprects staying constant for FBOs and
DRI2, and emit cliprects in the batchbuffer instead of having to flush batch
each time they change.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
91d0020eecb78ef2984fd0afafc5d555c0e957d8 05-Oct-2008 Eric Anholt <eric@anholt.net> i915: Refine the texture indirect lookup accounting.

Without this, we would reject programs which sampled multiple times from
registers defined in the same phase (block of instructions with the same
texture indirection count), as each sample would count as a new phase
beginning. Instead, keep track of which phases registers were written in,
and only bump phase when we're reading from one generated in this phase.

On the other hand, we failed to count oC or oD texture samples as being new
phases.

Bug #17865.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
3369cd9a6f943365242d7832e69788d4aede9a8f 07-Jan-2008 Xiang, Haihao <haihao.xiang@intel.com> i915: Keith Whitwell's swizzling TEX patch. fix #8283
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
c8cb87d35686c155143ed3e511e1ea674d8371a3 24-Sep-2007 Eric Anholt <eric@anholt.net> Remove leftover code for i915_texprog.c noticed in crossbar review.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
8cf9085bc7b96819d2bec1e749e15af58eefb2f3 24-Sep-2007 Eric Anholt <eric@anholt.net> Move i915tex driver into place as just i915.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
8fba8d2018643444fc17c590f3e8732e1a76c6b8 24-Sep-2007 Eric Anholt <eric@anholt.net> Remove the old i915 driver now that i915tex works without TTM.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
bd87c303e94659941a7c623d0b836e3ff317cfb4 18-Aug-2006 Alan Hourihane <alanh@tungstengraphics.com> Fix writemasks on texture arb fp instructions.
Cleanup invarient state emission.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
122629f27925a9dc50029bebc5079f87f416a7e1 20-Jul-2006 Brian Paul <brian.paul@tungstengraphics.com> Some structure renaming. Prefix vertex/fragment-related structs with
"gl_" to match other structs.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
a6f7f10efadb3c3e1aea6502b1c444189ba77124 23-May-2006 Brian Paul <brian.paul@tungstengraphics.com> prototype i915_udpate_fog() to silence warning
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
39c492bb14d706ffa8bf04f78048c05de735492b 23-Jan-2006 Alan Hourihane <alanh@tungstengraphics.com> Add Intel 945GM support
Add rotation support
(Tungsten Graphics)
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
435eff8b852f59e13554a57f83a48bf8035ec794 09-May-2005 Keith Whitwell <keith@tungstengraphics.com> i915 will use _TexEnvProgram (if active)
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
594c3f67ac8fceb061e47b090ec4d149c55a1940 18-Jun-2004 Keith Whitwell <keith@tungstengraphics.com> add missing license texts
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h
41b58954e1742493452b91d9ecdb761db5de3bed 10-Jun-2004 Keith Whitwell <keith@tungstengraphics.com> New driver for i915 as well as older i830/i845/i865 chipsets.
/external/mesa3d/src/mesa/drivers/dri/i915/i915_context.h