History log of /external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
80157466cd56bfaeadbdcac497b04c16c2732a3b 06-Jan-2015 Eric Anholt <eric@anholt.net> vc4: Add miptree/texture state support for ETC1 compressed textures.

The format isn't flagged as enabled at runtime yet, because we need kernel
validation support.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
99d790538de2e7d7d489a8638b13c5aa069c27c3 13-Oct-2016 Eric Anholt <eric@anholt.net> vc4: Avoid loading from the texture during non-utile-aligned glTexImage().

Previously, the plan was "if the width/height we have to load/store isn't
the size the user is planning on writing, then we need to load the old
contents out beforehand to prevent writing back undefined".

However, when we're doing glTexImage() we often end up aligning the
width/height into the padding of the texture, and we don't actually
need to read out that padding.

Improves x11perf -aatrapezoid100 performance from ~460/sec to
~700/sec.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
9421a6065c4eafbc92657f75da46a4bb70577154 05-Oct-2016 Eric Anholt <eric@anholt.net> vc4: Fix fallback to quad clears of depth in GLX.

The fix in the vc4-jobs series ended up triggering the fallback path on
GLX apps that use depth but not stencil.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
8810270d066eced5261ab407e2be4e902b102671 05-Oct-2016 Eric Anholt <eric@anholt.net> vc4: Add the format name in miptree_debug.

I was curious if my Z/S buffer was actually ZS or ZX, and the vc4 format
of "0" didn't tell me much.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
2a83036fe29262c8761812c65d6e81c7198da54e 27-Sep-2016 Nicolai Hähnle <nicolai.haehnle@amd.com> vc4: use the new parent/child pools for transfers

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
f597ac3966405934e13a9aaa18c73211b5a40c7c 08-Sep-2016 Eric Anholt <eric@anholt.net> vc4: Implement job shuffling

Track rendering to each FBO independently and flush rendering only when
necessary. This lets us avoid the overhead of storing and loading the
frame when an application momentarily switches to rendering to some other
texture in order to continue rendering the main scene.

Improves glmark -b desktop:effect=shadow:windows=4 by 27%
Improves glmark -b
desktop:blur-radius=5:effect=blur:passes=1:separable=true:windows=4
by 17%

While I haven't tested other apps, this should help X rendering a lot, and
I've heard GLBenchmark needed it too.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
a2014c2eb9e03301b2f472adf2d46915579e4512 09-Sep-2016 Eric Anholt <eric@anholt.net> vc4: Simplify the DISCARD_RANGE handling

