History log of /external/mesa3d/src/gallium/drivers/i915/i915_state_derived.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
64435fd888ec5932024292d87b0afcecbe5fb818 26-Aug-2016 Nicholas Bishop <nicholasbishop@gmail.com> i915g: fix incorrect gl_FragCoord value

On Intel Pineview M hardware, the i915 gallium driver doesn't output
the correct gl_FragCoord. It seems to always have an X coord of 0.0
and a Y coord of the window's height in pixels, e.g. 600.0f or such.

I believe this is a regression caused in part by this commit:
afa035031ff9e0c07a2297d864e46c76f7bfff58

The old behavior used the output at index zero, while the new behavior
uses actual zeroes. In the case of gl_FragCoord the output at index
zero happened to be the correct one, so the behavior appeared correct
although the code already had a bug.

Fixed by checking for I915_SEMANTIC_POS when setting up texCoords. If
the generic_mapping is I915_SEMANTIC_POS, look for the
TGSI_SEMANTIC_POSITION instead of a TGSI_SEMANTIC_GENERIC output.

https://bugs.freedesktop.org/show_bug.cgi?id=97477

Reviewed-by: Stéphane Marchesin <marcheu@chromium.org>
Tested-by: Stéphane Marchesin <marcheu@chromium.org>
/external/mesa3d/src/gallium/drivers/i915/i915_state_derived.c
e925ec881128651b97ba747f644e921597a1c209 21-Jan-2016 Roland Scheidegger <sroland@vmware.com> llvmpipe,i915: add back NEW_RASTERIZER dependency when computing vertex info

