summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2021-06-02docs: add VK_EXT_extended_dynamic_state2 features.txt entrystate2jenkinsTapani Pälli1-0/+1
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
2021-06-02anv: toggle on VK_EXT_extended_dynamic_state2Tapani Pälli1-0/+10
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
2021-06-02anv: support blending logic op dynamic stateTapani Pälli6-35/+79
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
2021-06-02anv: centralize vk_to_intel_logic_op arrayTapani Pälli2-2/+4
This avoids multiple copies as we will need this in multiple places. Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
2021-06-02anv: support primitive restart enable dynamic stateTapani Pälli5-7/+27
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
2021-06-02anv: support depth bias enable dynamic stateTapani Pälli6-5/+37
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
2021-06-02anv: support rasterizer discard dynamic stateTapani Pälli5-74/+159
Implemented by emitting 3DSTATE_STREAMOUT packet. v2: logic fixes + merge and emit properly all contents (Lionel) Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
2021-06-02anv: introduce new dynamic statesTapani Pälli1-1/+17
These will be used for VK_EXT_extended_dynamic_state2. Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
2021-06-02aux/draw: fix aalines and aapoints for shaders with explicit FragData outputsMike Blumenkrantz1-2/+2
all color outputs need to be rewritten with coverage, not just FragColor Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com> Reviewed-by: Dave Airlie <airlied@redhat.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11065>
2021-06-02v3dv: implement external semaphore/fence extensionsIago Toral Quiroga4-13/+365
This provides most of the implementation, but there are some things we cannot enable until we improve of kernel submit interface, namely: We don't expose capacity to export SYNC_FD, although we do have the implementation in place. This requires that we improve our kernel interface and event wait implementation first so we can cover the corner case where the application submits a command buffer that includes a VkCmdWaitForEvents and tries to export a SYNC_FD from its signal semaphores or fence before it the event is signaled and the command buffer is sent to the kernel for execution in full. Likewise, we can't currently import semaphores. This is because our current kernel submit interface can only take one syncobj. We have been working around this so far by waiting on the last syncobj produced from the device whenever we had to wait on any semaphores (which is obviously suboptimal already), but this won't work as soon as we allow importing external semaphores, as those could (and would typically) be produced from a different device. Once we address the kernel bits, we should come back and enable SYNC_FD exports as well as semaphore imports. Relevant CTS tests: dEQP-VK.api.external.fence.* dEQP-VK.api.external.semaphore.* dEQP-VK.synchronization.cross_instance.* Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11105>
2021-06-02v3dv: don't keep an open file descriptor for imported fences/semaphoresIago Toral Quiroga3-34/+12
We can (and should) close the descriptor immediately after the import. Gets the following CTS test to pass without requiring to increase limits for open file descriptors: dEQP-VK.synchronization.basic.binary_semaphore.chain Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11105>
2021-06-02android: i965: remove brw_ff_gs_emit.c from Makefile.sourcesMauro Rossi1-1/+0
Fixes the following building error: clang: error: no such file or directory: 'external/mesa/src/mesa/drivers/dri/i965/brw_ff_gs_emit.c' clang: error: no input files Fixes: 897bcc1e6b42 ("i965: drop old brw ff gs code.") Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10718>
2021-06-02android: intel/compiler: add brw_compile_ff_gs.c to Makefile.sourcesMauro Rossi1-0/+1
Fixes the following building error: FAILED: out/target/product/x86_64/obj_x86/SHARED_LIBRARIES/i965_dri_intermediates/LINKED/i965_dri.so ... ld.lld: error: undefined symbol: brw_compile_ff_gs_prog >>> referenced by brw_ff_gs.c:56 (external/mesa/src/mesa/drivers/dri/i965/brw_ff_gs.c:56) Fixes: 52e426fd8b57 ("intel/compiler: add support for compiling fixed function gs") Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10718>
2021-06-02CI: Fix path confusion in OpenCL Piglit executionDaniel Stone1-7/+8
When we remove the contents of the results directory, we `cd` into it. The script expects that $PWD is /piglit, and $OLDPWD is the Mesa build directory, however the cd into the results directory will make $OLDPWD be $BUILDDIR/results. This means that Piglit emits into results/results/ which looks weird, but more importantly also fails OpenCL Piglit execution, because we can't find our baseline result expectations. Fix it by using an explicit variable rather than relying on history. Fixes: 683ddf19dc85 ("ci: remove results directory content only with piglit runners") Ref: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10856 Signed-off-by: Daniel Stone <daniels@collabora.com> Reviewed-by: Martin Peres <martin.peres@mupuf.org> Reviewed-by: Andres Gomez <agomez@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11126>
2021-06-02Revert "CI: Disable rk3399-gru-kevin jobs for now"Daniel Stone1-3/+3
We've got 7/10 devices back now, that'll do. This reverts commit 79a7f33710b84218a040a2bd540d7c39d1c0d2d4. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11127>
2021-06-02sparc: Avoid some redefinition warningsMatt Turner2-10/+0
These definitions are provided by m_vector_asm.h now. Fixes: 67ffb853f05 ("sparc: Reuse m_vector_asm.h.") Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11119>
2021-06-02ci/lava: Switch LAVA jobs to x86 runnersTomeu Vizoso10-49/+39
So we don't need to provision aarch64 servers, which are these days rarer than x8_64. In the switch to the new runner tags, switch to one which contains the device type, so we can dimension the runner jobs taking into account the number of DUTs available. Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> Acked-by: Daniel Stone <daniels@collabora.com> Reviewed-by: Emma Anholt <emma@anholt.net> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11108>
2021-06-02freedreno/afuc: Print uintptr_t with PRIxPTRMatt Turner1-1/+1
Fixes a compilation error on 32-bit. Fixes: bba61cef38b ("freedreno/afuc: Add emulator mode to afuc-disasm") Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11118>
2021-06-02ci/android: Update to building for SDK 29 by default.Eric Anholt1-1/+1
This will get us build coverage of a bunch of Vulkan features, plus the ELF TLS support. Reviewed-by: Roman Stratiienko <r.stratiienko@gmail.com> Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10389>
2021-06-02android: Fix ELF TLS support.Eric Anholt2-2/+19
Android 29 introduced general-dynamic TLS variable support ("quick function call to look up the location of the dynamically allocated storage"), while Mesa on normal Linux has used initial-exec ("use some of the startup-time fixed slots, hope for the best!"). Both would be better options than falling all the way back to pthread_getspecific(), which is the alternative we have pre-29. Reviewed-by: Roman Stratiienko <r.stratiienko@gmail.com> Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10389>
2021-06-02util: Add a helper macro for defining initial-exec variables.Emma Anholt7-25/+28
I'm going to add another case for Android shortly, and then we can keep the logic all in one spot. Reviewed-by: Roman Stratiienko <r.stratiienko@gmail.com> Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10389>
2021-06-02aux/draw: if pipe_draw_info::index_bias_varies is not set, ignore index_bias ↵Mike Blumenkrantz1-6/+10
for N>1 this enables some optimizations in lavapipe Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com> Reviewed-by: Dave Airlie <airlied@redhat.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10995>
2021-06-02aux/trace: dump resource for samplerview and surfaceMike Blumenkrantz1-0/+2
this is the most important member Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10974>
2021-06-01docs/gallium: Document the index buffer format conventionAlyssa Rosenzweig1-0/+5
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com> Reviewed-by: Emma Anholt <emma@anholt.net> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10990>
2021-06-01si: Use Rn_UINT instead of In_UINT for index buffersAlyssa Rosenzweig1-3/+3
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com> Reviewed-by: Emma Anholt <emma@anholt.net> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10990>
2021-06-01lima: Use Rn_UINT instead of In_UINT for index buffersAlyssa Rosenzweig1-3/+3
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com> Reviewed-by: Emma Anholt <emma@anholt.net> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10990>
2021-06-01freedreno: Use Rn_UINT instead of In_UINT for index buffersAlyssa Rosenzweig1-3/+3
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com> Reviewed-by: Emma Anholt <emma@anholt.net> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10990>
2021-06-01etnaviv: Use Rn_UINT instead of In_UINT for index buffersAlyssa Rosenzweig1-2/+2
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com> Reviewed-by: Emma Anholt <emma@anholt.net> Reviewed-by: Lucas Stach <l.stach@pengutronix.de> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10990>
2021-06-01v3d: Use Rn_UINT instead of In_UINT for index buffersAlyssa Rosenzweig1-3/+3
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com> Reviewed-by: Emma Anholt <emma@anholt.net> Reviewed-by: Juan A. Suarez <jasuarez@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10990>
2021-06-01vc4: Use Rn_UINT instead of In_UINT for index buffersAlyssa Rosenzweig1-2/+2
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com> Reviewed-by: Emma Anholt <emma@anholt.net> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10990>
2021-06-01zink: ci updatesMike Blumenkrantz1-1/+0
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11093>
2021-06-01zink: optimize buffer rebindsMike Blumenkrantz1-64/+93
by using the bind counts, the common cases of rebinds can be immediately handled without unnecessary iteration, and following this each rebind can be evaluated to ensure that every necessary descriptor was rebound in order to catch any remaining corner cases that may not be handled in the optimized rebind path Reviewed-by: Dave Airlie <airlied@redhat.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11093>
2021-06-01zink: unify more resource bind count tracking codeMike Blumenkrantz1-43/+76
we want to avoid updating these values when possible in order to reduce overhead, which means that if a descriptor is being replaced, it should be updated only if the replacement is not the same resource Reviewed-by: Dave Airlie <airlied@redhat.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11093>
2021-06-01zink: unify code for updating res->bind_count valuesMike Blumenkrantz1-20/+20
Reviewed-by: Dave Airlie <airlied@redhat.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11093>
2021-06-01zink: add a second descriptor managerMike Blumenkrantz9-17/+653
this is the "lazy" descriptor manager, which aims to perform the least amount of work calculating updates while ignoring the overhead that an update may incur: effectively the inverse of the caching manager in this initial implementation, divergence exists between the descriptor layouts of the cached manager and the lazy manager in order to avoid incurring regressions in the existing descriptor architecture; this will be reconciled in a followup MR that refactors and unifies descriptor layouts during this interim period and until such reconciliation occurs, the default descriptor manager is now the lazy manager for testing purposes as there are no changes here which can affect the existing infrastructure the caching descriptor manager can be selected with the ZINK_CACHE_DESCRIPTORS env var and will be automatically used for vulkan drivers which don't support the features required for lazy mode (templates) Reviewed-by: Dave Airlie <airlied@redhat.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11093>
2021-06-01panfrost/ci: Report flakes on IRCAlyssa Rosenzweig1-0/+11
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11022>
2021-06-01ci: Move the flakes channels to OFTCEmma Anholt2-2/+2
Following the rest of our channels, move CI reporting over. Seems to still work fine. This affects freedreno and iris. Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11020>
2021-06-01ci: Add known-flake handling for the IRC flake reportsEmma Anholt4-104/+184
Now, flakes that aren't in the *-flakes.txt get a "NEW" in their report so I can watch for them. The bash was unwieldy and made debugging hard, so I switched to python. Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11020>
2021-06-01anv: fix availability for copying timestamp query resultsMike Blumenkrantz1-1/+1
idx here is the index of the value being written, so if it isn't used/incremented when the query result is written, the availability result will clobber it and be written to the same buffer offset Cc: mesa-stable@lists.freedesktop.org Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11116>
2021-06-01panfrost: Eliminate reserve_* functionsAlyssa Rosenzweig5-92/+31
We always want to reserve _something_, so reserve what we need at batch creation time and stop trying to re-reserve in a zillion places after. This has a neglible (<128 bytes per batch) increase in memory usage for compute-only workloads, but given the amount of simplication, that's a fair tradeoff. Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11074>
2021-06-01panfrost: Elucidate thread group split fieldAlyssa Rosenzweig3-5/+9
Last unknown field in the XML :-) Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11074>
2021-06-01panfrost: Bubble up errorsAlyssa Rosenzweig3-10/+9
Instead of punting to PAN_MESA_DEBUG=msgs, which we can now remove. Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11074>
2021-06-01panfrost: Minor changes to draw_vboAlyssa Rosenzweig1-8/+2
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11074>
2021-06-01panfrost: Write translate_index_size betterAlyssa Rosenzweig1-9/+9
Encodings line up with Gallium except for uint32. Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11074>
2021-06-01panfrost: Dirty track stack sizesAlyssa Rosenzweig2-6/+6
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11074>
2021-06-01panfrost: Don't allocate empty varying bufferAlyssa Rosenzweig1-3/+5
If the FS doesn't actually read any varyings, there's no point. Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11074>
2021-06-01panfrost: Dirty track constant buffersAlyssa Rosenzweig2-4/+23
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11074>
2021-06-01panfrost: Analyze sysval dirty flagsAlyssa Rosenzweig3-0/+63
We want dirty tracking for constant buffer uploads, but which dirty flags are needed depend on what the sysvals are. So for each sysval, record a corresponding dirty flag at compile time, so at draw-time the check is easy. Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11074>
2021-06-01panfrost: Add draw parameters dirty flagsAlyssa Rosenzweig1-0/+2
Needed to track some new sysvals. Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11074>
2021-06-01panfrost: Shrink pan_draw_mode return typeAlyssa Rosenzweig1-1/+1
Let gcc emit ldrb instead of ldr for the table. Found by perf, but total waste of time >_> Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11074>