It's really just an upgrade to attempting WHOLE_RESOURCE. Pulling the
logic out caught two bugs in it: We would try to do so on cubemaps (even
though we're only mapping 1 of the 6 slices), and we would break
persistent coherent mappings by trying to reallocate when we shouldn't.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
e7a73b75a0dbd599187b8980b2e1e1cb5dfdaf6d 28-Aug-2016 Marek Olšák <marek.olsak@amd.com> gallium: switch drivers to the slab allocator in src/util
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
1ffe77e7bb2486ea74cda077ed2a9622b758395c 16-Jul-2016 Marek Olšák <marek.olsak@amd.com> gallium: split transfer_inline_write into buffer and texture callbacks

to reduce the call indirections with u_resource_vtbl.

The worst call tree you could get was:
- u_transfer_inline_write_vtbl
- u_default_transfer_inline_write
- u_transfer_map_vtbl
- driver_transfer_map
- u_transfer_unmap_vtbl
- driver_transfer_unmap

That's 6 indirect calls. Some drivers only had 5. The goal is to have
1 indirect call for drivers that care. The resource type can be determined
statically at most call sites.

The new interface is:
pipe_context::buffer_subdata(ctx, resource, usage, offset, size, data)
pipe_context::texture_subdata(ctx, resource, level, usage, box, data,
stride, layer_stride)

v2: fix whitespace, correct ilo's behavior

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
Acked-by: Roland Scheidegger <sroland@vmware.com>
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
3bcd0f1912a60cc9d3813923d18d29465e41ff56 15-Jul-2016 Eric Anholt <eric@anholt.net> vc4: Speed up glGenerateMipmaps by avoiding shadow baselevel.

To support general GL_TEXTURE_BASE_LEVEL we have to copy to a temporary
miptree. However, if a single level is being selected, we can use the
existing miptree and force all the sampling to be from that particular
level.

This avoids a ton of software fallbacks in glGenerateMipmaps(), which uses
base levels in the blit implementation in gallium. Improves "glmark2 -b
terrain" from 2 fps to 3 (perhaps some more precision would be useful?),
and cuts its CPU usage during the benchmarking from ~30% to ~10% (total
CPU time from 8.8s to 7.6s).
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
e8959ba7afbda7a23805072efc15c6f11449103e 13-Jul-2016 Eric Engestrom <eric@engestrom.ch> vc4: fix memory leak

The allocation has succeeded by that point, so it needs to be freed.

CovID: 1358929
Signed-off-by: Eric Engestrom <eric@engestrom.ch>
Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
067c5b10b690b949ac28c4aea237f398f8251fff 14-Jun-2016 Rob Herring <robh@kernel.org> vc4: fix vc4_resource_from_handle() stride calculation

The expected stride calculation is completely wrong. It should
ultimately be multiplying cpp and width rather than dividing. The width
also needs to be aligned to the tiling width first before converting to
stride bytes.

The whole stride check here is possibly pointless. Any buffers which
were allocated outside of vc4 may have strides with larger alignment
requirements.

Signed-off-by: Rob Herring <robh@kernel.org>
Reviewed-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
a507dcc1601d436f6b68fc59a8a8393773d6fd8b 18-May-2016 Eric Anholt <eric@anholt.net> vc4: Size transfer temporary mappings appropriately for full maps of 3D.

We don't really support reading/writing of 3D textures since the hardware
doesn't do 3D, but we do need to make sure that a pipe_transfer for them
has enough space to store the image. This was previously not a problem
because the state tracker only mapped a slice at a time until
fb9fe352ea41c7e3633ba2c483c59b73c529845b. Fixes glean glsl1 tests, which
all have setup of a 3D texture at the start.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
48fe53bbb9cc14dd758e7a55c55616be85a3358b 16-Apr-2016 Eric Anholt <eric@anholt.net> vc4: Add support for rendering to cube map surfaces.

We need to fix up the offset to point at the face of the cube. Fixes
piglit fbo-cubemap, copyteximage CUBE, and glean's fbo test.

Cc: "11.1 11.2" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
21a9ed620764bde2021aa7592cf2695dad8f3f74 15-Apr-2016 Eric Anholt <eric@anholt.net> vc4: Don't flush on read-only access of buffers read by the CL.

Fixes piglit mixed-immediate-and-vbo, and may significantly improve
performance of applications that store a 4-byte IB in the same VBO as
vertex data.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
56b14adf8508edea1c2d230f5e58b9110a26545a 15-Apr-2016 Eric Anholt <eric@anholt.net> vc4: Sanity check strides for imported BOs.

If we're going to sample from or render to them at some particular size,
we'd better make sure that they actually are that size. Causes some tests
under simulation to generate appropriate error messages instead of
failures.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
82db518f1519cec9e3842f23455a105e2006afbd 24-Feb-2016 Marek Olšák <marek.olsak@amd.com> gallium: add external usage flags to resource_from(get)_handle (v2)

This will allow drivers to make better decisions about texture sharing
for DRI2, DRI3, Wayland, and OpenCL.

v2: add read/write flags, take advantage of __DRI_IMAGE_USE_BACKBUFFER

Reviewed-by: Axel Davy <axel.davy@ens.fr>
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
64253fdb2eda545a4988c02a60627a9840c79907 03-Jan-2016 Eric Anholt <eric@anholt.net> vc4: Fix build from upload changes.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
020009f7ccdffa84c6e1649c4e915954f5fd7cc0 19-Dec-2015 Marek Olšák <marek.olsak@amd.com> u_upload_mgr: pass alignment to u_upload_alloc manually

The fixed alignment of u_upload_mgr will go away.
This is the first step.

The motivation is that one u_upload_mgr can have multiple users,
each allocating from the same buffer, but requiring a different alignment.

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
f2cf2a63f1211642ca20b73ad5f23c60cc3fa703 15-Dec-2015 Eric Anholt <eric@anholt.net> vc4: Don't consider nr_samples==1 surfaces to be MSAA.

This is apparently a weirdness of gallium -- nr_samples==1 is occasionally
used and means the same thing as nr_samples==0. Fixes a bunch of
ARB_framebuffer_srgb blit cases in piglit.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
fc4a1bfb88d065afb9eda9a888b91d8c0fa72dcd 22-Nov-2015 Eric Anholt <eric@anholt.net> vc4: Add support for mapping of MSAA resources.

The pipe_transfer_map API requires that we do an implicit
downsample/upsample and return a mapping of that.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
a69ac4e89c1c3edc33eb4e9361229a3f25de3ee6 09-Aug-2015 Eric Anholt <eric@anholt.net> vc4: Add debug dumping of MSAA surfaces.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
3c3b1184eb57951c8a40258c9214a1aece1602e6 23-Jun-2015 Eric Anholt <eric@anholt.net> vc4: Add support for laying out MSAA resources.

For MSAA, we store full resolution tile buffer contents, which have their
own tiling format. Since they're full resolution buffers, we have to
align their size to full tiles.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
eb8fb0064dbde7a363c2f99466a51b346b09a029 06-Nov-2015 Eric Anholt <eric@anholt.net> vc4: Return GL_OUT_OF_MEMORY when buffer allocation fails.

I was afraid our callers weren't prepared for this, but it looks like
at least for resource creation, mesa/st throws an error appropriately.

Cc: "11.0" <mesa-stable@lists.freedesktop.org>
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
855a3ca598734273f53c5e316f1d825aea3dd6da 09-Nov-2015 Eric Anholt <eric@anholt.net> vc4: Fix a compiler warning.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
04c42f3ab56a19089b46dea48615aeef8b8225da 28-Jul-2015 Eric Anholt <eric@anholt.net> vc4: Allow user index buffers, to avoid slow readback for shadow IBs.

Improves low-settings openarena performance by 31.9975% +/- 0.659931%
(n=7).
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
2e04492a142102823dfb8fc8599cfd417b84c97a 28-Jul-2015 Eric Anholt <eric@anholt.net> vc4: Skip re-emitting the shader_rec if it's unchanged.

It's a bunch of work for us to emit it (and its uniforms), more work for
the kernel to validate it, and additional work for the CLE to read
it. Improves es2gears framerate by about 50%.

Signed-off-by: Eric Anholt <eric@anholt.net>
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
bb107110a4d97191841985076dd9f2fbd0937dfc 20-Jun-2015 Eric Anholt <eric@anholt.net> vc4: Fix write-only texsubimage when we had to align.

We need to make sure that when we store the aligned box, we've got
initialized contents in the border. We could potentially just load the
border area, but for now let's get text rendering working in X (and fix
the GL_TEXTURE_2D errors in piglit's texsubimage test and
gl-2.1-pbo/test_tex_image)
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
10aacf5ae8f3e90e2f0967fbdcf96df93e346e20 15-Apr-2015 Eric Anholt <eric@anholt.net> vc4: Just stream out fallback IB contents.

