History log of /external/mesa3d/src/gallium/drivers/softpipe/sp_flush.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
99695f58fde6d364f2310d97303768782a1e537d 07-Aug-2012 Brian Paul <brianp@vmware.com> softpipe: fix loop limit for tex_cache[] array

Fixes https://bugs.freedesktop.org/show_bug.cgi?id=53199
/external/mesa3d/src/gallium/drivers/softpipe/sp_flush.c
d6c3e6d8f34fc39dcbe9395c3a5953af726443f1 04-Aug-2012 Brian Paul <brianp@vmware.com> softpipe: consolidate sampler-related arrays

Combine separate arrays for vertex/fragment/geometry samplers, etc into
one array indexed by PIPE_SHADER_x.

This allows us to collapse separate code for vertex/fragment/geometry
state into loops over the shader stage. More to come.

Reviewed-by: José Fonseca <jfonseca@vmware.com>
/external/mesa3d/src/gallium/drivers/softpipe/sp_flush.c
0a14e9f09fc1cf9d5c277bb239f349203d3bed79 04-Aug-2012 Brian Paul <brianp@vmware.com> softpipe: combine vert/frag/geom texture caches in an array

This lets us consolidate some code now, and more in subsequent patches.

Reviewed-by: José Fonseca <jfonseca@vmware.com>
/external/mesa3d/src/gallium/drivers/softpipe/sp_flush.c
bddf275db44695e3850c4b62b8f4b77d93299ae9 02-Jun-2011 Marek Olšák <maraeo@gmail.com> softpipe: add a better fake implementation of fences

The flush function, when asked for, should not return a NULL fence.

