History log of /external/mesa3d/src/gallium/drivers/r600/r600_state.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
78222e63630280b96488de0d51d1b2578e26f814 30-Jan-2013 Jerome Glisse <jglisse@redhat.com> r600g: add cs memory usage accounting and limit it v3 (backport for mesa 9.0)

We are now seing cs that can go over the vram+gtt size to avoid
failing flush early cs that goes over 70% (gtt+vram) usage. 70%
is use to allow some fragmentation.

The idea is to compute a gross estimate of memory requirement of
each draw call. After each draw call, memory will be precisely
accounted. So the uncertainty is only on the current draw call.
In practice this gave very good estimate (+/- 10% of the target
memory limit).

v2: Remove left over from testing version, remove useless NULL
checking. Improve commit message.
v3: Add comment to code on memory accounting precision

This version is a backport for mesa 9.0

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
Reviewed-by: Marek Olšák <maraeo@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
c3454d95af46d6de52f319e538378dee57d6fe36 08-Sep-2012 Marek Olšák <maraeo@gmail.com> r600g: do not require MSAA renderbuffer support if not asked for

to allow stencil-only sampler-only formats (like X24S8)

NOTE: This is a candidate for the stable branches.
(cherry picked from commit df5e2c058f73b72909fa99a2a189f5877525e3bf)
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
c586fce4fb537e904e35cb5197b6b7fe02217acb 03-Sep-2012 Vadim Girlin <vadimgirlin@gmail.com> r600g: adjust QUANT_MODE for higher precision

Use 1/256 for R6xx/7xx, 1/4096 for evergreen, instead of default 1/16.

Helps to pass some piglit tests (fbo, multisample).

Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
(cherry picked from commit f44bda17f515c411071ca8744ebd96039d9c583b)
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
c2e9dd0276464ed61d48d3d80b9be8228767dfe2 26-Aug-2012 Marek Olšák <maraeo@gmail.com> r600g: enable MSAA on r6xx by default

DRM 2.22.0 is required though. Also require the new DRM for r700, as
there are some important fixes for that generation too.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
78354011f99c4103345f8f32e10b0b4b884ebdaf 26-Aug-2012 Marek Olšák <maraeo@gmail.com> r600g: implement color resolve for r600

The blend state is different and the resolve single-sample buffer must have
FMASK and CMASK enabled. I decided to have one CMASK and one FMASK
per context instead of per resource.

There are new FMASK and CMASK allocation helpers and a new buffer_create
helper for that.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
863e2c85b9c59d717ad786c709638d948ff0f38e 26-Aug-2012 Marek Olšák <maraeo@gmail.com> r600g: fix CB_SHADER_MASK and CB_TARGET_MASK for r6xx
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
8698a3b85dd89c5d2fa473e7942b7dc8d25f3c8f 02-Aug-2012 Marek Olšák <maraeo@gmail.com> r600g: implement MSAA for r700

Reviewed-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
edf22a5c6de5107c3f67357dad7cebbc8daf8368 21-Aug-2012 Marek Olšák <maraeo@gmail.com> r600g: change programming of CB_SHADER_MASK on r600-r700

This one actually makes more sense and gives the expected value
for MSAA resolve.

Reviewed-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
a3d9d7ec79d6f7205fab2324e47d8ea185431de0 12-Aug-2012 Marek Olšák <maraeo@gmail.com> r600g: implement compression for MSAA colorbuffers for evergreen

This adds the FMASK and CMASK buffers. They share the same resource
with color data.

COMPRESSION and FAST_CLEAR are always enabled if both FMASK and CMASK are
allocated. We initialize the CMASK to a "compressed" state (not "fast cleared"),
so that we can keep FAST_CLEAR enabled all the time.

Both FMASK and CMASK must be present at the moment. If either one is missing,
the other one is not used.

v2: add cayman regs in the list

Reviewed-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
0d7e00281505b4537a8aee9002792d56619269a4 14-Aug-2012 Marek Olšák <maraeo@gmail.com> r600g: set CB_COLOR_INFO to INVALID for disabled colorbuffers on r600-r700

Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
951ac46a6a0a901b53a518c8dcde734578cbf228 14-Aug-2012 Marek Olšák <maraeo@gmail.com> r600g: rename r600_resource_texture to r600_texture
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
d663a557fd27d7c238248e19f22f2e6b05f03030 10-Aug-2012 Brian Paul <brianp@vmware.com> r600: update sampler, sampler_view code for the future

For when we have pipe->set_sampler_states(pipe, shader, start, num, samplers),
etc.

Reviewed-by: Marek Olšák <maraeo@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
a01791add08fbcb5386e0e9209ba21ed58fbdc42 22-Jul-2012 Marek Olšák <maraeo@gmail.com> r600g: implement set_sample_mask
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
6517225078a6a56c9fb3c1ea9f310992e6400b77 22-Jul-2012 Marek Olšák <maraeo@gmail.com> r600g: implement alpha-to-coverage
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
26cb887ea213be2445e0fd64364d9264ed4fbfd2 04-Aug-2012 Marek Olšák <maraeo@gmail.com> r600g: implement alpha-to-one
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
4f215952760b2e5a92b25ddfa89469c1ec110160 04-Aug-2012 Marek Olšák <maraeo@gmail.com> r600g: remove support for 3-channel colorbuffers

We have no sampler support for them.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
2df399c34bb39122a45bdd5b430b48346542e1cb 01-Aug-2012 Jerome Glisse <jglisse@redhat.com> r600g: atomize sampler state v2

Use atom for sampler state. Does not provide new functionality
or fix any bug. Just a step toward full atom base r600g.

v2: Split seamless on r6xx/r7xx into it's own atom. Make sure it's
emited after sampler and with a pipeline flush before otherwise
it does not take effect.

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
cb922b63eba1d75706354614bc5de4d39dbe9ad3 02-Aug-2012 Marek Olšák <maraeo@gmail.com> r600g: precompute color buffer state in pipe_surface and reuse it
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
cdc681c3ad746fe8adab4ea71358bcc54e024ff9 02-Aug-2012 Marek Olšák <maraeo@gmail.com> r600g: precompute depth buffer state in pipe_surface and reuse it

This is done on-demand, because we don't know in advance if a zbuffer
will be bound as depth or color.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
581f7e3101980a4e1068bb75c2eca60bb2071229 29-Jul-2012 Marek Olšák <maraeo@gmail.com> r600g: drop the old texture allocation code

Made obsolete by the libdrm surface allocator.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
e2f623f1d6da9bc987582ff68d0471061ae44030 28-Jul-2012 Marek Olšák <maraeo@gmail.com> r600g: don't decompress depth or stencil if there isn't any
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
b7b5a77ec0fa715f09cef32083f818e745772f91 23-Jul-2012 Jerome Glisse <jglisse@redhat.com> r600g: don't emit forbidden register on old kernel

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

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
30257c32910c3f7ac2b9cc24399d6be196d34d26 18-Jul-2012 Marek Olšák <maraeo@gmail.com> r600g: move VGT_STRMOUT_DRAW_OPAQUE_OFFSET initialization into invariant state
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
82a1d241754a52934b41bd152d25741b0c9c6294 18-Jul-2012 Marek Olšák <maraeo@gmail.com> r600g: fix alphatest without a colorbuffer on r6xx-r7xx
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
de4fd087cbccd47e703f750968b79525ddbe4554 18-Jul-2012 Marek Olšák <maraeo@gmail.com> r600g: always derive alphatest state from the first colorbuffer
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
bc2f5fc01e678ecd19f921e5bc7bd55c131dde66 18-Jul-2012 Marek Olšák <maraeo@gmail.com> r600g: atomize alphatest state
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
611dd529425281d73f1f0ad2000362d4a5525a25 18-Jul-2012 Marek Olšák <maraeo@gmail.com> r600g: init_flushed_depth_texture should be able to report errors
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
5d8d4252f2f6632fc455dcf1079c95495ef445ac 14-Jul-2012 Marek Olšák <maraeo@gmail.com> r600g: convert sampler view emission into atoms

Vertex and constant buffers are emitted in the same way.
This is mainly a simplification of the code. The cleanup is in another patch.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
ba48f47ebf7f017db0507b92a3ca83e404dc586c 14-Jul-2012 Marek Olšák <maraeo@gmail.com> r600g: consolidate code for setting sampler views and fix bugs in the process

Issues fixed:

- set_vs_sampler_views for evergreen is now properly implemented.

- Added the missing inval_texture_cache call for evergreen.

- have_depth_texture was sometimes incorrectly set to false on evergreen even
if there were depth textures in other shader stages. To fix this, set it
to true once and never set it to false again. It's stupid, but it matches
the r600 code. The proper fix is left to another patch.

- Optimizaton: The sampler views which aren't changed aren't updated.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
d1ca16b2738644d17c10e736ca36981f69f5fa87 14-Jul-2012 Marek Olšák <maraeo@gmail.com> r600g: remove unused flag have_depth_fb

This is a leftover from:

commit fe1fd675565231b49d3ac53d0b4bec39d8bc6781
Author: Marek Olšák <maraeo@gmail.com>
Date: Sun Jul 8 03:10:37 2012 +0200

r600g: don't flush depth textures set as colorbuffers
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
585baac652ffa172fb3fbbdd4c7559d03b7c27ef 06-Jul-2012 Marek Olšák <maraeo@gmail.com> r600g: do fine-grained vertex buffer updates

If only some buffers are changed, the other ones don't have to re-emitted.
This uses bitmasks of enabled and dirty buffers just like
emit_constant_buffers does.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
c2f444c54db82a53f63fa7a103770ee5eedc3559 12-Jul-2012 Tom Stellard <tstellar@gmail.com> r600g: Emit vertex buffers using the same method as constant buffers

Signed-off-by: Marek Olšák <maraeo@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
0b4c5dbb8c5ee69a341c1f66f70c54e3fe2db970 14-Jul-2012 Marek Olšák <maraeo@gmail.com> r600g: fix grammar constant_buffer -> constant_buffers
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
df79eb59566f20a7fa8e11d87b63b81ec35eaf25 07-Jul-2012 Marek Olšák <maraeo@gmail.com> r600g: remove is_flush from DSA state

we can just update the state when decompressing, there's no need to add
additional info into the DSA state

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
43e3f19c766863a655bb9f7c04f7820cbda0c8f5 07-Jul-2012 Marek Olšák <maraeo@gmail.com> r600g: set DISABLE in CB_COLOR_CONTROL if colormask is 0

this will be useful for in-place DB decompression, otherwise should be harmless

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
4fe74412cfdba9af6ce878aebbb0c367f19cbb4b 07-Jul-2012 Marek Olšák <maraeo@gmail.com> r600g: move CB_SHADER_MASK setup into cb_misc_state

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
a1a1ff5ec09acda0c4849c9e41a37ae82a80f000 07-Jul-2012 Marek Olšák <maraeo@gmail.com> r600g: move MULTIWRITE setup into cb_misc_state for r6xx-r7xx

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
0ea76916e63f8fc556f5e8f5a46c196d317cd5ad 07-Jul-2012 Marek Olšák <maraeo@gmail.com> r600g: move CB_TARGET_MASK setup into new cb_misc_state

to remove some overhead from draw_vbo. This is a derived state.

BTW, I've got no idea how compute interacts with 3D here, but it should
use cb_misc_state, so that 3D and compute don't conflict.

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
37708479608af877986b76302a9c92611d1e23d0 11-Jul-2012 Vadim Girlin <vadimgirlin@gmail.com> r600g: improve flushed depth texture handling v2

Use r600_resource_texture::flished_depth_texture for GPU access, and
allocate it in the VRAM. For transfers we'll allocate texture in the GTT
and store it in the r600_transfer::staging.

Improves performance when flushed depth texture is frequently used by the
GPU, e.g. in Lightsmark (~30%)

Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
a460df9299dfeb7915689befc15155e18e41ddb8 08-Jul-2012 Marek Olšák <maraeo@gmail.com> r600g: add assertions after translate_colorswap/colorformat/dbformat/texformat
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
6657a7af61ae7c328fecc6ee00246d7c6c93c936 07-Jul-2012 Marek Olšák <maraeo@gmail.com> r600g: use depth format from pipe_surface, not pipe_resource
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
b75f1d973c7b626dba567b792be5a3539855a705 26-Jun-2012 Jerome Glisse <jglisse@redhat.com> r600g: enable DUAL_EXPORT mode when possible on r6xx/r7xx

DUAL_EXPORT can be enabled on r6xx/r7xx when all CBs use 16-bit export
and there is no depth/stencil export.

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
0c47d9dcab80923c61b3f5375128e9b511b842fb 26-Jun-2012 Vadim Girlin <vadimgirlin@gmail.com> r600g: avoid unnecessary shader exports v2

In some cases TGSI shader has more color outputs than the number of CBs,
so it seems we need to limit the number of color exports. This requires
different shader variants depending on the nr_cbufs, but on the other hand
we are doing less exports, which are very costly.

v2: fix various piglit regressions

Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
4acf71f01ea1edb253cd38cc059d4af1a2a40bf4 11-Jun-2012 Vadim Girlin <vadimgirlin@gmail.com> r600g: cache shader variants instead of rebuilding v3

Shader variants are stored in the list, the key for lookup is based on the
states that require different hw shaders - currently it's rctx->two_side (all
gpus) and rctx->nr_cbufs (evergreen/cayman, when writes_all property is set).