The idea I had when I wrote the original shadow code was that you'd see a
set_index_buffer to the IB, then a bunch of draws out of it. What's
actually happening in openarena is that set_index_buffer occurs at every
draw, so we end up making a new shadow BO every time, and converting more
of the BO than is actually used in the draw.

While I could maybe come up with a better caching scheme, for now just
do the simple thing that doesn't result in a new shadow IB allocation
per draw.

Improves performance of isosurf in drawelements mode by 58.7967% +/-
3.86152% (n=8).
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
3a728d4dfbd727c30f36116772803674beffcbb6 14-Apr-2015 Eric Anholt <eric@anholt.net> vc4: Update the shadow texture for public textures on every draw.

We don't know who else has written to it, so we'd better update it every
time. This makes the gears spin in X again.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
bd957b1b79124c5061af1eddf16932793e806d87 14-Apr-2015 Eric Anholt <eric@anholt.net> vc4: Hook up VC4_DEBUG=perf to some useful printfs.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
43b20795b742b9f1608dd6f2dc586337408760ad 09-Apr-2015 Eric Anholt <eric@anholt.net> vc4: Move the blit code to a separate file.

There will be other blit code showing up, and it seems like the place
you'd look.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
adae027260bedc7af73e5cc7a74af3cafa4ab460 08-Apr-2015 Eric Anholt <eric@anholt.net> vc4: Use the blit interface for updating shadow textures.

This lets us plug in a better blit implementation and have it impact the
shadow update, too.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
7bc39c8418ee5de49e3d38aaf5f9e478ff78874c 13-Jan-2015 Eric Anholt <eric@anholt.net> vc4: Add a dump-the-surface-contents routine.

This has been useful once again while trying to debug stride issues
between render targets and texturing.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
7f797e3d173c7a84aa5d231a1c173b00e84ea44f 16-Mar-2015 Eric Anholt <eric@anholt.net> vc4: Fix pitch alignment of linear textures.