NULL can only be returned if fences are not implemented, and st/mesa
doesn't call any of the fence functions if it receives a NULL fence
(because some drivers don't even set the fence hooks).

ARB_sync is exposed if fence_finish is set.
/external/mesa3d/src/gallium/drivers/softpipe/sp_flush.c
7e02303497237cde958c28608477d0c355a8038b 08-Mar-2011 Marek Olšák <maraeo@gmail.com> gallium: remove flags from the flush function

The drivers have been changed so that they behave as if all of the flags
were set. This is already implicit in most hardware drivers and required
for multiple contexts.

Some state trackers were also abusing the PIPE_FLUSH_RENDER_CACHE flag
to decide whether flush_frontbuffer should be called.
New flag ST_FLUSH_FRONT has been added to st_api.h as a replacement.
/external/mesa3d/src/gallium/drivers/softpipe/sp_flush.c
bfe88e69988b3d3bdff0b9f6051d0428e1315653 07-Mar-2011 Marek Olšák <maraeo@gmail.com> gallium: cleanup fence_signalled and fence_finish

So that they don't have the driver-specific param and return type.
/external/mesa3d/src/gallium/drivers/softpipe/sp_flush.c
25485f4b69447514ab8b595aced90c75606a99bd 07-Mar-2011 Marek Olšák <maraeo@gmail.com> gallium: kill is_resource_referenced

Only st/xorg used it and even incorrectly with regards to pipelined transfers.
/external/mesa3d/src/gallium/drivers/softpipe/sp_flush.c
b39bccbd4ed71e9585da4cf5acf7b887b2e90899 05-Mar-2011 Marek Olšák <maraeo@gmail.com> gallium: add timeout parameter to fence_finish

This is a follow-up to the ARB_sync patch for st/mesa and completes
the ARB_sync implementation.
/external/mesa3d/src/gallium/drivers/softpipe/sp_flush.c
843f206a342751084cbd55d9fb0fdf78fd310e99 03-Feb-2011 Brian Paul <brianp@vmware.com> softpipe: rename fragment sampler/view fields

To be consistant with vertex, geometry sampler fields.
/external/mesa3d/src/gallium/drivers/softpipe/sp_flush.c
c97e4532bb517e52c09ce15246423fc861c13ea3 18-Jan-2011 Brian Paul <brianp@vmware.com> softpipe: s/tex_cache/fragment_tex_cache/

Just to be more consistant with the vertex and geometry tex cache fields.
/external/mesa3d/src/gallium/drivers/softpipe/sp_flush.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/softpipe/sp_flush.c
d42b7d5f8d5eef73c89c2362beab94647ce12281 28-Aug-2010 Vinson Lee <vlee@vmware.com> softpipe: Include missing header in sp_flush.c.

Include p_screen.h for complete type to pipe_screen.
/external/mesa3d/src/gallium/drivers/softpipe/sp_flush.c
53bd9796a1395e4acde884ff55cb7ee18586595a 11-Jun-2010 Zack Rusin <zack@kde.org> gallium/softpipe/draw: support samplers in geometry shaders
/external/mesa3d/src/gallium/drivers/softpipe/sp_flush.c
53e94bd4adb218c5974c522389c3bcf40f3fa7e8 25-Apr-2010 José Fonseca <jfonseca@vmware.com> softpipe: Make softpipe transfers in-order.

Transfer, being now a context operation, should happen in order with
all other contexts operations. If there is rendering pending on the
resource then the driver must flush and potentially wait itself
internally.

Instead of avoiding using transfers internally (as done in llvmpipe) I've
opted to simply pass PIPE_TRANSFER_UNSYNCHRONIZED in all internal
transfers, to avoid infinite recursion.
/external/mesa3d/src/gallium/drivers/softpipe/sp_flush.c
47bfbd452c93e6a8db013fb90d9f42210cf24889 13-Mar-2010 Keith Whitwell <keithw@vmware.com> Merge commit 'origin/master' into gallium-sampler-view

Conflicts:
src/gallium/auxiliary/util/u_tile.c
src/gallium/auxiliary/util/u_tile.h
src/gallium/drivers/identity/id_context.c
src/gallium/drivers/llvmpipe/lp_setup.c
src/gallium/drivers/llvmpipe/lp_setup.h
src/gallium/drivers/softpipe/sp_tex_tile_cache.c
src/gallium/include/pipe/p_context.h
src/mesa/state_tracker/st_cb_bitmap.c
src/mesa/state_tracker/st_cb_drawpixels.c
b43c182f19c6291c88420fa12714f952c2b461fb 11-Mar-2010 Keith Whitwell <keithw@vmware.com> Squashed commit of gallium-context-transfers:

commit 7a2ee04629681e59ea147b440856c4f9a33ae9f8
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Mar 11 14:19:17 2010 +0000

nv: convert to context transfers

commit 188a3f5331c8e5966729fd59d02975afb7324adc
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Mar 11 14:11:10 2010 +0000

nouveau: remove unused variable

commit 5c8e880ab4dc020358c08728b8adb1637d2dc5bc
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Mar 11 12:31:21 2010 +0000

mesa/st: fix compilation after merge

commit c552595333f860c2a4807e195596acdf5d6a5ef8
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Mar 11 12:31:06 2010 +0000

util: fix compilation after merge

commit e80836878a3617b0e350d2a8f92311832a1476cb
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Mar 11 12:30:47 2010 +0000

r300g: fix compilation after merge

commit 0e4883e9511b9db4e75a4dbc78d7bb970badc15d
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Mar 11 12:18:45 2010 +0000

i965g: fix incorrect merge

commit 17d74133d8168eebf93bf1390de79930fc8da231
Merge: cb81c79 aa311ae
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Mar 11 12:08:32 2010 +0000

Merge commit 'origin/master' into gallium-context-transfers

Conflicts:
src/gallium/drivers/i965/brw_screen_texture.c
src/gallium/drivers/r300/r300_screen.c
src/gallium/drivers/softpipe/sp_texture.c
src/gallium/drivers/svga/svga_screen_texture.c
src/gallium/state_trackers/egl/x11/native_ximage.c

commit cb81c79098bc3a92a4d2a3dcc0edc972dfb407be
Author: Keith Whitwell <keithw@vmware.com>
Date: Tue Mar 2 16:04:01 2010 +0000

egl/x11: hack for context transfers

There is a better approach to this in the winsys-handle branch, but
for now avoid using transfers at all by always allocating our own
backing store directly.

commit f44a24e1d4ad7563f3eedd6b3a5688f53a36265c
Author: Keith Whitwell <keithw@vmware.com>
Date: Tue Mar 2 16:03:16 2010 +0000

llvmpipe: context transfers

commit 4d7475ef8104b3b478c7c6ce77cd3506c57e25d1
Author: Keith Whitwell <keithw@vmware.com>
Date: Tue Mar 2 16:02:50 2010 +0000

llvmpipe: disable testprogs build

Not working.

commit a9bf98c4d36bd92a76f81e83747eb9b8f0a0515f
Merge: ee0f97e 0c616da
Author: Keith Whitwell <keithw@vmware.com>
Date: Tue Mar 2 15:28:25 2010 +0000

Merge commit 'origin/master' into gallium-context-transfers

Conflicts:
src/mesa/state_tracker/st_cb_accum.c
src/mesa/state_tracker/st_cb_bitmap.c

commit ee0f97e8d9fd5ef57211a8e1268f505c9829e246
Merge: a7f078e 828f545
Author: Keith Whitwell <keithw@vmware.com>
Date: Fri Feb 19 13:00:29 2010 +0000

Merge commit 'origin/master' into gallium-context-transfers

Conflicts:
src/gallium/auxiliary/util/u_debug.h
src/gallium/drivers/i915/i915_context.h
src/gallium/drivers/llvmpipe/lp_flush.c
src/gallium/drivers/nv30/nv30_screen.h
src/gallium/drivers/nv40/nv40_context.h
src/gallium/drivers/nv40/nv40_screen.h
src/gallium/drivers/nv50/nv50_context.h
src/gallium/drivers/r300/r300_screen.c
src/gallium/drivers/r300/r300_winsys.h
src/gallium/drivers/softpipe/sp_context.c
src/gallium/drivers/trace/tr_context.c
src/gallium/state_trackers/dri/dri_context.c
src/gallium/state_trackers/egl/common/egl_g3d.c
src/gallium/state_trackers/python/st_device.c
src/gallium/winsys/drm/radeon/core/radeon_drm.c

commit a7f078e16d851b53ef316066dcced46eb39ebe24
Author: Keith Whitwell <keithw@vmware.com>
Date: Fri Feb 5 14:16:11 2010 +0000

gallium: move texture transfers to pipe_context

commit 7b2ffc2019d72e833afea7eebf3e80121187375d
Merge: 51e190e c036d13
Author: Keith Whitwell <keithw@vmware.com>
Date: Fri Feb 5 09:55:02 2010 +0000

Merge commit 'origin/master' into gallium-screen-context

Conflicts:
src/gallium/winsys/drm/nouveau/drm/nouveau_drm_api.c

This branch has got a pretty tortured history now, I expect
a squash merge will be appropriate when it is done.

commit 51e190e95acf120f72768fafb29e9721e358df1b
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Feb 4 17:58:02 2010 +0000

gallium: fix some build issues

commit f524bdaa723fb181637ad30c6ad708aeedabe25b
Merge: f906212 3aba0a2
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Feb 4 17:51:32 2010 +0000

Merge commit 'origin/master' into gallium-screen-context

commit f9062126883199eabf045714c717cd35f4b7b313
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Feb 4 17:17:12 2010 +0000

gallium/docs: small description of screen::create_context

commit efcb37bd3d5ed37f06c6105bd2d750b374ec0927
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Feb 4 16:42:42 2010 +0000

drm/radeon: more dead create_context wrapper removal

commit 6badc0dd9e06cf2ec936940bcf12b9ef5324b301
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Feb 4 16:42:30 2010 +0000

drm/i965: more dead create_context wrapper removal

commit cf04ebd5a54b18b2d894cfdab2b0f2fd55626ffc
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Feb 4 16:42:05 2010 +0000

st/python: more dead create_context wrapper removal

commit 444f114c3516abf71c430e6e9d0d2ae3b80679d3
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Feb 4 16:37:58 2010 +0000

idenity: wrapped context creation

commit 5a6d09cb9e468d1ee6c8d54b887618819d8d94f2
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Feb 4 16:28:47 2010 +0000

ws/gdi: remove dead context_create wrapper

commit 132b55f4bec39386ac625f09aaa11f609664024c
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Feb 4 16:27:52 2010 +0000

ws/gdi: remove dead context_create wrapper

commit 56d2d21a0cdcb197a364049d354c2f15a4fc026a
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Feb 4 16:25:38 2010 +0000

st/xorg: use screen::context_create

commit 838c5cfe56b2af6c644909bed3c5e7cdd64c336a
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Feb 4 16:23:20 2010 +0000

glx/xlib: simplify creation of trace-wrapped contexts

Trace screen knows how to properly wrap context creation in the
wrapped screen, so nothing special to do here.

commit c99404c03ebaec4175f08a2f363e43c9085f2635
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Feb 4 16:18:24 2010 +0000

st/python: no need to special case context creation for trace

commit 193a527a682b6877bb1faecd8092df4dfd055a18
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Feb 4 16:15:30 2010 +0000

drm/radeon: remove dead create_context declaration

commit bb984eecc25cf23bc77e1c818b81165ba1a07c9a
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Feb 4 16:14:58 2010 +0000

nv/drm: remove dead create_context ref

commit e809313a44287dc4e16c28e9e74ef3b2b5271aa1
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Feb 4 16:12:51 2010 +0000

st/egl: remove a layer of wrappers around screen::create_context

commit 39caa6672a04122f185c22e17aab86d1c40938bf
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Feb 4 16:05:28 2010 +0000

r300g: fill in screen::context_create

commit 407f12556d16ba0656774d8a1d9ebda22f82f473
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Feb 4 16:04:04 2010 +0000

cell: adapt for screen::create_context, untested

commit d02b0c6ce321a04c76fdabb09e0e4380ce1c1376
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Feb 4 15:50:24 2010 +0000

drm/nv: adapt for screen::create_context

All contexts now created directly through the screen, so remove
equivalent code here.

Remove apparently un-needed array of contexts in the winsys.

commit 53eec5b1349aa1b6892a75a7bff7e7530957aeae
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Feb 4 15:50:08 2010 +0000

stw: adapt for screen::create_context, untested

commit c6a64de3eb381bc9a88e9fbdecbf87d77925aaf5
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Feb 4 15:49:20 2010 +0000

trace: expose the wrapped context's priv data

If we are going to keep this priv idea, really want an accessor
function for it so that trace and other drivers can wrap that.

commit 75d6104e11d86ec2b0749627ed58e35f856ee6eb
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Feb 4 15:47:55 2010 +0000

nv30: adapt to screen::context_create

commit 12f5deb6ed9723e9b5d34577052b8365813ca14e
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Feb 4 15:44:47 2010 +0000

nv40: adapt to screen::context_create

commit 14baccaa3b6bbb3b91056126f6521828e786dc62
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Feb 4 15:35:27 2010 +0000

nv50: adapt to screen::create_context

Not build tested. Need to figure out how to build nouveau.

commit a0e94505ccd2d7f3e604465a2ac302f1286b73b6
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Feb 4 15:22:27 2010 +0000

llvmpipe: update for screen::create_context, untested

commit 0eae17107c950346030e4f7e0ec232f868d3893d
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Feb 4 15:16:57 2010 +0000

xlib/llvmpipe: remove dead winsys context creation path

commit 2f69f9ffaa7e2a01d2483277246ed13051ae4ca3
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Feb 4 14:58:27 2010 +0000

gallium: convert most code to use screen::create_context

I wish I could build all of gallium at once to find breakages.

commit d7b57f4061b82322cbcae176125913d9f0dea6c1
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Feb 4 12:46:21 2010 +0000

glx: permit building with older protocol headers

I'd like to be able to build mesa on current distro releases without
having to upgrade from the standard dri2proto and glproto headers. With
this change I'm able to build on ancient releases such as Ubuntu 9-10...

In general, it would be nice to be able to build-test mesa to check for
unintended breakages without having to follow the external dependencies
of every group working on the codebase.

commit 57adedd6fb06c98572ed8d4aef19203df4c4eea2
Merge: da71847 e1906ae
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Feb 4 11:38:15 2010 +0000

Merge commit 'origin/master' into gallium-screen-context

Conflicts:
src/gallium/drivers/softpipe/sp_video_context.h
src/gallium/drivers/trace/tr_context.c
src/gallium/state_trackers/wgl/shared/stw_context.c
src/gallium/winsys/gdi/gdi_softpipe_winsys.c

commit da71847ea6414d7e352c6094f8963bb4eda344dc
Author: José Fonseca <jfonseca@vmware.com>
Date: Sat May 2 08:57:39 2009 +0100

wgl: Use pipe_screen::context_create.

commit 2595a188f93fd903600ef5d8517737ee0592035d
Author: José Fonseca <jfonseca@vmware.com>
Date: Sat May 2 08:56:47 2009 +0100

trace: Implement pipe_screen::context_create.

commit f3640e4ae37a5260cbfba999d079f827de0a313a
Author: José Fonseca <jfonseca@vmware.com>
Date: Sat May 2 08:56:17 2009 +0100

softpipe: Implement pipe_screen::context_create.

commit 347266bddc8bd39c711bacb2193793759d0f3696
Author: José Fonseca <jfonseca@vmware.com>
Date: Sat May 2 08:55:31 2009 +0100

gallium: New pipe_screen::context_create callback.
/external/mesa3d/src/gallium/drivers/softpipe/sp_flush.c
cd8614b0287dc5a69725ec4ee0208fad61f7789e 22-Jan-2010 Brian Paul <brianp@vmware.com> Merge branch 'mesa_7_7_branch'

Conflicts:
src/gallium/auxiliary/draw/draw_context.c
src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
src/gallium/auxiliary/pipebuffer/Makefile
src/gallium/auxiliary/pipebuffer/SConscript
src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c
src/gallium/auxiliary/tgsi/tgsi_scan.c
src/gallium/drivers/i915/i915_surface.c
src/gallium/drivers/i915/i915_texture.c
src/gallium/drivers/llvmpipe/lp_setup.c
src/gallium/drivers/llvmpipe/lp_tex_sample_c.c
src/gallium/drivers/llvmpipe/lp_texture.c
src/gallium/drivers/softpipe/sp_prim_vbuf.c
src/gallium/state_trackers/xorg/xorg_dri2.c
src/gallium/winsys/drm/intel/gem/intel_drm_api.c
src/gallium/winsys/drm/nouveau/drm/nouveau_drm_api.c
src/gallium/winsys/drm/radeon/core/radeon_drm.c
src/gallium/winsys/drm/vmware/core/vmw_screen_dri.c
src/mesa/state_tracker/st_cb_clear.c
e3cb614f932ac417d446c84bd54f86d01b1cdcd9 20-Jan-2010 Vinson Lee <vlee@vmware.com> softpipe: Remove unnecessary headers.
/external/mesa3d/src/gallium/drivers/softpipe/sp_flush.c
f6106566081978f663cf08e54bb8908cb58a5316 19-Feb-2010 Michal Krol <michal@vmware.com> gallium: WIP: Introduce sampler views.
/external/mesa3d/src/gallium/drivers/softpipe/sp_flush.c
8a619e62bffa6f21330df747940e322909937806 01-Dec-2009 Michal Krol <michal@vmware.com> sp: Implement separate vertex sampler state.
/external/mesa3d/src/gallium/drivers/softpipe/sp_flush.c
80c78472ad43f4288c9ef5076074ba9d31a39885 29-Jul-2009 Keith Whitwell <keithw@vmware.com> softpipe: split texture and surface tile caches

These do similar jobs but with largely disjoint code. Will want
to evolve them separately going forward.
/external/mesa3d/src/gallium/drivers/softpipe/sp_flush.c
93a026d4baf90266f4c9cc48d039b4d65ce1ab6d 23-Jul-2009 Keith Whitwell <keithw@vmware.com> softpipe: avoid flushing depth buffer cache on swapbuffers

There's no need to push out depth buffer contents on swapbuffers.

Note that this change doesn't throw away depth buffer changes, it simply
holds them in the cache over calls to swapbuffers. The hope is
that swapbuffers will be followed by a clear() which means in that case
we won't have to write the changes out.
/external/mesa3d/src/gallium/drivers/softpipe/sp_flush.c
aa5db684382bd8662a83ca09ed000e4a5a1013f9 16-Jul-2009 Keith Whitwell <keithw@vmware.com> softpipe: remove backwards dependency from tilecache to softpipe

The tile cache is a utility, it shouldn't know anything about the
entity which is making use of it (ie softpipe).

Remove softpipe parameter to all the tilecache function calls, and
also remove the need to keep a softpipe pointer in the sampler structs.
/external/mesa3d/src/gallium/drivers/softpipe/sp_flush.c
5d0cf9ebb41c05b0c6fa6914ccbb1e1871e27099 15-Jun-2009 José Fonseca <jfonseca@vmware.com> softpipe: Fix softpipe_is_texture_referenced.

Render results are only visible when the render cache is flushed.
softpipe_is_texture_referenced must reflect that or transfers to/from the
textures bound in the framebuffer won't be proceeded of the necessary
flush, causing transfer data to be outdated/clobbered.

This fixes conform drawpix test with softpipe.
/external/mesa3d/src/gallium/drivers/softpipe/sp_flush.c
4617981ec72f7985941bee4b03c534d97ff96bc6 05-Feb-2009 Michel Dänzer <daenzer@vmware.com> gallium: No longer allow CPU mapping surfaces directly.

Instead, a new pipe_transfer object has to be created and mapped for
transferring data between the CPU and a texture. This gives the driver more
flexibility for textures in address spaces that aren't CPU accessible.

This is a first pass; softpipe/xlib builds and runs glxgears, but it only shows
a black window. Looks like something's off related to the Z buffer, so the
depth test always fails.
/external/mesa3d/src/gallium/drivers/softpipe/sp_flush.c
2299f21f8da816fc4588492965e7dac422da1a96 26-Jan-2009 Zack Rusin <zackr@vmware.com> gallium: standardize api on the prefix "nr"
/external/mesa3d/src/gallium/drivers/softpipe/sp_flush.c
d671cf460f99693ded1eccc6b32816d430098725 09-Sep-2008 José Fonseca <jrfonseca@tungstengraphics.com> softpipe: Code (commented out) to dump BMPs.
/external/mesa3d/src/gallium/drivers/softpipe/sp_flush.c
c9ed86a96483063f3d6789ed16645a3dca77d726 01-May-2008 Keith Whitwell <keith@tungstengraphics.com> gallium: tex surface checkpoint
/external/mesa3d/src/gallium/drivers/softpipe/sp_flush.c
4abe1eb980ed76d2b2d3383eaab520d0aa2ae6f4 26-Mar-2008 Michel Dänzer <michel@tungstengraphics.com> gallium: Change pipe->flush() interface to optionally return a fence.

The cell driver still uses an internal CELL_FLUSH_WAIT flag, in the long run
proper fencing should be implemented for it.
/external/mesa3d/src/gallium/drivers/softpipe/sp_flush.c
6acd63a4980951727939c0dd545a0324965b3834 15-Feb-2008 José Fonseca <jrfonseca@tungstengraphics.com> Code reorganization: update build.

Update the Makefiles and includes for the new paths.

Note that there hasn't been no separation of the Makefiles yet, and make is
jumping all over the place. That will be taken care shortly. But for now, make
should work. It was tested with linux and linux-dri. Linux-cell and linux-llvm
might require some minor tweaks.
/external/mesa3d/src/gallium/drivers/softpipe/sp_flush.c
b642730be93149baa7556e5791393168ab396175 15-Feb-2008 José Fonseca <jrfonseca@tungstengraphics.com> Code reorganization: move files into their places.

This is in a separate commit to ensure renames are properly preserved.
/external/mesa3d/src/gallium/drivers/softpipe/sp_flush.c