I removed this mistakenly in 2dbc20e45689e09766552517a74e2270e49817b5. I
actually thought it should not be necessary and a piglit run didn't show
any differences, but this shouldn't have been in there.
draw_prepare_shader_outputs() is in fact dependent on NEW_RASTERIZER.
The new polygon-mode-facing test indeed shows why this is necessary, there's
lots of invalid reads and writes with valgrind (also crashes without
valgrind), because the pre-pipeline vertex size doesn't match the
post-pipeline vertex size (note this won't help much with stages which don't
have the prepare hook which can grow the vertex size, in particular the wide
point stage, but this isn't used by llvmpipe). The test still won't pass, of
course, but it is only usage of uninitialized values now, which is much
less dangerous...
(Albeit I'm pretty sure for i915 it really is not needed anymore as it
doesn't care about the extra outputs and doesn't call
draw_prepare_shader_outputs().)

Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
/external/mesa3d/src/gallium/drivers/i915/i915_state_derived.c
2dbc20e45689e09766552517a74e2270e49817b5 19-Dec-2015 Roland Scheidegger <sroland@vmware.com> draw: nuke the interp parameter from vertex_info

draw emit couldn't care less what the interpolation mode is...
This somehow looked like it would matter, all drivers more or less
dutifully filled that in correctly. But this is only used for emit,
if draw needs to know about interpolation mode (for clipping for instance)
it will get that information from the vs anyway.
softpipe actually used to depend on that interpolation parameter, as it
abused that structure quite a bit but no longer.

Reviewed-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Edward O'Callaghan <eocallaghan@alterapraxis.com>
/external/mesa3d/src/gallium/drivers/i915/i915_state_derived.c
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/gallium/drivers/i915/i915_state_derived.c
b1461acf15ab450fa0d360ec5e03c90d0797a6d4 04-Sep-2013 Stéphane Marchesin <marcheu@chromium.org> i915g: Stop calling draw_prepare_shader_outputs

It's not useful on i915g since we don't support primid. Fixes
piglit point tests on i915g.
/external/mesa3d/src/gallium/drivers/i915/i915_state_derived.c
d6b3a193d4d525c5048ebf793e6a63fd98f92d64 31-Jul-2013 Zack Rusin <zackr@vmware.com> draw: inject frontface info into wireframe outputs

Draw module can decompose primitives into wireframe models, which
is a fancy word for 'lines', unfortunately that decomposition means
that we weren't able to preserve the original front-face info which
could be derived from the original primitives (lines don't have a
'face'). To fix it allow draw module to inject a fake face semantic
into outputs from which the backends can figure out the original
frontfacing info of the primitives.

Signed-off-by: Zack Rusin <zackr@vmware.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
/external/mesa3d/src/gallium/drivers/i915/i915_state_derived.c
8dd1e3670ff4d12479475329961693e597b7a3cf 28-Jun-2011 Stéphane Marchesin <marcheu@chromium.org> i915g: Fix a bug in facing.

However doesn't work because of limitations in the draw module.
/external/mesa3d/src/gallium/drivers/i915/i915_state_derived.c
ef3dac2aff5fda16d7b7662c2c8828f07c9842ae 27-Jun-2011 Stéphane Marchesin <marcheu@chromium.org> i915g: initial support for SEMANTIC_FACE.

Doesn't work yet, see TODO.
/external/mesa3d/src/gallium/drivers/i915/i915_state_derived.c
d2f05283d2226f3285dccfc373ee9e314a8c95c8 26-Jun-2011 Stéphane Marchesin <marcheu@chromium.org> i915g: Fix gl_FragCoord.
/external/mesa3d/src/gallium/drivers/i915/i915_state_derived.c
34a774797c17855043c8e1f701ada7f7aca39701 15-Jun-2011 Brian Paul <brianp@vmware.com> i915g: add const qualifier to silence warning
/external/mesa3d/src/gallium/drivers/i915/i915_state_derived.c
abb436526974bd090853c0927ece0839f9143393 07-Jun-2011 Stéphane Marchesin <marcheu@chromium.org> i915g: Do generic remapping.

With complex shaders there are often "holes" in the fs inputs, and we only
have 8 tex coorsd to map those to. To fix this, we remap fs inputs to [0..8].
This lets us to run many more GLSL programs.
/external/mesa3d/src/gallium/drivers/i915/i915_state_derived.c
0ce977a66e65ce862f5b29ded6098de91464f304 04-Jun-2011 Stéphane Marchesin <marcheu@chromium.org> i915g: handle varyings properly.
/external/mesa3d/src/gallium/drivers/i915/i915_state_derived.c
11ee41fe7f72f7136b531f0c51f820e90a610a79 14-Mar-2011 Daniel Vetter <daniel.vetter@ffwll.ch> i915g: implement early z

v2: Make it actually work.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
/external/mesa3d/src/gallium/drivers/i915/i915_state_derived.c
8b122bdf6c0ba3bd77ff6f5b85b7fa84865535db 03-Jul-2010 Jakob Bornecrantz <wallbraker@gmail.com> i915g: Move fragment state to its own file
/external/mesa3d/src/gallium/drivers/i915/i915_state_derived.c
d64561472b8a7fa20512a6586d724c7c7b2867b3 04-Jul-2010 Jakob Bornecrantz <wallbraker@gmail.com> i915g: Move static state to its own file
/external/mesa3d/src/gallium/drivers/i915/i915_state_derived.c
abbb1bde06990cb15c82ebcdb9ac07b00cb0ab4f 12-Jun-2010 Jakob Bornecrantz <wallbraker@gmail.com> i915g: Rework debug print code
/external/mesa3d/src/gallium/drivers/i915/i915_state_derived.c
e694f3fd4865f7e85cf1d4c9fe5789fad399dbc6 12-Jun-2010 Jakob Bornecrantz <wallbraker@gmail.com> i915g: Switch to state atoms
/external/mesa3d/src/gallium/drivers/i915/i915_state_derived.c
fe306e7ea5e789adc955653d9be8cd7f8af47264 25-Mar-2010 Jakob Bornecrantz <wallbraker@gmail.com> draw: Add EMIT_4UB_BGRA format

Needed for i915g, also fixed swizzle in draw_vs_aos_io.
/external/mesa3d/src/gallium/drivers/i915/i915_state_derived.c
1f5285f99771243b636deb9ae0a17c54f818fac6 10-Dec-2009 michal <michal@transistor.(none)> i915: Fix for sampler view changes.
/external/mesa3d/src/gallium/drivers/i915/i915_state_derived.c
cd8614b0287dc5a69725ec4ee0208fad61f7789e 22-Jan-2010 Brian Paul <brianp@vmware.com> Merge branch 'mesa_7_7_branch'

Conflicts:
src/gallium/auxiliary/draw/draw_context.c
src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
src/gallium/auxiliary/pipebuffer/Makefile
src/gallium/auxiliary/pipebuffer/SConscript
src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c
src/gallium/auxiliary/tgsi/tgsi_scan.c
src/gallium/drivers/i915/i915_surface.c
src/gallium/drivers/i915/i915_texture.c
src/gallium/drivers/llvmpipe/lp_setup.c
src/gallium/drivers/llvmpipe/lp_tex_sample_c.c
src/gallium/drivers/llvmpipe/lp_texture.c
src/gallium/drivers/softpipe/sp_prim_vbuf.c
src/gallium/state_trackers/xorg/xorg_dri2.c
src/gallium/winsys/drm/intel/gem/intel_drm_api.c
src/gallium/winsys/drm/nouveau/drm/nouveau_drm_api.c
src/gallium/winsys/drm/radeon/core/radeon_drm.c
src/gallium/winsys/drm/vmware/core/vmw_screen_dri.c
src/mesa/state_tracker/st_cb_clear.c
ac2a665fd75249e02838ec63ef4a5b3db093ceb1 20-Jan-2010 Vinson Lee <vlee@vmware.com> i915g: Remove unnecessary headers.
/external/mesa3d/src/gallium/drivers/i915/i915_state_derived.c
89d8577fb3036547ef0b47498cc8dc5c77f886e0 14-Dec-2009 Zack Rusin <zackr@vmware.com> gallium: add geometry shader support to gallium
/external/mesa3d/src/gallium/drivers/i915/i915_state_derived.c
f00da2a3ff59c1a7104ac25a1c6eba5a6050ad68 30-Sep-2009 Jakob Bornecrantz <jakob@vmware.com> i915g: Drop the simple sufix

None of the other driver have a silly sufix,
so just drop it. Nothing new added in this commit
or any other commit but this is better marketing.
/external/mesa3d/src/gallium/drivers/i915/i915_state_derived.c