Fixes some non-power-of-two texture rendering when I force ARGB8888 to
raster.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
8975a09494cb6ee7b010fddb0ca5a7a74d46b0c7 16-Mar-2015 Eric Anholt <eric@anholt.net> vc4: Fix use of a bool as an enum.

The enum compared to was 0, so it worked out, but it sure looked wrong.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
04605c21f65bfbc78018c5bafa8cbf49e96a33b5 24-Mar-2015 Eric Anholt <eric@anholt.net> vc4: Decide the HW's format before laying out the miptree.

I'm experimenting with a workaround for raster texture misrendering on
hardware, and this lets me look at the format chosen when computing
strides.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
af3d7471943d54e692f2dd7448321a4f96e56ed2 24-Mar-2015 Eric Anholt <eric@anholt.net> vc4: Make a new #define for making code conditional on the simulator.

I'd like to compile as much of the device-specific code as possible
when building for simulator, and using if (using_simulator) instead of
ifdefs helps.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
9bafcf630ab009b3b39bbe3c0f4370386bc5a6b2 24-Mar-2015 Eric Anholt <eric@anholt.net> vc4: Add some useful debug printfs for miptrees.

I keep rewriting these.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
effb39e8998e8fc9e07b2658b9895cf5d3a9cc7a 26-Dec-2014 Eric Anholt <eric@anholt.net> vc4: Drop the content of vc4_flush_resource().

The callers all follow it with a flush of the context, and the flush of
the context gives us more information about how things are being flushed.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
113044e1b9d8f70a26f826f7c03adcbbc8ecb138 17-Dec-2014 Eric Anholt <eric@anholt.net> vc4: Drop a weird argument in the BOs-from-handles API.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
21577571b37e68edc0422fbf80932588a4614abc 20-Nov-2014 Eric Anholt <eric@anholt.net> vc4: Update for new kernel ABI with async execution and waits.

Our submits now return immediately and you have to manually wait for
things to complete if you want to (like a normal driver).
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
18ccda7b86b8f7ab7466265aefb3f3e773f4a757 24-Oct-2014 Eric Anholt <eric@anholt.net> vc4: When asked to discard-map a whole resource, discard it.

This saves a bunch of extra flushes when texsubimaging a whole texture
that's been used for rendering, or subdataing a whole BO. In particular,
this massively reduces the runtime of piglit texture-packed-formats (when
the probes have been moved out of the inner loop).
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
a71c3b885a532016aa426b5bb753291cffe39a44 24-Oct-2014 Eric Anholt <eric@anholt.net> vc4: Refactor flushing before mapping a BO.

I'm going to want to make some other decisions here before flushing.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
6212d2402df4ad0658cbb98ce889e35ef5f32fa3 18-Oct-2014 Eric Anholt <eric@anholt.net> vc4: Translate 4-byte index buffers to 2 bytes.

Fixes assertion failures in 14 piglit tests (half of which now pass).
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
572fba95e4cd85aebdde9bd757c17f719af2af04 03-Oct-2014 Eric Anholt <eric@anholt.net> vc4: Add support for rebasing texture levels so firstlevel == 0.

GLES2 doesn't have GL_TEXTURE_BASE_LEVEL, so the hardware doesn't. Fixes
piglit levelclamp, tex-miplevel-selection, and texture-storage/2D mipmap
rendering.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
67aea92964ed06f10097271822f4a16378138be5 07-Oct-2014 Eric Anholt <eric@anholt.net> vc4: Mostly fix offset calculation for NPOT mipmap levels.

The non-base NPOT levels are stored as POT-aligned images. We get that
POT alignment by minifying the POT-aligned base level.

This means that level strides are also POT aligned, so we have to tell the
rendering mode config that our resource is larger than the actual
requested area.

Fixes the fbo-generatemipmap-formats NPOT cases. Regresses
depthstencil-render-miplevels 273 * -- the texture presentation now works
(where it was completely broken before), it looks like there's some
overflow of image bounds happening at the lower miplevels.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
730267eb23b418637c78662a77de0a93af91be35 28-Sep-2014 Eric Anholt <eric@anholt.net> vc4: Add support for texture cube maps.

It's not passing some of the piglit tests, because it looks like at small
miplevels some contents from surrounding faces are getting filtered in at
the corners. It does get 7 new tests passing.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
c4245d8b2ecac4a2fd4207894a722be6177c60bc 28-Sep-2014 Eric Anholt <eric@anholt.net> vc4: Rename the slice's size0.