v2:
- use simple list instead of keymap as suggested by Marek on irc
- call r600_adjust_gprs from r600_bind_vs_shader for r6xx/r7xx
(r600_shader_select isn't used for vertex shaders currently)

v3:
- fix call to r600_adjust_gprs - do it after updating current shader

Improves performance for some apps, e.g. FlightGear -
see https://bugs.freedesktop.org/show_bug.cgi?id=50360

Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
da98bb6fc105e1a2f688a1713ca9e50f0ac8fbed 25-Jun-2012 Marek Olšák <maraeo@gmail.com> r600g: split flushed depth texture creation and flushing
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
6e7756db14c362ede6fdc97454267a32b8eab1d4 17-Jun-2012 Marek Olšák <maraeo@gmail.com> r600g: enable streamout by default on r7xx and DRM 2.17.0

Now that it's in Linus's tree.

Has anyone had a chance to test streamout on Cayman recently?
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
2df2c31087770a6e4e79f90fe096e370cd632e00 25-May-2012 Kai Wasserbäch <kai@dev.carbon-project.org> r600g: handle R16G16B16_FLOAT and R32G32B32_FLOAT in translate_colorswap

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

Signed-off-by: Kai Wasserbäch <kai@dev.carbon-project.org>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
31a25dac98ea20ba853128f98987c6358d8e0598 27-Apr-2012 Dave Airlie <airlied@redhat.com> r600g: setup COLOR1 for possible dual-src in the framebuffer bind

As pointed out by Marek, if we have only one cb, we may as well add this
single register write here rather than adding it in the draw loop.

Reviewed-by: Marek Olšák <maraeo@gmail.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
bb4c5d72d7c7cb1d9e7016e2c07c36875f30011a 11-May-2012 Marek Olšák <maraeo@gmail.com> Merge branch 'gallium-userbuf'

Conflicts:
src/gallium/docs/source/screen.rst
src/gallium/drivers/nv50/nv50_state.c
src/gallium/include/pipe/p_defines.h
src/mesa/state_tracker/st_draw.c
4a26454e979251db25bab68685835fa32c099429 22-Apr-2012 Dave Airlie <airlied@redhat.com> r600g: bypass alpha for integer types (v2)

This moves the alpha test control to derived state and disables alpha
testing for integer fbs.

fbo-blending test in piglit gets further when we do this (not a pass
but less fail).

v2: drop the fb_sx_alpha_test_control

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
0b7d48cbad86eaac21fce3793da41b46db8be3b4 24-Apr-2012 Marek Olšák <maraeo@gmail.com> gallium: add void *user_buffer to pipe_constant_buffer

This reduces CPU overhead when updating constants.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
43995c9470dd38cf80a60a169f5875de6798863f 24-Apr-2012 Marek Olšák <maraeo@gmail.com> gallium: remove pipe_context::redefine_user_buffer
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
507337864fa80caf9f26602324d2c28dd0a75d61 24-Apr-2012 Marek Olšák <maraeo@gmail.com> gallium: change set_constant_buffer to be UBO-friendly
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
a52b3338c6e51421e3836ae210cd98d9c1ec337b 10-Apr-2012 Marek Olšák <maraeo@gmail.com> u_vbuf: remove u_vbuf_resource
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
2d03d4f4a365d7af5f4dac20700009152eba1682 31-Mar-2012 Marek Olšák <maraeo@gmail.com> u_vbuf: override set_vertex_buffers
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
62b0323cf6af90aa2be89ec76ec3693213b0de5e 23-Apr-2012 Dave Airlie <airlied@redhat.com> r600g: split add_reg into add_reg and add_reg_bo variants

This shaves 2k off the final dri.so, and removes lots of pointless
NULL, 0 passing.

most like pointless - but it looked nicer to me.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
d1cc87c0b64c2221b079015a6c3b593af83f0758 24-Mar-2012 Dave Airlie <airlied@redhat.com> r600g: initial r600 dual src blending support

survives piglit with no regressions on rv610/evergreen

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
a633d82ce352a69fd54a2b0e262a91f27f478119 02-Apr-2012 Marek Olšák <maraeo@gmail.com> r600g: remove dead code after the rework

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
68bbfc1afe210d82acfb14a78b0fd8c436a8f78c 01-Apr-2012 Marek Olšák <maraeo@gmail.com> r600g: rework state emission of constant buffers

Framerate in ipers:
before: 43.6 FPS
after: 46.6 FPS

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
c76462b45f1e3a0aa2ee7971191e30e8a5f52015 30-Mar-2012 Marek Olšák <maraeo@gmail.com> r600g: rework state emission of vertex buffers

This reduces a little of CPU overhead.
The idea is to translate pipe vertex buffers directly into the CS
and not using any intermediate representations.

Framerate in Torcs:
before: 32.2
after: 34.6

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
a2e7629e688b6c258baf01e14dddf8c5ce645ee2 19-Mar-2012 Marek Olšák <maraeo@gmail.com> r600g: fix point rendering

Accidentally broken in c7eaf274a9b7e3e5f4b060be2320.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
f6546535c9c8ce001e081487b8cd30b6703c0f4d 07-Mar-2012 Marek Olšák <maraeo@gmail.com> r600g: use SX_MISC to implement rasterizer discard

Yeah I am reworking it again. This is way simpler than the other methods.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
c7eaf274a9b7e3e5f4b060be2320eb605464ba5c 08-Mar-2012 Marek Olšák <maraeo@gmail.com> Revert "r600g: fix and improve rasterizer discard for r600-r700"

I will use SX_MISC instead.

This reverts commit 597fd6dc8c424a35f8442d5fd9de708013a69830.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
d0f8561574023aa8f2e0fdf553ee168253567437 07-Mar-2012 Marek Olšák <maraeo@gmail.com> r600g: only emit SX_SURFACE_SYNC on r700 if there's CS checker support

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=47039
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
e363dd5c7d8ba40984d937ad7487abbb5be439bc 05-Mar-2012 Marek Olšák <maraeo@gmail.com> r600g: replace atom_ prefix with _state and _cmd suffixes
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
330b6c85c961b32f704ce8ec7dbf8cb7fc0b80a8 05-Mar-2012 Marek Olšák <maraeo@gmail.com> r600g: cleanup includes
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
96ef4ddc3ddda4d1f637af86f4790d24f8f386c6 27-Feb-2012 Marek Olšák <maraeo@gmail.com> r600g: initialize DB_DEPTH_CONTROL at beginning of CS

Otherwise streamout with rasterizer discard will make the kernel upset
if the state tracker doesn't set a depth-stencil-alpha state.

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
6187503f95c56aa3fdbb645170095c409dad12ff 27-Feb-2012 Marek Olšák <maraeo@gmail.com> r600g: initialize SX_SURFACE_SYNC

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
914b4bb80c28c81101941d5533361ae0108eb771 29-Feb-2012 Marek Olšák <maraeo@gmail.com> r600g: add support for missing colorbuffer formats

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
c60d789b3bdb4825b313609ca87987deae13d43b 28-Feb-2012 Marek Olšák <maraeo@gmail.com> r600g: remove support for SCALED colorbuffer formats

Unused by the current stack and APIs, therefore untestable.
It was used to facilitate the transition to integers.

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
597fd6dc8c424a35f8442d5fd9de708013a69830 26-Feb-2012 Marek Olšák <maraeo@gmail.com> r600g: fix and improve rasterizer discard for r600-r700

For polygons, we have been using face culling with success, but that doesn't
work for points and lines.

Setting the point size and line width to 0 fixes it.

Also improve it even more by setting SCREEN_SCISSOR to a zero area.

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
ca78a47b056b5a4589933492db364f6e418abb0f 26-Feb-2012 Marek Olšák <maraeo@gmail.com> r600g: make some scissor regs invariant on r600-r700

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
aacd653834264b70a2537aff7914762b39f0683f 26-Feb-2012 Marek Olšák <maraeo@gmail.com> r600g: rework scissor for r600-r700

We must use VPORT_SCISSOR, because that's the only one we can use for multiple
scissor rectangles in ARB_viewport_array.

R700 can use the VPORT_SCISSOR_ENABLE bit, but R600 doesn't have that and must
emit a 8192x8192 rectangle if scissor is disabled.

This commit also cleanups magic numbers in create_rs_state.

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
370c8b5ee7666f4f515d63603afe8282b1b3c682 24-Feb-2012 Marek Olšák <maraeo@gmail.com> r600g: remove obsolete todo comments

Also use XXX in the other ones, because it's the most used word for that
purpose in Mesa.

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
b85fc0ac7e9795b773edad22e20eb3270f4909bd 24-Feb-2012 Marek Olšák <maraeo@gmail.com> r600g: move initialization of use_surface flag into screen_create

Also change the type to bool and give it a less ambiguous name.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
d334d591a71c41d6a1eb4f2ea6cdabedc425e42f 24-Feb-2012 Marek Olšák <maraeo@gmail.com> r600g: rename r600_resource_texture::depth to bool is_depth

It's used as a boolean.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
fbebd431ec4e2e461a0cbcd5f3a04a000b8f6bbf 03-Feb-2012 Marek Olšák <maraeo@gmail.com> r600g: move invariant register updates into start_cs for r6xx-r7xx
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
e2809849ecac69615ece294a55ee355afaac33d3 02-Feb-2012 Marek Olšák <maraeo@gmail.com> r600g: add a depth misc state which depends on occlusion queries

This is a state which is derived from other states and is actually the first
state which doesn't correspond to any gallium state.

There are two state flags:
bool occlusion_query_enabled
bool flush_depthstencil_enabled

Additional flags can be added later if needed, e.g. bool hiz_enabled.
The emit function will have to figure out the register values by itself.

It basically just emits the registers when the state changes.
This commit also adds a few helper functions for writing registers directly
into a command stream.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
182fd4c54476ced92b61412b0cac5be32e257b53 02-Feb-2012 Marek Olšák <maraeo@gmail.com> r600g: move all invariant state from draw_vbo into start_cs
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
f126253040654d52db134063a69ebaf0c417d410 31-Jan-2012 Marek Olšák <maraeo@gmail.com> r600g: turn init_config into a command buffer for starting a CS

This is the first pure command buffer. It contains CS initialization
packets and emits invariant state (i.e. the registers which never or rarely
change).

The affected registers are removed from *_hw_context.c, so that both ways
of emitting commands can co-exist.

v2: emit context_control in cayman's start_cs too
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
b0b81218132b6952de987dca21b9750d8d51b7f0 16-Feb-2012 Marek Olšák <maraeo@gmail.com> r600g: remove the workaround for quads and provoking vertex
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
014198ec8860d8a0abfd6aa0ddd8db9d26febdbb 14-Feb-2012 Marek Olšák <maraeo@gmail.com> r600g: consolidate set_blend_color code
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
5cc9aa0e02f222fd6a8f16f65d8c7f5eda06f893 14-Feb-2012 Marek Olšák <maraeo@gmail.com> r600g: consolidate more translate functions
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
d214275aceed3afd1174cd2a1b823d4b7357de2a 14-Feb-2012 Marek Olšák <maraeo@gmail.com> r600g: inline r600_translate_ds_func
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
9a20130e5f703e9e9279965183993b95907c7d6b 14-Feb-2012 Marek Olšák <maraeo@gmail.com> r600g: consolidate some translate functions
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
39b0da9f8d04315c698f8611304d1a66e8505c6c 14-Feb-2012 Marek Olšák <maraeo@gmail.com> Revert "r600g: don't advertise integer textures without GLSL 1.3"

This reverts commit 2c06bcb90982280e82a044b8be83be8fdf5a9590.

It breaks u_blitter trying to blit compressed textures as uint.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
2c06bcb90982280e82a044b8be83be8fdf5a9590 14-Feb-2012 Marek Olšák <maraeo@gmail.com> r600g: don't advertise integer textures without GLSL 1.3
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
c0c979eebc076b95cc8d18a013ce2968fe6311ad 30-Jan-2012 Jerome Glisse <jglisse@redhat.com> r600g: add support for common surface allocator for tiling v13

Tiled surface have all kind of alignment constraint that needs to
be met. Instead of having all this code duplicated btw ddx and
mesa use common code in libdrm_radeon this also ensure that both
ddx and mesa compute those alignment in the same way.

v2 fix evergreen
v3 fix compressed texture and workaround cube texture issue by
disabling 2D array mode for cubemap (need to check if r7xx and
newer are also affected by the issue)
v4 fix texture array
v5 fix evergreen and newer, split surface values computation from
mipmap tree generation so that we can get them directly from the
ddx
v6 final fix to evergreen tile split value
v7 fix mipmap offset to avoid to use random value, use color view
depth view to address different layer as hardware is doing some
magic rotation depending on the layer
v8 fix COLOR_VIEW on r6xx for linear array mode, use COLOR_VIEW on
evergreen, align bytes per pixel to a multiple of a dword
v9 fix handling of stencil on evergreen, half fix for compressed
texture
v10 fix evergreen compressed texture proper support for stencil
tile split. Fix stencil issue when array mode was clear by
the kernel, always program stencil bo. On evergreen depth
buffer bo need to be big enough to hold depth buffer + stencil
buffer as even with stencil disabled things get written there.
v11 rebase on top of mesa, fix pitch issue with 1d surface on evergreen,
old ddx overestimate those. Fix linear case when pitch*height < 64.
Fix r300g.
v12 Fix linear case when pitch*height < 64 for old path, adapt to
libdrm API change
v13 add libdrm check

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
38bf2763482b4f1b6d95cd51aecec75601d8b90f 31-Jan-2012 Marek Olšák <maraeo@gmail.com> r600g: remove unused variable num_dest_buffers
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
0813e58a3e41faf6f2072d034dfdc6198a3a1fee 30-Jan-2012 Marek Olšák <maraeo@gmail.com> r600g: rework cache flushing

This also significantly improves the RV670 flush by using the CB1 flush
*always* and also DEST_BASE_0_ENA, which appears to magically fix some tests.
I am not entirely sure, but it's possible that RV670 flushing is fixed
completely.

v2: fix cayman by flushing texture cache instead of vertex cache

Thanks to Dave Airlie for testing Cayman.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
e4340c1908a6a3b09e1a15d5195f6da7d00494d0 29-Jan-2012 Marek Olšák <maraeo@gmail.com> r600g: merge r600_context with r600_pipe_context

The split made no sense.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
78293b99b23268e6698f1267aaf40647c17d95a5 29-Jan-2012 Marek Olšák <maraeo@gmail.com> r600g: remove u8,u16,u32,u64 types
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
85db52025189c88437f82369716ffe88429dc08b 29-Jan-2012 Marek Olšák <maraeo@gmail.com> r600g: don't use r600_context_reg on r6xx-r7xx

Reviewed-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
4a058aebb2ce340d0e03434a8820fdf5853b971e 29-Jan-2012 Marek Olšák <maraeo@gmail.com> r600g: get rid of the mask parameter in pipe_state_add_reg

Reviewed-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
0569f13d2b6239dbbc693781d806826924b0ed16 29-Jan-2012 Marek Olšák <maraeo@gmail.com> r600g: don't use register mask for TA_CNTL_AUX

Reviewed-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
a494301f7fd4c93df67396d296a3edc6acfa44c3 29-Jan-2012 Marek Olšák <maraeo@gmail.com> r600g: don't use register mask for PA_CL_CLIP_CNTL

Reviewed-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
97acf2ca59defd3bcba946cdb014ee7b440f9186 29-Jan-2012 Marek Olšák <maraeo@gmail.com> r600g: don't use register mask for PA_CL_VS_OUT_CNTL

Reviewed-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
121940ecc71f0cdc06d8840430931f8a1c7199d4 29-Jan-2012 Marek Olšák <maraeo@gmail.com> r600g: set full register mask for PA_CL_CLIP_CNTL

We don't set the other bits anywhere else.

Reviewed-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
a652cc40b9641d0b51e0a8533924a50073a50aae 29-Jan-2012 Marek Olšák <maraeo@gmail.com> r600g: don't use register mask for PA_SU_SC_MODE_CNTL

It's always emitted in draw_vbo.

Reviewed-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
2000086fcd5174f121f61dd6df5948c67101e148 29-Jan-2012 Marek Olšák <maraeo@gmail.com> r600g: don't add PA_SC_LINE_STIPPLE to rasterizer_state

It's always emitted in draw_vbo.

Reviewed-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
84b4b2a8aacf6655d3f2a9f03dec3913a00aabdb 29-Jan-2012 Marek Olšák <maraeo@gmail.com> r600g: don't use register mask for CB_COLOR_CONTROL on r6xx-r7xx

Reviewed-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
9c0b50ca0b31aa66147ea7919022de2633315c9a 29-Jan-2012 Marek Olšák <maraeo@gmail.com> r600g: don't set CB_TARGET_MASK in set_framebuffer_state

It's emitted in draw_vbo, always.

Reviewed-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
e3032a052321ea1fdfbca090618149ae1ed33911 28-Jan-2012 Marek Olšák <maraeo@gmail.com> r600g: use a more clever way to disable per-vertex point size

This uses point size clamping to force point size to a particular value,
making the vertex shader output irrelevant.

Reviewed-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
b6233f4d2e91edf28e1e5a9a82fdab341ba7dd84 28-Jan-2012 Marek Olšák <maraeo@gmail.com> r600g: don't use register mask for DB_RENDER_CONTROL

We don't set the other bits anywhere else except the other DSA states,
which are mutually-exclusive with this one.

Reviewed-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
3d061caaed13b646ff40754f8ebe73f3d4983c5b 28-Jan-2012 Marek Olšák <maraeo@gmail.com> r600g: cleanup setting DB_SHADER_CONTROL

Reviewed-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
a2361946e782b57f0c63587841ca41c0ea707070 28-Jan-2012 Marek Olšák <maraeo@gmail.com> r600g: rework and consolidate stencilref state setting

Stop using the register mask.

Reviewed-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
5345e3ea86a3e942ccef083019a76b38b05f3f14 28-Jan-2012 Marek Olšák <maraeo@gmail.com> r600g: don't use register mask for SQ_GPR_RESOURCE_MGMT_1

Reviewed-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
f183cc9ce3ad1d043bdf8b38fd519e8f437714fc 27-Jan-2012 Marek Olšák <maraeo@gmail.com> r600g: set minimum point size to 1.0 for non-sprite non-aa points
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
a33937d043f9c1795d2be635117a7cc9646ff0ce 29-Jan-2012 Dave Airlie <airlied@redhat.com> r600g: enable blend_bypass for uint/sint
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
1a9d2b764295f561aa9c24f504bd8cf3f95e7f54 24-Jan-2012 Vadim Girlin <vadimgirlin@gmail.com> r600g: fix linear and flat interpolation

Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
c2b800cf38b299c1ab1c53dc0e4ea00c7acef853 23-Jan-2012 Marek Olšák <maraeo@gmail.com> r600g: nuke the fallback for vertex and fragment color clamping
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
54e8dcaad65cbe3603730414fd8d76ac53f89a86 20-Jan-2012 Vadim Girlin <vadimgirlin@gmail.com> r600g: implement clip vertex v2

Clip planes are uploaded as a constant buffer and used by the vertex
shader to produce corresponding clip distances for hw clipping.

Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
1fc001ea15f79166a32bc3a3fa2f6405a986e3f1 18-Jan-2012 Dave Airlie <airlied@redhat.com> r600g: fix some of the interpolation tests.

This enables linear gradients if we need a linear,
it also sets the flat shade flag for color/constant interpolations.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
46ce25722b364ae7fa20b61e60eff4be5ad051d3 18-Jan-2012 Alex Deucher <alexander.deucher@amd.com> r600g: add workaround for original R600 PS setup

The original R600 requires the UNCACHED_FIRST_INST bit
to be set in the PS.

Signed-off-by: Alex Deucher <alexander.deucher@amd.com>

Note: this is candidate for the stable branches.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
91d47296967ebfaf685f3870998ea0a1450ecf55 15-Jan-2012 Vadim Girlin <vadimgirlin@gmail.com> r600g: implement clip distances

Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
725a820b926575265e6790601a0defd9c30947dc 06-Jan-2012 Vadim Girlin <vadimgirlin@gmail.com> r600g: implement two-sided lighting (v3)

v2: select the colors in the pixel shader

v3: fix rs state creation for pre-evergreen

Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
5250bd00c00ac8470320f4fae1d74425132f2083 14-Jan-2012 Dave Airlie <airlied@redhat.com> r600g: add missing r32 uint/sint fbo formats.

Fixes the GL3 required formats test.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
dc4c821f0817a3db716f965692fb701079f66340 10-Jan-2012 Marek Olšák <maraeo@gmail.com> Squash-merge branch 'gallium-clip-state'

Conflicts:
src/gallium/auxiliary/tgsi/tgsi_strings.c
src/mesa/state_tracker/st_atom_clip.c

commit d919791f2742e913173d6b335128e7d4c63c0840
Author: Christoph Bumiller <e0425955@student.tuwien.ac.at>
Date: Fri Jan 6 17:59:22 2012 +0100

d3d1x: adapt to new clip state

commit cfec82bca3fefcdefafca3f4555285ec1d1ae421
Author: Christoph Bumiller <e0425955@student.tuwien.ac.at>
Date: Fri Jan 6 14:16:51 2012 +0100

gallium/docs: update for clip state changes

commit c02bfeb81ad9f62041a2285ea6373bbbd602912a
Author: Christoph Bumiller <e0425955@student.tuwien.ac.at>
Date: Fri Jan 6 14:21:43 2012 +0100

tgsi: add TGSI_PROPERTY_PROHIBIT_UCPS

commit d4e0a785a6a23ad2f6819fd72e236acb9750028d
Author: Brian Paul <brianp@vmware.com>
Date: Thu Jan 5 08:30:00 2012 -0700

tgsi: consolidate TGSI string arrays in new tgsi_strings.h

There was some duplication between the tgsi_dump.c and tgsi_text.c
files. Also use some static assertions to help catch errors when
adding new TGSI values.

v2: put strings in tgsi_strings.c file instead of the .h file.

Reviewed-by: Dave Airlie <airlied@redhat.com>

commit c28584ce0d8c62bd92c8f140729d344f88a0b3cd
Author: Christoph Bumiller <e0425955@student.tuwien.ac.at>
Date: Fri Jan 6 12:48:09 2012 +0100

gallium: extend user_clip_plane_enable to apply to clip distances

commit f1d5016c07f786229ed057effbe55fbfd160b019
Author: Marek Olšák <maraeo@gmail.com>
Date: Fri Jan 6 02:39:09 2012 +0100

nvfx: adapt to new clip state

commit 6f6fa1c26bd19f797c1996731708e3569c9bfe24
Author: Marek Olšák <maraeo@gmail.com>
Date: Fri Jan 6 01:41:39 2012 +0100

st/mesa: fix DrawPixels with GL_DEPTH_CLAMP

commit c86ad730aa1c017788ae88a55f54071bf222be12
Author: Christoph Bumiller <e0425955@student.tuwien.ac.at>
Date: Tue Jan 3 23:51:30 2012 +0100

nv50: adapt to new clip state

commit 3a8ae6ac243bae5970729dc4057fe02d992543dc
Author: Christoph Bumiller <e0425955@student.tuwien.ac.at>
Date: Tue Jan 3 23:32:36 2012 +0100

nvc0: adapt to new clip state

commit 6243a8246997f8d2fcc69ab741a2c2dea080ff11
Author: Marek Olšák <maraeo@gmail.com>
Date: Thu Dec 29 01:32:51 2011 +0100

draw: initalize pt.user.planes in draw_init

This fixes a crash in glean/fpexceptions.

commit e3056524b19b56d473f4faff84ffa0eb41497408
Author: Marek Olšák <maraeo@gmail.com>
Date: Mon Dec 26 06:26:55 2011 +0100

svga: adapt to new clip state

commit c5bfa8b37d6d489271df457229081d6bbb51b4b7
Author: Marek Olšák <maraeo@gmail.com>
Date: Sun Dec 25 14:11:51 2011 +0100

r600g: adapt to new clip state

commit f11890905362f62627c4a28a8255b76eb7de7df2
Author: Marek Olšák <maraeo@gmail.com>
Date: Sun Dec 25 14:10:26 2011 +0100

r300g: adapt to new clip state

commit e37465327c79a01112f15f6278d9accc5bf3103f
Author: Marek Olšák <maraeo@gmail.com>
Date: Sun Dec 25 12:39:16 2011 +0100

draw: adapt to new clip state

This adds a regression in the LLVM clipping path. Can anybody see anything
wrong with the code? It works for every other case, just glean/fpexceptions
crashes when doing the "Infinite clip plane test".

commit b474d2b18c72d965eefae4e427c269cba5ce6ba2
Author: Marek Olšák <maraeo@gmail.com>
Date: Sun Dec 25 13:14:59 2011 +0100

u_blitter: don't save/set/restore clip state

commit 9dd240ea91f523a677af45e8d0adb9e661e28602
Author: Marek Olšák <maraeo@gmail.com>
Date: Sun Dec 25 13:11:56 2011 +0100

gallium: don't cso_save/set/restore clip state

The enable bits are in the rasterizer state.

commit a4f7031179f5f4ad524b34b394214b984ac950f6
Author: Marek Olšák <maraeo@gmail.com>
Date: Sun Dec 25 12:58:55 2011 +0100

gallium: default depth_clip to 1

depth_clip = !depth_clamp

commit fe21147a00ab90e549d63fe12ee4625c9c2ffcc3
Author: Marek Olšák <maraeo@gmail.com>
Date: Mon Dec 26 06:14:19 2011 +0100

trace,util: update state logging to new clip state

Also dump the other missing flags.

commit 2a3b96e84ac872dcc5bc1de049fe76bb58d64b23
Author: Marek Olšák <maraeo@gmail.com>
Date: Sun Dec 25 10:43:43 2011 +0100

st/mesa: adapt to new clip state

commit b7b656a42fca19d7c85267f42649a206a85a2c72
Author: Marek Olšák <maraeo@gmail.com>
Date: Sat Dec 17 15:45:19 2011 +0100

gallium: move state enable bits from clip_state to rasterizer_state
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
77058335ebc9a1c2a81ec2cf98a8a157065e69d0 02-Jan-2012 Dave Airlie <airlied@redhat.com> r600g: add missing colorswaps for r8 uint/sint.

fixes some warnings in GL3.0 tests.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
543b2331d7b45a29ccd3530daa2389e87e65d89b 08-Nov-2011 Marek Olšák <maraeo@gmail.com> r600g: implement transform feedback

r600: DONE.
r700: MOSTLY (done but locks up).
Evergreen: MOSTLY (done but doesn't work for an unknown reason).

The kernel support will come soon.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
9608ef5dec4d70024e68a49c64faed9ec7e4d2e0 27-Nov-2011 Dave Airlie <airlied@redhat.com> r600g: add framebuffer support for 2/10/10/10 integer
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
391e33ffbf01180d66d4c4e9a6c91fc17f9feaca 06-Nov-2011 Dave Airlie <airlied@redhat.com> r600g: add initial linestipple support.

It seems line loop stipple in hardware needs something I don't know, it might
need a proper geometry shader who knows.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
e532c710c60f0895e32af6562ac2855aa7d5eb63 04-Nov-2011 Vadim Girlin <vadimgirlin@gmail.com> r600g: move SPI setup to PS setup

SPI semantic indices for PS/VS are now static, so we don't
need to update spi config for every shaders combination. We can move
the functionality of r600_spi_update to r600(evergreen)_pipe_shader_ps.

Flatshade state is now controlled by the global FLAT_SHADE_ENA flag
instead of updating FLAT_SHADE for all inputs.

Sprite coord still requires the update of spi setup when
sprite_coord_enable is first changed from zero (enabled), and then
only when it's changed to other non-zero value (enabled for other input).
Change to zero (disabling) and back to the same value is handled via
global SPRITE_COORD_ENA.

New field "sprite_coord_enable" added to "struct r600_pipe_shader"
to track current state for the pixel shader. It's checked in the
r600_update_derived_state.

Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
5b27b63de64167a84a03d820550e56c4b7bbc69d 05-Nov-2011 Vadim Girlin <vadimgirlin@gmail.com> r600g: precalculate semantic indices for SPI setup

There is no need to duplicate semantic mapping which is done in hw, so get
rid of r600_find_vs_semantic_index.

TGSI name/sid pair is mapped to the 8-bit semantic index for SPI.

Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
df121b868a13e7ca76f19d1488b625c02d632a47 04-Nov-2011 Alex Deucher <alexander.deucher@amd.com> Revert "r600g: precalculate semantic indices for SPI setup"

This reverts commit c15f8569fddac5f8aee77863922fd5bb992cfe8a.

This breaks r6xx.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
9212637f34c6600daaf162f95ca49e3c42abbc40 04-Nov-2011 Alex Deucher <alexander.deucher@amd.com> Revert "r600g: move SPI setup to PS setup"

This reverts commit 9804cf3118ae7249098af2a9c78b36f4fb576ee4.

This breaks r6xx.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
9804cf3118ae7249098af2a9c78b36f4fb576ee4 04-Nov-2011 Vadim Girlin <vadimgirlin@gmail.com> r600g: move SPI setup to PS setup

SPI semantic indices for PS/VS are now static, so we don't
need to update spi config for every shaders combination. We can move
the functionality of r600_spi_update to r600(evergreen)_pipe_shader_ps.

Flatshade state is now controlled by the global FLAT_SHADE_ENA flag
instead of updating FLAT_SHADE for all inputs.

Sprite coord still requires the update of spi setup when
sprite_coord_enable is first changed from zero (enabled), and then
only when it's changed to other non-zero value (enabled for other input).
Change to zero (disabling) and back to the same value is handled via
global SPRITE_COORD_ENA.

New field "sprite_coord_enable" added to "struct r600_pipe_shader"
to track current state for the pixel shader. It's checked in the
r600_update_derived_state.

Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
c15f8569fddac5f8aee77863922fd5bb992cfe8a 04-Nov-2011 Vadim Girlin <vadimgirlin@gmail.com> r600g: precalculate semantic indices for SPI setup

There is no need to duplicate semantic mapping which is done in hw, so get
rid of r600_find_vs_semantic_index.

TGSI name/sid pair is mapped to the 8-bit semantic index for SPI.

Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
faa16dc456f1f910eef24eaa23889be806b513b7 25-Oct-2011 Marek Olšák <maraeo@gmail.com> r600g: set correct tiling flags in depth info

The kernel currently overwrites the flags, but if we stopped doing that,
this would break badly.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
e556983fc8f0ac9046c5a5e3e34e8ea036587ac7 23-Sep-2011 Mathias Fröhlich <Mathias.Froehlich@gmx.net> r600g: Use the bitfield define matching the register it is used for.

Fix a typo that should result in the same code.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
866f9b18c68ede63c00917ec9c3dae3524ca8826 11-Sep-2011 Dave Airlie <airlied@redhat.com> gallium: rename ZS stencil type to UINT (v2)

these are never USCALED, always UINT in reality.

taken from some work by Christoph Bumiller

v2: fixup formatting of table + tabs

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
95fd5e5aba2e21ab20cb971506a81c0049b5a694 10-Oct-2011 Dave Airlie <airlied@redhat.com> r600g: drop force int type workaround

now that we have integer texture types I can drop this workaround so that
copies of values is done properly (as floats would fail on some corner cases).

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
8d3e505ed66cbaa93782acdd5b296704392fcb06 10-Oct-2011 Dave Airlie <airlied@redhat.com> r600g: add integer texture/render integer formats for r600/700.

with these I can drop the force int type hack.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
6101b6d442b06a347c001fe85848d636ab7df260 11-Sep-2011 Marek Olšák <maraeo@gmail.com> r600g: merge r600_bo with r600_resource

I have moved 'last_flush' and 'binding' from r600_bo to winsys/radeon.
The other members are now part of r600_resource.

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
e92348b7f5ee2565371dd779f25cc0ede8724886 24-Sep-2011 Christoph Bumiller <e0425955@student.tuwien.ac.at> r600: support polygon offset clamp state
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
9f61e43b4903c6cf0ac03a479ec9ed7b15fd6ccf 27-Sep-2011 Dave Airlie <airlied@redhat.com> gallium: move border color to be a color union

EXT_texture_integer also specifies border color should be a color
union, the values are used according to the texture sampler format.

(update docs)

Signed-off-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
2b47d2bce1f77cc450da500655a0ab5596c0585e 16-Sep-2011 Dave Airlie <airlied@redhat.com> r600g: fixup missing scaled r600 types.

I was still missing a couple of types on r600/r700 codepaths.

Fixes these up.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
b205f53c7fe1a1b63465ad8b55047d7b5490d4b6 10-Sep-2011 Dave Airlie <airlied@redhat.com> r600g: add missing formats to color buffer setup.

just playing with EXT_texture_integer, and this was first bug.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
c4519c3aec37f5cb3db8fe7e8ead13ae04e792b5 02-Sep-2011 Marek Olšák <maraeo@gmail.com> r600g: fix texture array filtering

This fixes piglit/fbo-generatemipmap-array.

It looks like SQ_TEX_SAMPLER_WORD0_0.TEX_ARRAY_OVERRIDE should be set
for array textures in order to disable filtering between slices,
which adds a dependency between sampler views and sampler states.

This patch reworks sampler state updates such that they are postponed until
draw time. TEX_ARRAY_OVERRIDE is updated according to bound sampler views.

This also consolidates setting the texture state between vertex and
pixel shaders.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
0d0285ba916d9e25871354441c09b0a8c7c9b844 30-Aug-2011 Christian König <deathsimple@vodafone.de> r600g: add support for R4A4 and A4R4 textures.

Sampling worked out of the box, but this make them work as surface as well.

Signed-off-by: Christian König <deathsimple@vodafone.de>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
8fb7f1a8a4cbab5365491b4b41e50ff3f03306c8 27-Aug-2011 Kai Wasserbäch <kai@dev.carbon-project.org> r600g: Fix include style

As explained in the thread starting at [0], the internal include style
should be »#include "path/to/header.h"« for non-system includes.

[0]
<http://news.gmane.org/find-root.php?message_id=%3c4E5802BE.6020206%40vmware.com%3e>

Signed-off-by: Kai Wasserbäch <kai@dev.carbon-project.org>
Signed-off-by: Brian Paul <brianp@vmware.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
565f39bdb2943bdb94ac3bdf67793c942ff45016 19-Aug-2011 Marek Olšák <maraeo@gmail.com> r600g: rename resource -> view in create_sampler_view

The sampler view is not a resource.
Also remove the unused desc variable.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
e330d90e919cebd64f720ccfb5dca94c2ded4e4c 18-Aug-2011 Marek Olšák <maraeo@gmail.com> r600g: fix a possible crash in r600_adjust_gprs
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
47dcfb8dab517e2c92af2f4813b0f5ad200b8b07 07-Aug-2011 Marek Olšák <maraeo@gmail.com> r600g: set read/write usage flags for each relocation

This takes advantage of the new GEM_WAIT ioctl when mapping buffers.

Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
e69dde5233a2fc6ad4c5483d079e1ea3a2123a59 23-Jul-2011 Marek Olšák <maraeo@gmail.com> r600g: remove dummy function r600_bo_offset

Always returned 0.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
dc1c0ca22a1c7fcaef90b787290144d8e3d77c33 29-Jul-2011 Alex Deucher <alexander.deucher@amd.com> r600g: fix up vs export handling

Certain attributes (position, psize, etc.) don't
count as params; they are handled separately by the hw.
However, the VS is required to export at least one param
and r600_shader_from_tgsi() takes care of adding a dummy
export if there is none. Make sure the VS param export
count in the SPI properly accounts for this.

Note: This is a candidate for the 7.11 branch.

Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
95ee961f77119826382cfbc617334aed986b72e5 28-Jul-2011 Vadim Girlin <vadimgirlin@gmail.com> r600g: fix vs export count

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

Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
89954723bfeef59d055d2332ff112f0204b48130 20-Jun-2011 Marek Olšák <maraeo@gmail.com> r600g: depth_buffer_float support on r600-r700
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
7e591111bf783d94ee6034287cde2f4c9214e810 09-Jul-2011 Henri Verbeet <hverbeet@gmail.com> r600g: Get rid of some superfluous braces.

Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
b3b946b0ab88c1d7edeab183d8ad5125ba223392 09-Jul-2011 Henri Verbeet <hverbeet@gmail.com> r600g: Store the chip class in r600_pipe_context.

Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
3fccc14b2fb35aef95bc04dee46e280a48679299 05-Jul-2011 Henri Verbeet <hverbeet@gmail.com> r600g: Get rid of the state_inlines headers.

Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
18cdb9c8abfb5d9f009fcb36ab788f48792207e4 05-Jul-2011 Henri Verbeet <hverbeet@gmail.com> r600g: Use the actual Evergreen functions to query format support on Evergreen.

Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
eafd331cf3b024001abd3f64861f41cd33a9acb2 24-Jun-2011 Vadim Girlin <vadimgirlin@gmail.com> r600g: implement fragment and vertex color clamp

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

Signed-off-by: Vadim Girlin <vadimgirlin@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
badf0335ef70223204fbae3e8fdef718cdb3ad19 19-Jun-2011 Marek Olšák <maraeo@gmail.com> r600g: implement seamless_cube_map on r600-r700

st/mesa guarantees that all bound sampler states have the same value
in seamless_cube_map.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
9bcce02f47f721bfb8917fd5639756fb3456aab5 19-Jun-2011 Marek Olšák <maraeo@gmail.com> r600g: remove some magic numbers
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
d9ca94836ee99c87841e24bfa23a6fab9464d04d 15-Jun-2011 Marek Olšák <maraeo@gmail.com> r600g: also set TILE_MODE of the base level
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
677a4406d20e0a2b6d92c34e9ff6716f31ba1382 15-Jun-2011 Marek Olšák <maraeo@gmail.com> r600g: force OpenGL's BASE_LEVEL behavior on r600-r700

This sets the base level as the zero level, which fixes
piglit/texturing/tex-miplevel-selection*.

The r600 hardware ignores the BASE_LEVEL field in some cases, so we can't
use it.

Evergreen might need this too.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
2743851c1a73305dd83e42b99edc49906d9c0a51 07-Jun-2011 Dave Airlie <airlied@redhat.com> r600g: move depth texture flushing out of line.

this needs a piglit run.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
e2529442e6cc208a4f62ff7dc00d5e2ba7c92624 08-Jun-2011 Mathias Fröhlich <Mathias.Froehlich@web.de> r600g: Fix typo.

Fix an obvious typo in the yet unused part of the shader setup.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
04554c7d3a3b28e8103e50ed54f1ac57c6c11017 08-Jun-2011 Dave Airlie <airlied@redhat.com> r600g: adjust vs/ps gprs on r600/r700 cards when needed.

Ideally we'd have a compiler and register spilling and all that
but this is good enough for now to avoid the gpu hang in piglit,

glsl-vs-vec4-indexing-temp-dst-in-nested-loop-combined

on r600/r700 cards.

based on r600c patch
Andre Maasikas <amaasikas@gmail.com>
r600c: bump sq gpr resources if a shader needs more than default

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
d56fe67c6255b1ace84c025c83439ab8cb3f91fe 09-Jun-2011 Marek Olšák <maraeo@gmail.com> r600g: remove unused variable
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
cf0f02e501eb2eb8edcf2c4f6db826b0cdd31c9b 03-Jun-2011 Dave Airlie <airlied@redhat.com> r600g: move resource setting to its own structures.

resource setting could be a fair bit more lightweight,
this patch just separates the resource structs from the standard
reg tracking structs in the driver, later patches will improve
the winsys.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
51d0892ee2daaa442a48abff2329e1485dd337e8 03-Jun-2011 Dave Airlie <airlied@redhat.com> r600g: sampler and texture state doesn't need a range/block.

These are handled separately in the winsys, so don't need the calculations
done at this point. this manifested as a crash in point-sprite,

Thanks to XoD on #radeon for pointing it out.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
573758fd094431c8b3220786cea28dfdb4cfad1c 02-Jun-2011 Dave Airlie <airlied@redhat.com> r600g: decrease CPU time on set buffer resources

This splits the initialisation and the setting of values in the resource
buffers. We only should end up initialising once and updateing with new values
when needed.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
7f6672f6a737bc1c47e36c9567bd6d908855ce4d 02-Jun-2011 Dave Airlie <airlied@redhat.com> r600g: prepare for passing ctx into _r600_pipe_state_add_reg

This moves the functions down the file, and also adds a ctx parameter.

This is precursor patch just moving stuff around and getting it ready.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
3c5e74186244f2d77cc711d2b487283459ed06ad 21-May-2011 Christian König <deathsimple@vodafone.de> r600g: fix "Fixed-Point Data Conversions"

According to OpenGL 3.1 chapter 2.1.5 the representation without zero
should only be used for vertex attribute values, but not for textures
or frame-buffers.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
b9e8ea6a2717422ea71887beda093fe1dfbd1200 09-May-2011 Jerome Glisse <jglisse@redhat.com> r600g: anisotropic filtering support for evergreen hw

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
ad904cdf98be576ba652fe1c16ab722d52365782 06-May-2011 Carl-Philip Haensch <carli@carli-laptop.(none)> r600g: add support for anisotropic filtering
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
5939bc03bc15b9b1131463ffad04a7b2d987074d 06-May-2011 Alex Deucher <alexdeucher@gmail.com> r600g: fix up the rules for enabling SOURCE_FORMAT(EXPORT_NORM)

Setting SOURCE_FORMAT to EXPORT_NORM is an optimization.
Leaving SOURCE_FORMAT at 0 will work in all cases, but is less
efficient. The conditions for the setting the EXPORT_NORM
optimization are as follows:

R600/RV6xx:
BLEND_CLAMP is enabled
BLEND_FLOAT32 is disabled
11-bit or smaller UNORM/SNORM/SRGB

R7xx/evergreen:
11-bit or smaller UNORM/SNORM/SRGB
16-bit or smaller FLOAT

Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
f60235e73a5260f92630ce472e06d8c5c00414fb 05-May-2011 Henri Verbeet <hverbeet@gmail.com> r600g: Match alpha ref precision to color format precision.

This fixes piglit fbo-alphatest-formats on Evergreen.

Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
929b3d82334e217641c3f39e7914a90dadc6e6b2 02-May-2011 Marek Olšák <maraeo@gmail.com> r600g: remove some more FIXME comments
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
0d5ceb5891185600e73e10db9832207fdbaaab80 02-May-2011 Marek Olšák <maraeo@gmail.com> r600g: remove some FIXME comments

All texture LOD tests pass.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
72c6a748b9ffdaa893f82faf911f22a241a5e4f5 02-May-2011 Marek Olšák <maraeo@gmail.com> Revert "r600g: truncate point sampled texture coordinates"

This reverts commit 1dc204d145dc8c0b19473a7814c201a8954b6274.

MC_COORD_TRUNCATE is for MPEG and produces quite an interesting behavior
on regular textures. Anyway that commit broke filtering in demos/cubemap.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
d7577ae3a6d6e174ab36d244f6bd4dedd63c3d1d 25-Apr-2011 Henri Verbeet <hverbeet@gmail.com> r600g: Cleanup the big endian support a bit.

In particular, make sure the code is at least compiled on little endian
systems.

Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
6067a2a67f9a7aab2aee051469bea8af03747a95 20-Apr-2011 Fredrik Höglund <fredrik@kde.org> r600g: don't flush the dest caches on every draw

Keep track of when the caches are dirty, and only flush them when
the framebuffer state is set and when the context is flushed.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
843dfe3206c4f397c7911b748373dde5540392a4 19-Apr-2011 Cédric Cano <ccano@interfaceconcept.com> r600g: add big endian support for r6xx/r7xx

Signed-off-by: Cedric Cano <ccano@interfaceconcept.com>
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
66866d642fe8f8fba141d50a81b08793c3bd63e8 19-Apr-2011 Dave Airlie <airlied@redhat.com> r600g: add cb support for snorm formats.

Check for signed type and enable SNORM.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
3e15fa86d7bb50ae1b97f8962d2f17bfe72d5263 07-Apr-2011 Henri Verbeet <hverbeet@gmail.com> r600g: Use symbolic names for NUMBER_TYPE.

Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
3f8455d07b129062885f58237516ae0d1aa339ea 06-Apr-2011 Julian Adams <joolsa@gmail.com> r600g: Fix non-independent blend state.

This fixes piglit fbo/fbo-drawbuffers-blend-add.

Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
d04ab396a54d29948363c3353efa5aaa888076a3 29-Mar-2011 Fredrik Höglund <fredrik@kde.org> r600g: implement texture barrier
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
3e30148900f27e29d4ea0faa5b0513f8d944fab0 14-Mar-2011 Alex Deucher <alexdeucher@gmail.com> r600g: don't set per-MRT blend bits on R600

It doesn't support them. Also, we shouldn't be
emitting CB_BLENDx_CONTROL on R600 as the regs don't
exist there, but I'm not sure of the best way to deal
with this in the current r600 winsys.

Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
1a8dc1539b59ab61a6f81a4de32b69978dded7ff 14-Mar-2011 Henri Verbeet <hverbeet@gmail.com> r600g: Properly update MULTIWRITE_ENABLE in r600_pipe_shader_ps().

This sort of worked because blend state setup cleared MULTIWRITE_ENABLE again,
but that's not something we want to depend on.

Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
ab1a2e454eaeb798b7c4b782877f58266ebab3a1 14-Mar-2011 Henri Verbeet <hverbeet@gmail.com> r600g: Fix the DB_SHADER_CONTROL mask in create_ds_state().

Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
a2ef38368b638caba26418a68c157d52b6bcf797 14-Mar-2011 Henri Verbeet <hverbeet@gmail.com> r600g: Move fetch shader register setup to r600_state.c / evergreen_state.c.

Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
f262ba26f045699f0aa871b6be966714e9dd6740 14-Mar-2011 Henri Verbeet <hverbeet@gmail.com> r600g: Move r600_pipe_shader_ps() to r600_state.c.

Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
c0ca43e507dce11bd4a78bc08a8e92997cd385bf 14-Mar-2011 Henri Verbeet <hverbeet@gmail.com> r600g: Move r600_pipe_shader_vs() to r600_state.c.

The idea behind this is that anything touching registers should be in
r600_state.c or evergreen_state.c. This is also consistent with
evergreen_pipe_shader_vs().

Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
7339915a4bfb563c5986d139e83aa7664f346e89 12-Mar-2011 Carl-Philip Hänsch <s3734770@mail.zih.tu-dresden.de> r600g: Fix VS sampler view offsets for r600/r700.

077c448d184799e0d9ec962013ec784c6a5c1807 missed this.

Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
929be6eb95c33d5885a89b36dbc82db64c1344fe 01-Mar-2011 Dave Airlie <airlied@redhat.com> r600g: start using drm minor version to enable things.

If the drm minor version is > 9 (i.e. whats in drm-next),
we enable s3tc + texture tiling by default now.

this changes R600_FORCE_TILING to R600_TILING which can
be set to false to disable tiling on working drm.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
1dc204d145dc8c0b19473a7814c201a8954b6274 01-Mar-2011 Alex Deucher <alexdeucher@gmail.com> r600g: truncate point sampled texture coordinates

By default the hardware rounds texcoords. However,
for point sampled textures, the expected behavior is
to truncate. When we have point sampled textures,
set the truncate bit in the sampler.

Should fix:
https://bugs.freedesktop.org/show_bug.cgi?id=25871

Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
69d969e8fafd3357a140072f0f4bbf0f28db9769 17-Feb-2011 Dave Airlie <airlied@redhat.com> r600g: EXT_texture_array support.

This adds EXT_texture_array support to r600g, it passes the piglit
array-texture test but I suspect may not be complete.

It currently requires a kernel patch to fix the CS checker to allow
these, so you need to use R600_ARRAY_TEXTURE=true for now
to enable them.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
231bf886dae9c7df0ae3e16acee904024a08824f 17-Feb-2011 Dave Airlie <airlied@redhat.com> r600g: get s3tc working on cards with crappy 64/128 bit types.

Some cards don't appear to work correctly with the UNORM type,
so switch to the integer type, however since gallium has no
integer types yet from what I can see we need to do a hack to
workaround it for the blitter.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
4b81c5f6e1ad73e344b1f1b5d5844297ee7b985a 15-Feb-2011 Dave Airlie <airlied@redhat.com> r600g: fix regression in r6/7xx since mipmap rework

I typod this when copy-pasting.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
a661dacf143d7187abc2360ac945db75296f7e23 15-Feb-2011 Dave Airlie <airlied@redhat.com> r600g: fix miptree calculations

the miptree setup and pitch storing didn't work so well for block
based things like compressed textures. The CB takes blocks, where
the texture sampler takes pixels, and transfers need bytes,

So now we store blocks/bytes and translate to pixels in the sampler.

This is necessary for s3tc to work properly.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
ea7a548d07ddc69c226a425af0f88f818203d6ee 14-Feb-2011 Dave Airlie <airlied@redhat.com> r600g: drop tiled flag

we can work this out from the array_mode and it makes more sense
to do that.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
588fa884d212eba5ffbc69fda75db37d7c77214c 09-Feb-2011 Marek Olšák <maraeo@gmail.com> gallium: notify drivers about possible changes in user buffer contents

Also implement the redefine_user_buffer hook in the drivers.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
9d85aba0e392250ecea0377f9aa9691bd02622e0 11-Feb-2011 Dave Airlie <airlied@redhat.com> r600g: drop two unused | 0 that are actually in word4 anyways.

these were NOPs anyways.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
0d851f6e9c6046052ddce3860e625537832530a0 10-Feb-2011 Dave Airlie <airlied@redhat.com> r600g: handle 16/32 u/s norm formats properly

add support for the 32-bit types, also fixup the
export setting to handle types with channels > 11 bits properly

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
077c448d184799e0d9ec962013ec784c6a5c1807 07-Feb-2011 Henri Verbeet <hverbeet@gmail.com> r600g: Add support for relative addressing on constant buffers.

Relative addressing of constant buffers can't work properly through the
kcache, since you can only address within the currently locked kcache window.
Instead, this patch binds the constant buffer as a shader resource, and then
explicitly fetches the constant using a vertex fetch with fetch type
VTX_FETCH_NO_INDEX_OFFSET from the shader. There's probably still some room
for improvement, doing the fetch right before the instruction that needs the
value may not be quite optimal for example.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
5c59eebfae55240a2308c02b0a6ad971c9b83304 07-Feb-2011 Henri Verbeet <hverbeet@gmail.com> r600g: Generalize the pipe_add_vertex_attrib() functions.

This allows them to be used for VS or PS buffer resources as well.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
780c183b8fdf2d301e1eea7f0b83cd96fb6cbf84 06-Feb-2011 Dave Airlie <airlied@redhat.com> r600g: use surface format not underlying texture format

This uses the surface format to set the CB up not the underlying texture
format, since these can and do differ.

Fixes piglit fbo-srgb.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
151a945d38d8c9231799b00364c5b85c8a4b2279 04-Feb-2011 Dave Airlie <airlied@redhat.com> r600g: get offset for correct texture when setting up CB.

this fixes the mipmap tests with tiling forced on.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
3e9bc43fbafdd497d475eaffe0deec81b446d122 04-Feb-2011 Dave Airlie <airlied@redhat.com> r600g: add a flag to just create flushed texture without flushing.

This just adds a flag to create the texture without doing any
flushing to it. Flushing occurs in the draw function. This avoids
unnecessary flushes when we end up rebinding a CB/DB/texture due
to the blitter just restoring state.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
b13b7b86b2e1165b24a2df20cb67f9f3baa17b13 03-Feb-2011 Dave Airlie <airlied@redhat.com> r600g: rework dirty / depth texture tracking.

this adds a flag to keep track of whether the depth texture structure
is the flushed texture or not, so we can avoid doing flushes when
we do a hw rendering from one to the other.

it also renames flushed to dirty_db which tracks if the DB copy
has been dirtied by being bound to the hw.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
11bc8991e94e2fa6d461193a6aff47f8f94b7a47 01-Feb-2011 Dave Airlie <airlied@redhat.com> r600g: just change tile type when buffer is set to depth.

Not 100% sure on this one, but this is how it should work,
the question is whether it will uncover other bugs elsewhere.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
aee5f1e40ca27149a6226187e855125821d96971 01-Feb-2011 Dave Airlie <airlied@redhat.com> r600: only decompress depth when its tile type is wrong.

If the tile type for the buffer is 1 then its been bound to the
DB at some point, we need to decompress it, otherwise its only
been bound as texture/cb so don't do anything.

This fixes 5 piglit tests here on r600g.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
d171ae086bae37279251a1d6f32e16e333cfc154 01-Feb-2011 Henri Verbeet <hverbeet@gmail.com> r600g: Actually use the info from the flushed depth texture when creating a sampler view on a depth texture.

R600/R700 was using incorrect tiling information from the (compressed) depth
buffer. Evergreen worked anyway because tiling doesn't work.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
15730a8207374936e354d945730070cb29c9547c 29-Jan-2011 Marek Olšák <maraeo@gmail.com> r600g: consolidate set_constant_buffer functions
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
73fb2b7c9074c8878e8ff617ad6d6a21b93b66f2 29-Jan-2011 Marek Olšák <maraeo@gmail.com> r600g: consolidate vertex_buffer_update functions
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
2d7738eb2bee41656953d1173926f546c6711bad 28-Jan-2011 Marek Olšák <maraeo@gmail.com> r600g: consolidate draw_vbo functions (v2)

Added a conditional to spi_update per Dave's comment.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
5cefe1eddd4854490aebdf4f138ffb07aa59073c 28-Jan-2011 Marek Olšák <maraeo@gmail.com> r600g: make r600_drawl inherit pipe_draw_info
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
02f8f134643f631364ca621fe0b6d6b72449e00c 28-Jan-2011 Marek Olšák <maraeo@gmail.com> r600g: add back u_upload_mgr integration

I can't see a performance difference with this code, which means all
the driver-specific code removed in this commit was unnecessary.

Now we use u_upload_mgr in a slightly different way than we did before it got
dropped. I am not restoring the original code "as is" due to latest
u_upload_mgr changes that r300g performance benefits from.

This also fixes:
- piglit/fp-kil
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
5a2abf7a854cef3ae635f74dd0e580d603a92a21 15-Jan-2011 Henri Verbeet <hverbeet@gmail.com> r600g: Fix some register value name typos.

SFR -> SRF.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
6d9ca78ef7bf831b9b63f4bda68623cbae627508 07-Jan-2011 Dave Airlie <airlied@redhat.com> r600g: allow constant buffers to be user buffers.

This provides an upload facility for the constant buffers since Marek's
constants in user buffers changes.

gears at least work on my evergreen now.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
ca8b4ca4788545a3f85efd7904f1a07b95f00c86 22-Dec-2010 Henri Verbeet <hverbeet@gmail.com> r600g: Remove the unused "pframebuffer" field from r600_pipe_context.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
fa62cf7450595b3d99259b5a212df301ca711d4b 21-Dec-2010 Jerome Glisse <jglisse@redhat.com> r600g: avoid segfault

Candidates 7.10

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
abe9ffc25c8d65b48ae02cdc8445b212b9f61632 20-Dec-2010 Jerome Glisse <jglisse@redhat.com> r600g: properly unset vertex buffer

Fix bug http://bugs.freedesktop.org/show_bug.cgi?id=32455

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
54773415f407678eb9728ac347cc8302e2d76c74 14-Dec-2010 Jerome Glisse <jglisse@redhat.com> r600g: fix segfault when translating vertex buffer

Note the support for non float vertex draw likely regressed need to
find what we want to do there.

candidates for 7.10 branches

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
7055068eeae7f64166cca513282829d5a3e9b9d3 08-Dec-2010 Jerome Glisse <jglisse@redhat.com> r600g: specialized upload manager

Allow important performance increase by doing hw specific implementation
of the upload manager helper. Drop the range flushing that is not hit with
this code (and wasn't with previous neither). Performance improvement are
mostly visible on slow CPU.

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
69251fc4cd5f71be403e08398bc43d19052a640d 07-Dec-2010 Jerome Glisse <jglisse@redhat.com> r600g: remove dead code

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
afc56b1861c1dae4137493af4c0e6dacc6ee41f9 06-Dec-2010 Jerome Glisse <jglisse@redhat.com> r600g: avoid useless shader rebuild at draw call

Avoid rebuilding constant shader state at each draw call,
factor out spi update that might change at each draw call.
Best would be to update spi only when revealent states
change (likely only flat shading & sprite point).

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
fa86fc564aea4e40c89f6fc889e6a5bf817634b3 04-Dec-2010 Jerome Glisse <jglisse@redhat.com> r600g: build fetch shader from vertex elements

Vertex elements change are less frequent than draw call, those to
avoid rebuilding fetch shader to often build the fetch shader along
vertex elements. This also allow to move vertex buffer setup out
of draw path and make update to it less frequent.

Shader update can still be improved to only update SPI regs (based
on some rasterizer state like flat shading or point sprite ...).

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
0b841b0349d7aca218eac4e9d9b7b1406ad71944 03-Dec-2010 Jerome Glisse <jglisse@redhat.com> r600g: update polygon offset only when rasterizer or zbuffer change

Aim is to build as little state as possible in draw functions.

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
4c7001462607e6e99e474d6271dd481d3f8f201c 02-Dec-2010 Roland Scheidegger <sroland@vmware.com> gallium: support for array textures and related changes

resources have a array_size parameter now.
get_tex_surface and tex_surface_destroy have been renamed to create_surface
and surface_destroy and moved to context, similar to sampler views (and
create_surface now uses a template just like create_sampler_view). Surfaces
now really should only be used for rendering. In particular they shouldn't be
used as some kind of 2d abstraction for sharing a texture. offset/layout fields
don't make sense any longer and have been removed, width/height should go too.
surfaces and sampler views now specify a layer range (for texture resources),
layer is either array slice, depth slice or cube face.
pipe_subresource is gone array slices (or cube faces) are now treated the same
as depth slices in transfers etc. (that is, they use the z coord of the
respective functions).

Squashed commit of the following:

commit a45bd509014743d21a532194d7b658a1aeb00cb7
Merge: 1aeca28 32e1e59
Author: Roland Scheidegger <sroland@vmware.com>
Date: Thu Dec 2 04:32:06 2010 +0100

Merge remote branch 'origin/master' into gallium-array-textures

Conflicts:
src/gallium/drivers/i915/i915_resource_texture.c
src/gallium/drivers/i915/i915_state_emit.c
src/gallium/drivers/i915/i915_surface.c

commit 1aeca287a827f29206078fa1204715a477072c08
Merge: 912f042 6f7c8c3
Author: Roland Scheidegger <sroland@vmware.com>
Date: Thu Dec 2 00:37:11 2010 +0100

Merge remote branch 'origin/master' into gallium-array-textures

Conflicts:
src/gallium/state_trackers/vega/api_filters.c
src/gallium/state_trackers/vega/api_images.c
src/gallium/state_trackers/vega/mask.c
src/gallium/state_trackers/vega/paint.c
src/gallium/state_trackers/vega/renderer.c
src/gallium/state_trackers/vega/st_inlines.h
src/gallium/state_trackers/vega/vg_context.c
src/gallium/state_trackers/vega/vg_manager.c

commit 912f042e1d439de17b36be9a740358c876fcd144
Author: Roland Scheidegger <sroland@vmware.com>
Date: Wed Dec 1 03:01:55 2010 +0100

gallium: even more compile fixes after merge

commit 6fc95a58866d2a291def333608ba9c10c3f07e82
Author: Roland Scheidegger <sroland@vmware.com>
Date: Wed Dec 1 00:22:26 2010 +0100

gallium: some fixes after merge

commit a8d5ffaeb5397ffaa12fb422e4e7efdf0494c3e2
Merge: f7a202f 2da02e7
Author: Roland Scheidegger <sroland@vmware.com>
Date: Tue Nov 30 23:41:26 2010 +0100

Merge remote branch 'origin/master' into gallium-array-textures

Conflicts:
src/gallium/drivers/i915/i915_state_emit.c
src/gallium/state_trackers/vega/api_images.c
src/gallium/state_trackers/vega/vg_context.c

commit f7a202fde2aea2ec78ef58830f945a5e214e56ab
Author: Roland Scheidegger <sroland@vmware.com>
Date: Wed Nov 24 19:19:32 2010 +0100

gallium: even more fixes/cleanups after merge

commit 6895a7f969ed7f9fa8ceb788810df8dbcf04c4c9
Author: Roland Scheidegger <sroland@vmware.com>
Date: Wed Nov 24 03:07:36 2010 +0100

gallium: more compile fixes after merge

commit af0501a5103b9756bc4d79167bd81051ad6e8670
Author: Roland Scheidegger <sroland@vmware.com>
Date: Tue Nov 23 19:24:45 2010 +0100

gallium: lots of compile fixes after merge

commit 0332003c2feb60f2a20e9a40368180c4ecd33e6b
Merge: 26c6346 b6b91fa
Author: Roland Scheidegger <sroland@vmware.com>
Date: Tue Nov 23 17:02:26 2010 +0100

Merge remote branch 'origin/master' into gallium-array-textures

Conflicts:
src/gallium/auxiliary/gallivm/lp_bld_sample.c
src/gallium/auxiliary/util/u_blit.c
src/gallium/auxiliary/util/u_blitter.c
src/gallium/auxiliary/util/u_inlines.h
src/gallium/auxiliary/util/u_surface.c
src/gallium/auxiliary/util/u_surfaces.c
src/gallium/docs/source/context.rst
src/gallium/drivers/llvmpipe/lp_rast.c
src/gallium/drivers/nv50/nv50_state_validate.c
src/gallium/drivers/nvfx/nv04_surface_2d.c
src/gallium/drivers/nvfx/nv04_surface_2d.h
src/gallium/drivers/nvfx/nvfx_buffer.c
src/gallium/drivers/nvfx/nvfx_miptree.c
src/gallium/drivers/nvfx/nvfx_resource.c
src/gallium/drivers/nvfx/nvfx_resource.h
src/gallium/drivers/nvfx/nvfx_state_fb.c
src/gallium/drivers/nvfx/nvfx_surface.c
src/gallium/drivers/nvfx/nvfx_transfer.c
src/gallium/drivers/r300/r300_state_derived.c
src/gallium/drivers/r300/r300_texture.c
src/gallium/drivers/r600/r600_blit.c
src/gallium/drivers/r600/r600_buffer.c
src/gallium/drivers/r600/r600_context.h
src/gallium/drivers/r600/r600_screen.c
src/gallium/drivers/r600/r600_screen.h
src/gallium/drivers/r600/r600_state.c
src/gallium/drivers/r600/r600_texture.c
src/gallium/include/pipe/p_defines.h
src/gallium/state_trackers/egl/common/egl_g3d_api.c
src/gallium/state_trackers/glx/xlib/xm_st.c
src/gallium/targets/libgl-gdi/gdi_softpipe_winsys.c
src/gallium/targets/libgl-gdi/libgl_gdi.c
src/gallium/tests/graw/tri.c
src/mesa/state_tracker/st_cb_blit.c
src/mesa/state_tracker/st_cb_readpixels.c

commit 26c6346b385929fba94775f33838d0cceaaf1127
Author: Roland Scheidegger <sroland@vmware.com>
Date: Mon Aug 2 19:37:21 2010 +0200

fix more merge breakage

commit b30d87c6025eefe7f6979ffa8e369bbe755d5c1d
Merge: 9461bf3 1f1928d
Author: Roland Scheidegger <sroland@vmware.com>
Date: Mon Aug 2 19:15:38 2010 +0200

Merge remote branch 'origin/master' into gallium-array-textures

Conflicts:
src/gallium/drivers/llvmpipe/lp_rast.c
src/gallium/drivers/llvmpipe/lp_rast_priv.h
src/gallium/drivers/r300/r300_blit.c
src/gallium/drivers/r300/r300_screen_buffer.c
src/gallium/drivers/r300/r300_state_derived.c
src/gallium/drivers/r300/r300_texture.c
src/gallium/drivers/r300/r300_texture.h
src/gallium/drivers/r300/r300_transfer.c
src/gallium/drivers/r600/r600_screen.c
src/gallium/drivers/r600/r600_state.c
src/gallium/drivers/r600/r600_texture.c
src/gallium/drivers/r600/r600_texture.h
src/gallium/state_trackers/dri/common/dri1_helper.c
src/gallium/state_trackers/dri/sw/drisw.c
src/gallium/state_trackers/xorg/xorg_exa.c

commit 9461bf3cfb647d2301364ae29fc3084fff52862a
Merge: 17492d7 0eaccb3
Author: Roland Scheidegger <sroland@vmware.com>
Date: Thu Jul 15 20:13:45 2010 +0200

Merge commit 'origin/master' into gallium-array-textures

Conflicts:
src/gallium/auxiliary/util/u_blitter.c
src/gallium/drivers/llvmpipe/lp_rast.c
src/gallium/drivers/llvmpipe/lp_surface.c
src/gallium/drivers/r300/r300_render.c
src/gallium/drivers/r300/r300_state.c
src/gallium/drivers/r300/r300_texture.c
src/gallium/drivers/r300/r300_transfer.c
src/gallium/tests/trivial/quad-tex.c

commit 17492d705e7b7f607b71db045c3bf344cb6842b3
Author: Roland Scheidegger <sroland@vmware.com>
Date: Fri Jun 18 10:58:08 2010 +0100

gallium: rename element_offset/width fields in views to first/last_element

This is much more consistent with the other fields used there
(first/last level, first/last layer).
Actually thinking about removing the ugly union/structs again and
rename first/last_layer to something even more generic which could also
be used for buffers (like first/last_member) without inducing headaches.

commit 1b717a289299f942de834dcccafbab91361e20ab
Author: Roland Scheidegger <sroland@vmware.com>
Date: Thu Jun 17 14:46:09 2010 +0100

gallium: remove PIPE_SURFACE_LAYOUT_LINEAR definition

This was only used by the layout field of pipe_surface, but this
driver internal stuff is gone so there's no need for this driver independent
layout definition neither.

commit 10cb644b31b3ef47e6c7b55e514ad24bb891fac4
Merge: 5691db9 c85971d
Author: Roland Scheidegger <sroland@vmware.com>
Date: Thu Jun 17 12:20:41 2010 +0100

Merge commit 'origin/master' into gallium-array-textures

Conflicts:
src/gallium/docs/source/glossary.rst
src/gallium/tests/graw/fs-test.c
src/gallium/tests/graw/gs-test.c

commit 5691db960ca3d525ce7d6c32d9c7a28f5e907f3b
Author: Roland Scheidegger <sroland@vmware.com>
Date: Thu Jun 17 11:29:03 2010 +0100

st/wgl: fix interface changes bugs

commit 2303ec32143d363b46e59e4b7c91b0ebd34a16b2
Author: Roland Scheidegger <sroland@vmware.com>
Date: Wed Jun 16 19:42:32 2010 +0100

gallium: adapt code to interface changes...

commit dcae4f586f0d0885b72674a355e5d56d47afe77d
Author: Roland Scheidegger <sroland@vmware.com>
Date: Wed Jun 16 19:42:05 2010 +0100

gallium: separate depth0 and array_size in the resource itself.

These fields are still mutually exclusive (since no 3d array textures exist)
but it ultimately seemed to error-prone to adapt all code accept the new
meaning of depth0 (drivers stick that into hardware regs, calculate mipmap
sizes etc.). And it isn't really cleaner anyway.
So, array textures will have depth0 of 1, but instead use array_size,
3D textures will continue to use depth0 (and have array_size of 1). Cube
maps also will use array_size to indicate their 6 faces, but since all drivers
should just be fine by inferring this themselves from the fact it's a cube map
as they always used to nothing should break.

commit 621737a638d187d208712250fc19a91978fdea6b
Author: Roland Scheidegger <sroland@vmware.com>
Date: Wed Jun 16 17:47:38 2010 +0100

gallium: adapt code to interface changes

There are still usages of pipe_surface where pipe_resource should be used,
which should eventually be fixed.

commit 2d17f5efe166b2c3d51957c76294165ab30b8ae2
Author: Roland Scheidegger <sroland@vmware.com>
Date: Wed Jun 16 17:46:14 2010 +0100

gallium: more interface changes

In particular to enable usage of buffers in views, and ability to use a
different pipe_format in pipe_surface.
Get rid of layout and offset parameter in pipe_surface - the former was
not used in any (public) code anyway, and the latter should either be computed
on-demand or driver can use subclass of pipe_surface.
Also make create_surface() use a template to be more consistent with
other functions.

commit 71f885ee16aa5cf2742c44bfaf0dc5b8734b9901
Merge: 3232d11 8ad410d
Author: Roland Scheidegger <sroland@vmware.com>
Date: Mon Jun 14 14:19:51 2010 +0100

Merge commit 'origin/master' into gallium-array-textures

Conflicts:
src/gallium/auxiliary/util/u_box.h
src/gallium/drivers/nv50/nv50_surface.c
src/gallium/drivers/nvfx/nvfx_surface.c
src/gallium/drivers/r300/r300_blit.c
src/gallium/drivers/r300/r300_texture.c
src/gallium/drivers/r300/r300_transfer.c
src/gallium/drivers/r600/r600_blit.c
src/gallium/drivers/r600/r600_screen.h
src/gallium/include/pipe/p_state.h

commit 3232d11fe3ebf7686286013c357b404714853984
Author: Roland Scheidegger <sroland@vmware.com>
Date: Mon Jun 14 11:40:04 2010 +0100

mesa/st: adapt to interface changes

still need to fix pipe_surface sharing
(as that is now per-context).
Also broken is depth0 handling - half the code assumes
this is also used for array textures (and hence by extension
of that cube maps would have depth 6), half the code does not...

commit f433b7f7f552720e5eade0b4078db94590ee85e1
Author: Roland Scheidegger <sroland@vmware.com>
Date: Mon Jun 14 11:35:52 2010 +0100

gallium: fix a couple of bugs in interface chnage fixes

commit 818366b28ea18f514dc791646248ce6f08d9bbcf
Author: Roland Scheidegger <sroland@vmware.com>
Date: Sat Jun 12 02:42:11 2010 +0200

targets: adapt to interface changes

Yes even that needs adjustments...

commit 66c511ab1682c9918e0200902039247793acb41e
Author: Roland Scheidegger <sroland@vmware.com>
Date: Sat Jun 12 02:41:13 2010 +0200

tests: adapt to interface changes

Everything needs to be fixed :-(.

commit 6b494635d9dbdaa7605bc87b1ebf682b138c5808
Author: Roland Scheidegger <sroland@vmware.com>
Date: Sat Jun 12 02:39:50 2010 +0200

st: adapt non-rendering state trackers to interface changes

might not be quite right in all places, but they really don't want
to use pipe_surface.

commit 00c4289a35d86e4fe85919ec32aa9f5ffe69d16d
Author: Roland Scheidegger <sroland@vmware.com>
Date: Sat Jun 12 02:38:48 2010 +0200

winsys: adapt to interface changes

commit 39d858554dc9ed5dbc795626fec3ef9deae552a0
Author: Roland Scheidegger <sroland@vmware.com>
Date: Sat Jun 12 02:26:54 2010 +0200

st/python: adapt to interface changes

don't think that will work, sorry.

commit 6e9336bc49b32139cec4e683857d0958000e15e3
Author: Roland Scheidegger <sroland@vmware.com>
Date: Sat Jun 12 02:26:07 2010 +0200

st/vega: adapt to interface changes

commit e07f2ae9aaf8842757d5d50865f76f8276245e11
Author: Roland Scheidegger <sroland@vmware.com>
Date: Sat Jun 12 02:25:56 2010 +0200

st/xorg: adapt to interface changes

commit 05531c10a74a4358103e30d3b38a5eceb25c947f
Author: Roland Scheidegger <sroland@vmware.com>
Date: Sat Jun 12 02:24:53 2010 +0200

nv50: adapt to interface changes

commit 97704f388d7042121c6d496ba8c003afa3ea2bf3
Author: Roland Scheidegger <sroland@vmware.com>
Date: Sat Jun 12 02:24:45 2010 +0200

nvfx: adapt to interface changes

commit a8a9c93d703af6e8f5c12e1cea9ec665add1abe0
Author: Roland Scheidegger <sroland@vmware.com>
Date: Sat Jun 12 02:24:01 2010 +0200

i965g: adapt to interface changes

commit 0dde209589872d20cc34ed0b237e3ed7ae0e2de3
Author: Roland Scheidegger <sroland@vmware.com>
Date: Sat Jun 12 02:22:38 2010 +0200

i915g: adapt to interface changes

commit 5cac9beede69d12f5807ee1a247a4c864652799e
Author: Roland Scheidegger <sroland@vmware.com>
Date: Sat Jun 12 02:20:58 2010 +0200

svga: adapt to interface changes

resource_copy_region still looking fishy.
Was not very suited to unified zslice/face approach...

commit 08b5a6af4b963a3e4c75fc336bf6c0772dce5150
Author: Roland Scheidegger <sroland@vmware.com>
Date: Sat Jun 12 02:20:01 2010 +0200

rbug: adapt to interface changes

Not sure if that won't need changes elsewhere?

commit c9fd24b1f586bcef2e0a6e76b68e40fca3408964
Author: Roland Scheidegger <sroland@vmware.com>
Date: Sat Jun 12 02:19:31 2010 +0200

trace: adapt to interface changes

commit ed84e010afc5635a1a47390b32247a266f65b8d1
Author: Roland Scheidegger <sroland@vmware.com>
Date: Sat Jun 12 02:19:21 2010 +0200

failover: adapt to interface changes

commit a1d4b4a293da933276908e3393435ec4b43cf201
Author: Roland Scheidegger <sroland@vmware.com>
Date: Sat Jun 12 02:19:12 2010 +0200

identity: adapt to interface changes

commit a8dd73e2c56c7d95ffcf174408f38f4f35fd2f4c
Author: Roland Scheidegger <sroland@vmware.com>
Date: Sat Jun 12 02:18:55 2010 +0200

softpipe: adapt to interface changes

commit a886085893e461e8473978e8206ec2312b7077ff
Author: Roland Scheidegger <sroland@vmware.com>
Date: Sat Jun 12 02:18:44 2010 +0200

llvmpipe: adapt to interface changes

commit 70523f6d567d8b7cfda682157556370fd3c43460
Author: Roland Scheidegger <sroland@vmware.com>
Date: Sat Jun 12 02:18:14 2010 +0200

r600g: adapt to interface changes

commit 3f4bc72bd80994865eb9f6b8dfd11e2b97060d19
Author: Roland Scheidegger <sroland@vmware.com>
Date: Sat Jun 12 02:18:05 2010 +0200

r300g: adapt to interface changes

commit 5d353b55ee14db0ac0515b5a3cf9389430832c19
Author: Roland Scheidegger <sroland@vmware.com>
Date: Sat Jun 12 02:17:37 2010 +0200

cell: adapt to interface changes

not even compile tested

commit cf5d03601322c2dcb12d7a9c2f1745e2b2a35eb4
Author: Roland Scheidegger <sroland@vmware.com>
Date: Sat Jun 12 02:14:59 2010 +0200

util: adapt to interface changes

amazing how much code changes just due to some subtle interface changes?

commit dc98d713c6937c0e177fc2caf23020402cc7ea7b
Author: Roland Scheidegger <sroland@vmware.com>
Date: Sat Jun 12 02:12:40 2010 +0200

gallium: more interface fail, docs

this also changes flush_frontbuffer to use a pipe_resource instead of
a pipe_surface - pipe_surface is not meant to be (or at least no longer)
an abstraction for standalone 2d images which get passed around.
(This has also implications for the non-rendering state-trackers.)

commit 08436d27ddd59857c22827c609b692aa0c407b7b
Author: Roland Scheidegger <sroland@vmware.com>
Date: Thu Jun 10 17:42:52 2010 +0200

gallium: fix array texture interface changes bugs, docs

commit 4a4d927609b62b4d7fb9dffa35158afe282f277b
Author: Roland Scheidegger <sroland@vmware.com>
Date: Thu Jun 3 22:02:44 2010 +0200

gallium: interface changes for array textures and related cleanups

This patch introduces array textures to gallium (note they are not immediately
usable without the associated changes to the shader side).
Also, this abandons pipe_subresource in favor of using level and layer
parameters since the distinction between several faces (which was part of
pipe_subresource for cube textures) and several z slices (which were not part
of pipe_subresource but instead part of pipe_box where appropriate for 3d
textures) is gone at the resource level.
Textures, be it array, cube, or 3d, now use a "unified" set of parameters,
there is no distinction between array members, cube faces, or 3d zslices.
This is unlike d3d10, whose subresource index includes layer information for
array textures, but which considers all z slices of a 3d texture to be part
of the same subresource.
In contrast to d3d10, OpenGL though reuses old 2d and 3d function entry points
for 1d and 2d array textures, respectively, which also implies that for instance
it is possible to specify all layers of a 2d array texture at once (note that
this is not possible for cube maps, which use the 2d entry points, although
it is possible for cube map arrays, which aren't supported yet in gallium).
This should possibly make drivers a bit simpler, and also get rid of mutually
exclusive parameters in some functions (as z and face were exclusive), one
potential downside would be that 3d array textures could not easily be supported
without reverting this, but those are nowhere to be seen.

Also along with adjusting to new parameters, rename get_tex_surface /
tex_surface_destroy to create_surface / surface_destroy and move them from
screen to context, which reflects much better what those do (they are analogous
to create_sampler_view / sampler_view_destroy).

PIPE_CAP_ARRAY_TEXTURES is used to indicate if a driver supports all of this
functionality (that is, both sampling from array texture as well as use a range
of layers as a render target, with selecting the layer from the geometry shader).
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
c63a86e1e5665fb5cd94de42d6c59171398e12ee 20-Nov-2010 Owen W. Taylor <otaylor@fishsoup.net> r600g: Fix location for clip plane registers

The stride between the different clip plane registers was incorrect.

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

agd5f: fix evergreen as well.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
04ffbe1ac6a82ac5cce843afa15ffdfa4ef78103 19-Nov-2010 Alex Deucher <alexdeucher@gmail.com> r600g: use full range of VS resources for vertex samplers

Now that we have fetch shaders, the full range of VS resources
can be used for sampling.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
f609b2ab0342d77a8beca9efb5fbc5b66ff98295 18-Nov-2010 Jerome Glisse <jglisse@redhat.com> r600g: add fetch shader capabilities

Use fetch shader instead of having fetch instruction in the vertex
shader. Allow to restrict shader update to a smaller part when
vertex buffer input layout changes.

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
7ffd4e976fd11b8c083c2927effd25a2f79ac841 17-Nov-2010 Jerome Glisse <jglisse@redhat.com> r600g: code cleanup (indent, trailing space, empty line ...)

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
d6b6a0bc170bd61abbbe9cb6ba777c7192dbd018 01-Nov-2010 Keith Whitwell <keithw@vmware.com> evergreeng: respect linewidth state, use integer widths only

Discard fractional bits from linewidth. This matches the nvidia
closed drivers, my reading of the OpenGL SI and current llvmpipe
behaviour.

It looks a lot nicer & avoids ugliness where lines alternate between n
and n+1 pixels in width along their length.

Also fix up r600g to match.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
c3974dc837b4a11a30603bb00fa1d346e721af59 17-Oct-2010 Keith Whitwell <keithw@vmware.com> r600g: set hardware pixel centers according to gl_rasterization_rules

These were previously being left in the default (D3D) mode. This mean
that triangles were drawn slightly incorrectly, but also because this
state is relied on by the u_blitter code, all blits were half a pixel
off.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
8dfafbf0861fe3d2542332658dd5493851053c78 02-Nov-2010 Keith Whitwell <keithw@vmware.com> st/mesa: unbind constant buffer when not in use

Important as more constant buffers per shader start to get used.

Fix up r600 (tested) and nv50 (untested) to cope with this. Drivers
previously didn't see unbinds of constant buffers often or ever, so
this isn't always dealt with cleanly.

For r600 just return and keep the reference. Will try to do better in
a followup change.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
2d2bafdb30110e83b7e14017326a454d7e7f37f3 14-Oct-2010 Dave Airlie <airlied@redhat.com> r600g: fix magic 0x1 ->flat shade ena
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
a20c2347a0bb9e0e1591b070ee5d0cac81168114 24-Oct-2010 Dave Airlie <airlied@redhat.com> r600g: drop more common state handling code
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
ccb9be105602edaaff196046e324c8cb4a12fe0a 23-Oct-2010 Tilman Sauerbeck <tilman@code-monkey.de> r600g: Added r600_pipe_shader_destroy().

Not yet complete.

Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
9612b482e2c8e994709bcaab79185224b4d76670 23-Oct-2010 Dave Airlie <airlied@redhat.com> r600g: merge more of the common r600/evergreen state handling
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
9f9d24c89a2286f952b123c703e8268d2f1aa719 23-Oct-2010 Tilman Sauerbeck <tilman@code-monkey.de> r600g: Fixed r600_vertex_element leak.

Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
f39e6c9c816b603a4ed8fd8cda8569b7e13c1f68 21-Oct-2010 Dave Airlie <airlied@redhat.com> r600g: start splitting out common code from eg/r600.

no point duplicating code that doesn't touch hw, also make it easier
to spot mistakes
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
e68c83a5a01a8a659857310cfcc785c7e028d3f0 21-Oct-2010 Dave Airlie <airlied@redhat.com> r600g: initial translate state support
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
91e513044de21f20c2c085a99e9d784c7a61173c 21-Oct-2010 Dave Airlie <airlied@redhat.com> r600g: add r600 surface to store the aligned height.

we need to know the aligned height when binding the surface to cb/zb,
not the gallium surface height.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
ea5aab85fd195074189832c2d6870dd78f0f8966 21-Oct-2010 Dave Airlie <airlied@redhat.com> r600g: move to per-miplevel array mode.

Since the hw transitions from 2D->1D sampling below the 2D macrotile
size we need to keep track of the array mode per level so we can
render to it using the CB.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
69f8eebe726d01d013f7cdea6c0d058ff6b04337 17-Oct-2010 Dave Airlie <airlied@redhat.com> r600g: fix typo in tiling setup cb code.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
a1b7333c07797faea29f50fd49b6c5e877beca0a 17-Oct-2010 Dave Airlie <airlied@redhat.com> r600g: do proper tracking of views/samplers.

we need to do pretty much what r300g does in for this, this fixes some
issues seen while working on tiling.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
5b966f58e3d87fc271cc429be969cf98eec991ca 08-Oct-2010 Dave Airlie <airlied@redhat.com> r600g: set tiling bits in hw state
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
c28f7645722ed3da1a04d3187f9cfa5d8e5e489d 14-Oct-2010 Keith Whitwell <keithw@vmware.com> r600g: emit hardware linewidth

Tested with demos/pixeltest - line rasterization doesn't seem to be
set up for GL conventions yet, but at least width is respected now.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
e3b089126c63c7178d725fbe245ca09d3f9edba1 13-Oct-2010 Dave Airlie <airlied@redhat.com> r600g: remove bpt and start using pitch_in_bytes/pixels.

this mirror changes in r300g, bpt is kinda useless when it comes to some
of the non-simple texture formats.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
fa797f12b3e1e82020eb7bc8fd0181baa7515efe 13-Oct-2010 Dave Airlie <airlied@redhat.com> r600g: rename pitch in texture to pitch_in_bytes
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
c8d4108fbee679735a1cc3f405d848d01bfb23f6 12-Oct-2010 Dave Airlie <airlied@redhat.com> r600g: store samplers/views across blit when we need to modify them

also fixup framebuffer state copies to avoid bad state.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
a8d1d7253ed281fd5c3a8a86658998eb5b9af847 13-Oct-2010 Dave Airlie <airlied@redhat.com> r600g: fix scissor/cliprect confusion

gallium calls them scissors, but r600 hw like r300 is better off using
cliprects to implement them as we can turn them on/off a lot easier.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
965f69cb0c51ca5a5c332e207cc86367fa31e6b1 12-Oct-2010 Dave Airlie <airlied@redhat.com> r600g: fix typo in vertex sampling on r600

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

Reported-by: Kevin DeKorte
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
3322416de44f27974edaba2aee8b2d2d21de6a8f 11-Oct-2010 Dave Airlie <airlied@redhat.com> r600g: don't run with scissors.

This could probably be done much nicer, I've spent a day chasing
a coherency problem in the kernel, that turned out to be incorrect
scissor setup.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
ea1d818b58d6ff9e4cd0c40eb865beabde8f268c 11-Oct-2010 Dave Airlie <airlied@redhat.com> r600g: enable vertex samplers.

We need to move the texture sampler resources out of the range of the vertex attribs.

We could probably improve this using an allocator but this is the simple answer for now.

makes mesa-demos/src/glsl/vert-tex work.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
97eea87bde5d05f247580aeb2963ac2476417bd5 07-Oct-2010 Dave Airlie <airlied@redhat.com> r600g: use format from the sampler view not from the texture.

we want to use the format from the sampler view which isn't always the
same as the texture format when creating sampler views.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
d2c06b5037fe9282cbbc0c7acd84a1b286716507 05-Oct-2010 Dave Airlie <airlied@redhat.com> r600g: drop use_mem_constant.

since we plan on using dx10 constant buffers everywhere.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
d22a1247d8a709cf433a6dd99b2f87a224c27d88 04-Oct-2010 Jerome Glisse <jglisse@redhat.com> r600g: allow r600_bo to be a sub allocation of a big bo

Add bo offset everywhere needed if r600_bo is ever a sub bo
of a bigger bo.

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
294c9fce1b924beddf198a3cce738b88eabb5537 04-Oct-2010 Jerome Glisse <jglisse@redhat.com> r600g: rename radeon_ws_bo to r600_bo

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
7af2a22d1f10fa1f556e0d0c55092184ff734c88 02-Oct-2010 Vinson Lee <vlee@vmware.com> r600g: Remove unnecessary headers.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
d662195f00fe60349cdda368eeb065910764842f 01-Oct-2010 Dave Airlie <airlied@redhat.com> r600g: fixup vertex format picking.

there are some vertex formats defined in r600c not in the docs.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
05d1d86907b12011fdb80e147ae68b4cd207f789 01-Oct-2010 Dave Airlie <airlied@redhat.com> r600g: add winsys support for CTL constants.

These need to be emitted, we also need them to do proper vtx start,
instead of abusing index offset.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
084c29baedf2702200b310d6e63a5d0f95aaac37 01-Oct-2010 Dave Airlie <airlied@redhat.com> r600g: fix evergreen depth flushing.

although evergreen can apparantly sample direct from 24-bit,
just make it work with the current method for now.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
153105cfbfd8d6ff30de144605016f6e4f2a1b9e 30-Sep-2010 Jerome Glisse <jglisse@redhat.com> r600g: use constant buffer instead of register for constant

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
dbcd6526021c50770c3e5e04b04dc64c70298124 30-Sep-2010 Dave Airlie <airlied@redhat.com> r600g: clean up some code from move to new paths.

mainly remove 2 suffix from function names
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
6abd7771c6ab2c733b20835e211060dd18fd847d 29-Sep-2010 Jerome Glisse <jglisse@redhat.com> r600g: more cleanup

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
1235becaa1cf7e29f580900592563c3329d326de 29-Sep-2010 Jerome Glisse <jglisse@redhat.com> r600g: cleanup

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
9c284b5cae916a083d17d1039d2f2da128b47882 29-Sep-2010 Jerome Glisse <jglisse@redhat.com> r600g: delete old path

Lot of clean can now happen.

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
08839c4055e89a10e90df2f3a3a2bdc4e6ce0273 29-Sep-2010 Dave Airlie <airlied@redhat.com> Revert "r600g: add initial vertex translate support."

This reverts commit 914b669b082258fc05d0fec047b69949d88585c4.

I didn't mean to commit this yet, will redo in new state system once
we clean it up.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
914b669b082258fc05d0fec047b69949d88585c4 24-Sep-2010 Dave Airlie <airlied@redhat.com> r600g: add initial vertex translate support.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
34dba5f05aa36baecdc655f7f94fed871006d590 28-Sep-2010 Dave Airlie <airlied@redhat.com> r600g: fix db flush breaking config state
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
4ca1a92b7fe44158a13910d01c76f41f6946165c 26-Sep-2010 Jerome Glisse <jglisse@redhat.com> r600g: move around variables to share depth uncompression code

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
363dfb83f1ca7f1ab09eec30aeb89732c5ce3e02 20-Sep-2010 Jerome Glisse <jglisse@redhat.com> r600g: move chip class to radeon common structure

So texture code can be shared btw new state design
& old one.

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
040411de267bd6b0d82a621430cbbbb943fd455a 20-Sep-2010 Dave Airlie <airlied@redhat.com> r600g: clean up valgrind issues on maxtargets test.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
4af55364ccb50e4f19cbb59ac6f51d86f58dedba 20-Sep-2010 Dave Airlie <airlied@redhat.com> r600g: fix fbo-drawbuffers-maxtargets

we were leaking buffers since the flush code was added, it wasn't dropping references.
move setting up flush to the set_framebuffer_state.
clean up the flush state object.
make more space in the BOs array for flushing.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
0d76bb5d4c5c867155f7fb381c46018e1560b790 17-Sep-2010 Dave Airlie <airlied@redhat.com> r600g: add upload manager support.

this add support for the upload manager for uploading user vbo/index buffers.

this provides a considerable speedup in q3 type games.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
f70f79f6f6027bdf2f7de09bb39e12a24420f338 16-Sep-2010 Dave Airlie <airlied@redhat.com> r600g: attempt to abstract kernel bos from pipe driver.

introduce an abstraction layer between kernel bos and the winsys BOs.

this is to allow plugging in pb manager with minimal disruption to pipe driver.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
6a8a5061580f41185cf0fb4cae89e78d67810b7b 15-Sep-2010 Vinson Lee <vlee@vmware.com> r600g: Remove unnecessary headers.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
cc1b3b1013d1fb1f1f25ade20a68d8bdfe14f5f7 10-Sep-2010 Dave Airlie <airlied@redhat.com> r600g: fix warning in r600 pipe driver
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
50526e094f4c66957c7f74c190c35903bc82fb62 03-Sep-2010 Dave Airlie <airlied@redhat.com> r600g: add initial evergreen support

adds shader opcodes + assembler support (except ARL)
uses constant buffers
add interp instructions in fragment shader
adds all evergreen hw states
adds evergreen pm4 support.

this runs gears for me on my evergreen
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
42da02743358fd4b212f47d2727340dcd0578b5a 10-Sep-2010 Dave Airlie <airlied@redhat.com> r600g: align flushing of cb/db with DDX/r600c.

the DDX and r600c both flush cb/db after the draw is emitted,
as long as they do that, r600g can't be different, as it races.

We end up with r600g flush, set CB, DDX set CB, flush. This
was causing misrendering on my evergreen, where sometimes the drawing
would go to an old CB.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
d42efb9e8df6ef872ab4f142e3daf1b6cb9eff11 08-Sep-2010 Dave Airlie <airlied@redhat.com> r600g: add support for constants in memory buffers.

DX9 constants were in the constant file, and evergreen no longer support
cfile. r600/700 can also use constants in memory buffers, so add the code
(disabled for now) to enable that as precursor for evergreen.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
9ef1c51be16ea360481cf9f82ebb1e3eb01efb18 08-Sep-2010 Dave Airlie <airlied@redhat.com> r600g: abstract the hw states out behind a vtbl.

this is step one towards evergreen support, it lets us plug in whole
new hw level states.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
5b82777311965d26e534bd522afb0f679622d504 06-Sep-2010 Dave Airlie <airlied@redhat.com> r600g: fix up surface references

We end up referencing the new surf and derefing the old surface which
is a copy of the pointer to the new surf. So just bump the ref count directly.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
3a672785df247e6f8ce95616166b74d4fd10ede0 06-Sep-2010 Dave Airlie <airlied@redhat.com> r600g: search for sampler views in context on removal.

Need to remove from context as well.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
50c1b6f2e845c067ac91493c0f93caca794521dd 03-Sep-2010 Dave Airlie <airlied@redhat.com> r600g: fix segfault in state after rework

probably can improve this a bit.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
191bfc5c3be219e2389fec004a51ea3239f434c8 03-Sep-2010 Dave Airlie <airlied@redhat.com> r600g: refactor sample states into a reusable struct.

I will not cut-n-paste.
I will not cut-n-paste.
I will not cut-n-paste.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
b5fcf8274916afdf29aca5e8db7611687b03abe4 03-Sep-2010 Dave Airlie <airlied@redhat.com> r600g: add texture border state.

Okay I finally wrapped my head around what r600_context_state is meant to be,
maybe I should just rename all the structs so that have distinct names.

I've no idea however why 16 is a good magic number for R600_MAX_RSTATE.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
ce7077423fc9ea003606dd28ca87311644b7e5c2 02-Sep-2010 Dave Airlie <airlied@redhat.com> r600g: deref old driver states for set entry points.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
4ca207b174c3500c13e8a994f2ff2bc5c94fb18f 03-Sep-2010 Dave Airlie <airlied@redhat.com> r600g: drop r600_bind_state.

This was another ugly function that really wasn't needed.

The 3 calls to it from the gallium api were shorter than it,
and all the calls from the set_ functions were pointless.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
49b4f5259bdbfce4f84a6997ccb36376f953068c 03-Sep-2010 Dave Airlie <airlied@redhat.com> r600g: kill r600_context_state function

having some sort of locality of code really matters, just create
and setup state at time. Not sure if this is just further polishing of a bad thing,
but at least it makes it more readable.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
1bd8493a0b0959c44592b11f8e90ba0c040705b1 03-Sep-2010 Dave Airlie <airlied@redhat.com> r600g: move lots of state inline helpers to separate header.

this gets them out of sight of the main codeflow.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
883cbbd99cd44dd5d2729fcddddafddcc435affc 03-Sep-2010 Dave Airlie <airlied@redhat.com> r600g: drop magic numbers in depth state.

this also fixes occulsion queries.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
f8d11b2e8ebaab2845080900ff4a2068f9a20b5f 02-Sep-2010 Jerome Glisse <jglisse@redhat.com> r600g: force unbind of previously bind sampler/sampler_view

Previously bind sampler/sampler_view can be converted and endup
overwritting the current state we want to schedule. Example :
bind texA texB to sampler_view[0] & sampler_view[1], render,
bind texB to sampler_view[0] render. Now state associated to
texB are set to configure sampler_view slot 0, but as we don't
unbind sampler_view[1] still point to texB state so we end up
with sampler_view[1] overwritting sampler_view[0], which gives
wrong rendering if next rendering bind texA to sampler_view[0],
it will endup as texB is bound to sampler_view[0]. If you are
not confuse at that point give me a call i will be buying you
beer.

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
76d0541e79d4fe2ffcb25b17f9dd540fafc14ba2 02-Sep-2010 Dave Airlie <airlied@redhat.com> r600g: fix logicop, the 3d ROP is the 2D rop shifted twice.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
31b84acbd2ae2dc7555844c5a2eead932b8759a7 02-Sep-2010 Jerome Glisse <jglisse@redhat.com> r600g: fix binding of same texture to several target slot

One can bind same texture or sampler to different slot,
each slot needs it own state. The solution implemented
here is not exactly beautifull or optimal need to think
to somethings better.

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
36192b772eda190c4d78e8a4979c4e3c6377ae61 02-Sep-2010 Dave Airlie <airlied@redhat.com> r600g: fix incorrect state naming in pipe_sampler vs pipe_sampler_view

fixes problems in valgrind with uninitialised values.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
ffcb443cd7be563071725885b87085bd5701d980 02-Sep-2010 Jerome Glisse <jglisse@redhat.com> r600g: silence compiler warning

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
67234b4b42a8285a9b14da48dd113cbe2ee871fd 02-Sep-2010 Jerome Glisse <jglisse@redhat.com> r600g: refix db/cb state

Signed-off-by: Dave Airlie <airlied@redhat.com>
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
66e4cb1cd5a55402606a09417349d2be8b009e89 30-Aug-2010 Jerome Glisse <jglisse@redhat.com> r600g: avoid dynamic allocation of states

Make state statically allocated, this kills a bunch of code
and avoid intensive use of malloc/free. There is still a lot
of useless duplicate function wrapping that can be kill. This
doesn't improve yet performance, needs to avoid memcpy states
in radeon_ctx_set_draw and to avoid rebuilding vs_resources,
dsa, scissor, cb_cntl, ... states at each draw command.

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
15ce70252c5357081a61f3494261c7e343174301 01-Sep-2010 Jerome Glisse <jglisse@redhat.com> Revert "Revert "r600g: precompute some of the hw state""

This reverts commit 1fa7245c348cb7aced81f1672140f64cb6450e2f.

Conflicts:

src/gallium/drivers/r600/r600_state.c
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
1d7b4af81781512b5bc5d43249529441d60ecebe 01-Sep-2010 Dave Airlie <airlied@redhat.com> r600g: correct cb/zb offset emits.

This fixes fbo-3d and fbo-cubemap
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
1fa7245c348cb7aced81f1672140f64cb6450e2f 01-Sep-2010 Dave Airlie <airlied@redhat.com> Revert "r600g: precompute some of the hw state"

This reverts commit de0b76cab22caa9fc7260f80acb8f151ccced6c5, its pre-computes the texture state wrong,

you can't just use an array of levels, since you can have FBOs to depth texture slices inside a level as well
it would get really messy quickly. Probably need to split commits like this up into pieces for each piece
of state, so we can revert bits easier in case of regressions.

This also break 5 piglit tests, and valgrind starts to warn about invalid read/writes after this.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
de0b76cab22caa9fc7260f80acb8f151ccced6c5 30-Aug-2010 Jerome Glisse <jglisse@redhat.com> r600g: precompute some of the hw state

Idea is to build hw state at pipe state creation and
reuse them while keeping a non PM4 packet interface
btw winsys & pipe driver. This commit also force rebuild
of pm4 packet on each call to radeon_state_pm4 which
in turn slow down everythings, this will be addressed.

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
69c30f5d6d429be4f7e211867984dab1a33da79c 26-Aug-2010 Dave Airlie <airlied@redhat.com> r600g: fixup states generation in winsys.

The current states code had an unhealthy relationship between
that had to somehow magically align themselves, editing either
place meant renumbering all states after the one you were on,
and it was pretty unapproachable code.

This replaces the huge types structures with a simple type + sub
type struct, which is keyed on an stype enum in radeon.h. Each
stype can have a per-shader type subclassing (4 types supported,
PS/VS/GS/FS), and also has a number of states per-subtype. So you
have 256 constants per 4 shaders per one CONSTANT stype.

The interface from the driver is changed to pass in the tuple,
(stype, id, shader_type), and we look for this. If
radeon_state_shader ever shows up on profile, it could use a
hashtable based on stype/shader_type to speed things up.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
4502b17901ad491e0598ee59a12d372c008ae03b 30-Aug-2010 Dave Airlie <airlied@redhat.com> r600g: add KILP support

passes glsl1-discard tests
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
2184f3ec3059eaf8a9a2b04c995162543f000862 27-Aug-2010 Dave Airlie <airlied@redhat.com> Revert "r600g: simplify states"

This reverts commit bd25e23bf3740f59ce8859848c715daeb9e9821f.

Apart from introducing a lot of hex magic numbers and being highly impenetable code,
it causes lots of lockups on an average piglit run that always runs without lockups.

Always run piglit before/after doing big things like this.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
bd25e23bf3740f59ce8859848c715daeb9e9821f 24-Aug-2010 Jerome Glisse <jglisse@redhat.com> r600g: simplify states

Directly build PM4 packet, avoid using malloc (no states are
bigger than 128 dwords), remove unecessary informations,
remove pm4 building in favor of prebuild pm4 packet.

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
6fb39f0fa2cad668fd6c49d0b739c33954a6946c 23-Aug-2010 Henri Verbeet <hverbeet@gmail.com> r600g: Add support for PIPE_CAP_DEPTH_CLAMP.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
bcf7f66a934ebd9c91da90d6e1f9b169c33c746c 23-Aug-2010 Jerome Glisse <jglisse@redhat.com> r600g: export one component per pixel + r7xx uncompression shader

We need to always at least export one component (wether it's depth
or color. Add valid r7xx shader program for depth decompression.

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
d843bbfd3f92d5afea665c3ff16bcca0628f2e7b 22-Aug-2010 Jerome Glisse <jglisse@redhat.com> r600g: fix DB decompression

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
ed99c28d12579bb8ee79eb9cfa55452785be7b6e 22-Aug-2010 Jerome Glisse <jglisse@redhat.com> r600g: depth buffer likely needs decompression when used as texture

Before using depth buffer as texture, it needs to be decompressed
(tile pattern of db are different from one used for colorbuffer
like texture)

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
36efb86c0570d86d8dfce87fd2416125e0e91b40 22-Aug-2010 Jerome Glisse <jglisse@redhat.com> r600g: partialy fix texturing from depth buffer + initial support for untiling

Partialy fix texturing from depth buffer, depth buffer is tiled
following different tile organisation that color buffer. This
properly set the tile type & array mode field of texture sampler
when sampling from db resource.

Add initial support to untiling buffer when transfering them,
it's kind of broken by corruption the vertex buffer of previous
draw.

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
921c987c6f43b4d63a98b61013d43bac97baff21 20-Aug-2010 Jerome Glisse <jglisse@redhat.com> r600g: cleanup definition, fix segfault when no valid pixel shader

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
63d010115c7972d854e0583f8f74e8d0c3407fcd 17-Aug-2010 Dave Airlie <airlied@redhat.com> r600g: add occlusion query support

Signed-off-by: Dave Airlie <airlied@redhat.com>
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
ae0ef6f69f351cacdc7eaa9b21097a7c1b414e44 18-Aug-2010 Luca Barbieri <luca@luca-barbieri.com> gallium: make all checks for PIPE_TEXTURE_2D check for PIPE_TEXTURE_RECT too

Searched for them with:
git grep -E '[!=]=.*PIPE_TEXTURE_2D|PIPE_TEXTURE_2D.*[!=]=|case.*PIPE_TEXTURE_2D'

Behavior hasn't been changed.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
1147814365c78ed20ba71e3f4e0bfe22f9960234 18-Aug-2010 Dave Airlie <airlied@redhat.com> r600g: fix point size

fixes piglit pointAtten and point-sprite tests
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
03c59e4ab16b0ee362f189b549bd13491dba71e4 18-Aug-2010 Dave Airlie <airlied@redhat.com> r600g: fixup pitch alignment like r600c.

This still needs work, passes tex3d, fbo-scissor-bitmap, scissor-bitmap
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
1d18739290fa667dc81d6780d695a09f8c1cde99 18-Aug-2010 Dave Airlie <airlied@redhat.com> r600g: emit texture level offset in CB/DB setup.

8 more piglit tests pass,
fbo-clearmipmap, fbo-copyteximage, fbo-generatemipmap,
fbo-generatemipmap-nonsquare, fbo-generatemipmap-scissor,
fbo-generatemipmap-viewport, gen-teximage, gen-texsubimage
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
3e58007892cb2e89cb979ab172b7160adc84a44d 17-Aug-2010 Dave Airlie <airlied@redhat.com> r600g: add user clip plane support.

Apart from the fact that the radeon.h/r600_states.h editing is a nightmare, this
wasn't so bad.

passes piglit user-clip test now also trivial tests.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
f2804e70623c4c71e5758a24d695f8d6b74bf6d7 13-Aug-2010 Dave Airlie <airlied@redhat.com> r600g: fix memory leaks running gears.

I noticed gears memory usage was heading skywards, some r600 "states"
aren't properly refcounted, and the ctx->state is never freed.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
13bc2098ca21be3d11176e558ca71e29e41a239f 12-Aug-2010 Dave Airlie <airlied@redhat.com> r600g: fix provoking-vertex piglit test.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
e2df0a8b234efde140b340c2c9b67b06b789b758 12-Aug-2010 Dave Airlie <airlied@redhat.com> r600g: improve texture format checker.

This takes the r300g texture format checker and fixes it up for r600g,
it passes glean texSwizzle, pixelformats, and texture_srgb tests,

however I think it L8S8_SRGB is broken as is L8_SRGB, need to investigate.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
481b65abaedb271d0da24c75b8c60f7bcf6d8ce9 11-Aug-2010 Jerome Glisse <jglisse@redhat.com> r600g: accept empty frag prog shader

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
457378e031ffb89a2011604c7798a6f5f2142207 11-Aug-2010 Jerome Glisse <jglisse@redhat.com> r600g: add point/sprite rendering support

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
95fb0bf58dde0b81ce601d3f0477fd1b2a5a28d4 09-Aug-2010 Jerome Glisse <jglisse@redhat.com> r600g: fix r600 context structure, avoid segfault when no scissor

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
32251c34f06ef91759fa75271ce724a06483cc42 06-Aug-2010 Jerome Glisse <jglisse@redhat.com> r600g: fix rendering, only enable target we write too

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
b474478f206c6d81af78696d3d5ce156d4d413d7 06-Aug-2010 Jerome Glisse <jglisse@redhat.com> r600g: really fix multi target support

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
c3ad060488ffd98f1c6dc9127b46324c5201f434 06-Aug-2010 Jerome Glisse <jglisse@redhat.com> r600g: finish multi target rendering support

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
27041d7cb3faeaed483538a228573466363ec1c7 06-Aug-2010 Jerome Glisse <jglisse@redhat.com> r600g: fix color format, indentation, defines

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
6e6103004c9c737297b842a4aff298da920e7c33 06-Aug-2010 Jerome Glisse <jglisse@redhat.com> Revert "r600g: don't use dynamic state allocation for states"

This reverts commit 9c949d4a4dd43b7889e13bdf683bcf211f049ced.

Conflicts:

src/gallium/drivers/r600/r600_context.h
src/gallium/drivers/r600/r600_draw.c
src/gallium/drivers/r600/r600_shader.c
src/gallium/drivers/r600/r600_state.c
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
5f6ab5e259de826bb3795d90fdb0235c8997acb9 06-Aug-2010 Dave Airlie <airlied@redhat.com> r600g: start to fix up multiple targets.

fixup exports from pixel shader for multi-cbs + depth buffer writing.

Still crashes GPU running any of the multi-buffer or depth writing
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
0a2a6c75bffc56d8dfde9b8a46c40222825630ea 06-Aug-2010 Dave Airlie <airlied@redhat.com> r600g: add SRGB support.

This enables GL2.1 and passes glean's texture_srgb test.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
fc47cb9d710c046d34e8238337e009d7b76a3207 06-Aug-2010 Dave Airlie <airlied@redhat.com> r600g: fixup z format translations.

this enables GL_EXT_packed_depth_stencil. fbo-d24s8 passes
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
b8de7788a4b20c702b06402e2e6eed60467e2522 06-Aug-2010 Dave Airlie <airlied@redhat.com> r600g: fix targetmask to work correctly.

At least this seems to fix the glean maskedClear test.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
2b9036476511edd549d1c2cea6044eef4652a19c 06-Aug-2010 Dave Airlie <airlied@redhat.com> r600g: improve supported format selection.

This fixes fbo-readpixels piglit test, and adds support for swapping
the formats. Not all formats are correct yet I don't think.

Signed-off-by: Dave Airlie <airlied@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
9c949d4a4dd43b7889e13bdf683bcf211f049ced 04-Aug-2010 Jerome Glisse <jglisse@redhat.com> r600g: don't use dynamic state allocation for states

Simplify state handly by avoiding state allocation.
Next step is to allocate once for all context packet
buffer and then avoid rebuilding pm4 packet each time
(through use of combined crc) this would also avoid
number of memcpy.

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
9a78e790dc4c40362b971ad5eff2505c02b73ed7 04-Aug-2010 Jerome Glisse <jglisse@redhat.com> r600g: always perform texture perspective divide + fix blending

quake3 engine seems to run fine at this point (ioquake)

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
dd863bf5e7c6680075cf7c355a026b1da69ee9e3 03-Aug-2010 Jerome Glisse <jglisse@redhat.com> r600g: add polygon offset support

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
3a8d4a89795d180b910b2c0dfa98c57cf9bb45a6 03-Aug-2010 Jerome Glisse <jglisse@redhat.com> r600g: fix color target mask

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
8f6341d42131e6f60f269610d62b7f5b7b683052 03-Aug-2010 Jerome Glisse <jglisse@redhat.com> r600g: fix stencil

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
313df4156279f84ebc5b98a7540820b994762650 02-Aug-2010 Jerome Glisse <jglisse@redhat.com> r600g: add autogenerated reg definition + debug print cleanup

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
4af5f11c3232015006f61c1a6befdff3411b8d6c 02-Aug-2010 Dave Airlie <airlied@redhat.com> r600g: add stencil op/func translation
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
3f4ec394b027c6d947ccc88309a7d37bc3859e9d 02-Aug-2010 Dave Airlie <airlied@redhat.com> r600g: initial alpha test state
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
7bcd39ce50b7b710bb8561c430f345ebe91ab9a3 02-Aug-2010 Dave Airlie <airlied@redhat.com> r600g: add initial blend state.

migrates cb_cntl to be regenerated
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
919750a55771cfd731e2f90d1385cbb4265e4cf4 02-Aug-2010 Dave Airlie <airlied@redhat.com> r600g: make r600_db_format static.

this isn't used anywhere else yet.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
7a73390f9126fd270d9891cd9d2bf38ef56d9b80 29-Jul-2010 Jerome Glisse <jglisse@redhat.com> r600g: mipmap early support + EX2/ABS instruction + culling

Add mipmap support (demos/src/redbook/mipmap is working)
Add EX2/ABS shader instruction support.
Add face culling support.

Misc fixes.

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
6d28bf917fb1d741d90fd3f05c22769376021fca 15-Jul-2010 Chia-I Wu <olv@lunarg.com> gallium: Implement draw_vbo and set_index_buffer for all drivers.

Some drivers define a generic function that is called by all drawing
functions. To implement draw_vbo for such drivers, either draw_vbo
calls the generic function or the prototype of the generic function is
changed to match draw_vbo.

Other drivers have no such generic function. draw_vbo is implemented by
calling either draw_arrays and draw_elements.

For most drivers, set_index_buffer does not mark the state dirty for
tracking. Instead, the index buffer state is emitted whenever draw_vbo
is called, just like the case with draw_elements. It surely can be
improved.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
42c1f27149828e5b5143f5e53ca3bd7c04a4e762 29-Jul-2010 Jerome Glisse <jglisse@redhat.com> r600g: state context ptr in sampler_view & add I8/L8 buffer format

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
35e044ab562b65aa53f9d9d7b5885e6a887774bb 29-Jul-2010 Jerome Glisse <jglisse@redhat.com> r600g: switch btw flat/linear interpolation

I am not sure how to properly handle flat shading regarding
non color parameter to fragment shader. It seems we should
still interpolate non color using linear interpolation and
flat shade only apply to color.

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
6f0f6c64596b7bbbfa96e8af6715565e37efa91e 29-Jul-2010 Jerome Glisse <jglisse@redhat.com> r600g: split pipe state creating/binding from hw state creation

Split hw vs pipe states creation handling as hw states group doesn't
match pipe state group exactly. Right now be dumb about that and
rebuild all hw states on each draw call. More optimization on that
side coming.

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
742ee7935da60dda974795243d2e0fcf31accb59 28-Jul-2010 Jerome Glisse <jglisse@redhat.com> r600g: cleanup resource buffer/texture mess

Use a common function, fix the mess it was before.

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
2ab24a6faedb0f9b93055cbf3d52be1120353ee1 28-Jul-2010 Dave Airlie <airlied@redhat.com> r600g: fix up segfault with variation between views and count.

For some reason gallium hands us something with lots of empty views, and
we are expected to deal with it, just do what r300g does for this bit.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
f514ad0a9b9bebde0808eadb1e63ea548260be1e 28-Jul-2010 Dave Airlie <airlied@redhat.com> r600g: use gallium util for float->ui conversion
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
641c9adb09e8707f659d42be600d16902ebf8895 28-Jul-2010 Jerome Glisse <jglisse@redhat.com> r600g: texture support

Add texture mapping support, redbook/texbind works if
you comment out glClear and second checkboard. Need to
fix :
- texture overwritting
- lod & mip/map handling
- unormalized coordinate handling
- texture view with first leve > 0
- and many other things

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
de553d906b4a205d811a9e1651f14212ec284e29 23-Jul-2010 Jerome Glisse <jglisse@redhat.com> r600g: drop compiler stuff and switch over dumb tgsi assembler

Writing a compiler is time consuming and error prone in
order to allow r600g to further progress in the meantime
i wrote a simple tgsi assembler, it does stupid thing but
i would rather keep the code simple than having people
trying to optimize code it does.

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
ffd0a2e215d83222f5e1e148b8e7cddeac6025d2 04-Jun-2010 Marek Olšák <maraeo@gmail.com> r600g: use cast wrappers
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
42aad574f2536d8bf0dc38a2e02d9ddd0630d895 04-Jun-2010 Vinson Lee <vlee@vmware.com> r600g: Move declaration before code.

Fixes SCons build.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
d6ba70c658d05033f04dd73bc40a3e2d29892121 24-May-2010 Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> r600g: added code for depthtesting

- added code to configure the depth buffer and to set up depth testing.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
1d57b6ebd186217a5c480245a36d169d357b8e67 29-May-2010 Marek Olšák <maraeo@gmail.com> r600g: make a local copy of viewport state
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
9e8a6f801d360f85cc7bb53b85f15129b07b26da 19-May-2010 Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> r600g: various fixes

- enabled flushing a buffer more than once
- enabled the blitter for r600_clear
- added some more colors to r600_is_format_supported (copied from r600_conv_pipe_format)
- r600_set_framebuffer_state now sets rctx->fb_state
- more states are saved before a blit (had to add some accounting for the viewport and the vertex elements state)
- fixed a few errors with reference counting
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
e68b4e50536b3438a3bb8c3d12acebc6845461a8 27-May-2010 Jerome Glisse <jglisse@redhat.com> r600g: fix driver + shader compiler backend change

Change the way we translate from c_compiler to the
asic specific representation. Should make things
simpler.

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
b8fb1d75ce95fe5d404b301ab31ca0c323967d14 10-May-2010 Marek Olšák <maraeo@gmail.com> r600g: adapt to latest interfaces changes

- Wrapped the buffer and texture create/destroy/transfer/... functions
using u_resource, which is then used to implement the resource functions.
- Implemented texture transfers.
I left the buffer and texture transfers separate because one day we'll
need a special codepath for textures.
- Added index_bias to the draw_*elements functions.
- Removed nonexistent *REP and *FOR instructions.
- Some pipe formats have changed channel ordering, so I've removed/fixed
nonexistent ones.
- Added stubs for create/set/destroy sampler views.
- Added a naive implementation of vertex elements state (new CSO).
- Reworked {texture,buffer}_{from,to}_handle.
- Reorganized winsys files, removed dri,egl,python directories.
- Added a new build target dri-r600.
/external/mesa3d/src/gallium/drivers/r600/r600_state.c
72128962d640846472c1b0dc22cf4ac6ce875dc9 08-May-2010 Jerome Glisse <glisse@freedesktop.org> r600g: Initial import
/external/mesa3d/src/gallium/drivers/r600/r600_state.c