In the other related fields, "0" refers to the size of the first miplevel,
while this is a field in a slice. The other implicit slices we have
(cubemap layers) don't vary in size compared to the first one.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
d71a9b7d9dc65a5cd56a81a816bc05535031d706 22-Aug-2014 Eric Anholt <eric@anholt.net> vc4: Handle a couple of the transfer map flags.

This is part of fixing extremely long runtimes on some piglit tests that
involve streaming vertex reuploads due to format conversions, and will
similarly be important for X performance, which relies on these flags.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
8d8a5eb792c662a8def7c9ab65d2df67972cf659 23-Aug-2014 Eric Anholt <eric@anholt.net> vc4: Fix save/restore of the VS/FS in the blitter.

When I made the shader cache take the .fs member and moved the binding
point to .bind_fs, I failed to update these. Fixes crashes in
copyteximage-related tests.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
b064c9103d8fc0bb4ae8fe597b4d9de82a274638 20-Aug-2014 Eric Anholt <eric@anholt.net> vc4: Add support for all the texture and FBO formats we can.

Now that tiling is in place, we can expose the other formats. Depth is
still broken (need to make changes in the shader), but if you don't expose
it things crash all over. SNORM is dropped, but we could re-add it later
with some shader fixes to handle converting between [0,1] and [-1,1].
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
3a1efcc7f9f99d42cda191ded1eb78140366c708 19-Aug-2014 Eric Anholt <eric@anholt.net> vc4: Add support for texture tiling.

This still treats everything as RGBA8888 for the most part, same as
before. This is a prerequisite for handling other texture formats, since
only RGBA8888 has a raster-layout mode.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
b0a1e401a93b7b13870b936bc667b3fc15dba6d5 19-Aug-2014 Eric Anholt <eric@anholt.net> vc4: Include stdio/stdlib in headers so I don't have to include it per file.

There are a few tools I want to have always available, and fprintf() and
abort() are among them.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
8795341e2c113176286e9bb6ef3fe716905d7d30 18-Aug-2014 Eric Anholt <eric@anholt.net> vc4: Don't forget to set up the offset for render targets.

This almost fixes fbo-generatemipmap rendering, except that the 1x1 level
isn't getting rendered.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
63fe494877177d24fd36f9955b69331939b7798c 18-Aug-2014 Eric Anholt <eric@anholt.net> vc4: Fix multi-level texture setup.

We weren't accounting for the level 0 offset in the texture setup (so it
only worked if it happened to be a single-level texture), and doing so
required that we get the level 0 offset page aligned so that the offset
bits don't get interpreted as the texture format and such.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
ff4748491b27a0b52564e48788b70cd617ed0ff2 03-Aug-2014 Eric Anholt <eric@anholt.net> vc4: Store the (currently always linear) tiling format in the resource.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
2259cc5aebcb16636b1399dd438beed9d9867e67 02-Aug-2014 Eric Anholt <eric@anholt.net> vc4: Avoid flushing when mapping buffers that aren't in the batch.

This should prevent a bunch of unnecessary flushes for things like
updating immediate vertex data.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
6b2583412f0789d2aec71e55e1e187d1ad17f721 31-Jul-2014 Eric Anholt <eric@anholt.net> vc4: Drop the flush at the end of the draw

Now we actally get multiple draw calls per submit.
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c
1850d0a1cbf044dc4d29b7a9ede2c634f667d853 19-Jun-2014 Eric Anholt <eric@anholt.net> vc4: Initial skeleton driver import.

This mostly just takes every draw call and turns it into a sequence of
commands that clear the FBO and draw a single shaded triangle to it,
regardless of the actual input vertices or shaders. I copied the initial
driver skeleton mostly from freedreno, and I've preserved Rob Clark's
copyright for those. I also based my initial hardcoded shaders and
command lists on Scott Mansell (phire)'s "hackdriver" project, though the
bit patterns of the shaders emitted end up being different.

v2: Rebase on gallium megadrivers changes.
v3: Rebase on PIPE_SHADER_CAP_MAX_CONSTS change.
v4: Rely on simpenrose actually being installed when building for
simulation.
v5: Add more header duplicate-include guards.
v6: Apply Emil's review (protection against vc4 sim and ilo at the same
time, and dropping the dricommon drm bits) and fix a copyright header
(thanks, Roland)
/external/mesa3d/src/gallium/drivers/vc4/vc4_resource.c