platform/upstream/mesa.git
3 years agoci: Add "check mr" job to needs: of build jobs
Michel Dänzer [Thu, 22 Oct 2020 15:58:35 +0000 (17:58 +0200)]
ci: Add "check mr" job to needs: of build jobs

So that if the former fails, build & test jobs won't run, wasting less
time & CI resources.

This requires slight tweaks to the rules: of the former job, to make
sure it always exists when the build jobs do.

Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7278>

3 years agoaco: remove isel_context::allocated
Rhys Perry [Thu, 8 Oct 2020 14:11:12 +0000 (15:11 +0100)]
aco: remove isel_context::allocated

Now that we have Program::temp_rc, we can replace it with the first
temporary id allocated for NIR's ssa defs.

No fossil-db changes on Navi.

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7067>

3 years agovirgl: Always enable emulated BGRA and swizzling unless specifically told not to
Rohan Garg [Fri, 25 Sep 2020 15:25:34 +0000 (17:25 +0200)]
virgl: Always enable emulated BGRA and swizzling unless specifically told not to

The emulation is turned on by default only for GLES hosts when the
host does not support the BGRA/RGBA external/internal format
combination.

This can be turned off by setting VIRGL_DEBUG=noemubgra,nobgraswz
environment variable.

Signed-off-by: Rohan Garg <rohan.garg@collabora.com>
Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6847>

3 years agonir/lower_memcpy: Don't mask the store
Jason Ekstrand [Sun, 25 Oct 2020 11:28:52 +0000 (06:28 -0500)]
nir/lower_memcpy: Don't mask the store

For constant-size memcpys, we can do as much as a vec4 at a time.  We
were accidentally masking the store to only the .x component.

Fixes: a3177cca996145 "nir: Add a lowering pass to lower memcpy"
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7305>

3 years agofreedreno: Disallow tiled if SHARED and not QCOM_COMPRESSED
Rob Clark [Sun, 25 Oct 2020 21:13:38 +0000 (14:13 -0700)]
freedreno: Disallow tiled if SHARED and not QCOM_COMPRESSED

If the user is not aware of modifiers, and wants to allocate a shared
resource, we shouldn't leave them with tiled.

Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3678
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7308>

3 years agofreedreno: Update import/export traces
Rob Clark [Sun, 25 Oct 2020 20:07:23 +0000 (13:07 -0700)]
freedreno: Update import/export traces

Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7308>

3 years agost/va: fix build with old libva
Andrew Randrianasulu [Fri, 23 Oct 2020 07:52:58 +0000 (10:52 +0300)]
st/va: fix build with old libva

Closes: #3682
Fixes: 0eccd158

Reviewed-by: Leo Liu <leo.liu@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7297>

3 years agoglx: get rid of memory leak
Andrii Simiklit [Mon, 26 Oct 2020 09:32:57 +0000 (11:32 +0200)]
glx: get rid of memory leak

It fixes Coverity issue: `CID 1468356:  Resource leaks  (RESOURCE_LEAK)`

Fixes: e1964496 ("glx: initial plumbing to let users force-enable/disable extensions")
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Signed-off-by: Andrii Simiklit <andrii.simiklit@globallogic.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7310>

3 years agomapi: do not return thread-specific data for wrong thread
Erik Faye-Lund [Thu, 22 Oct 2020 17:06:44 +0000 (19:06 +0200)]
mapi: do not return thread-specific data for wrong thread

If the current thread asks for either the current context or the current
dispatch table for a thread that has not yet set any context current, we
currently risk returning the wrong data if there was only a single
thread that had called u_current_init() yet.

So let's first check if the only expected thread-id is the one getting
these, and return NULL and/or __glapi_noop_table instead if not.

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Louis-Francis Ratté-Boulianne <lfrb@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7280>

3 years agomapi: do not call thread-unsafe dispatch getter
Erik Faye-Lund [Thu, 22 Oct 2020 16:21:07 +0000 (18:21 +0200)]
mapi: do not call thread-unsafe dispatch getter

When not using the USE_ELF_TLS code-path, this function is
thread-unsafe, because it returns u_current_table if set without
consulting the ThreadSafe variable in u_current.c.

There's a short period where this can cause problems, if a program uses
multiple threads, but only have made a single context current so far. If
the program issues OpenGL commands from the initialized thread while a
new thread is setting u_current_table to __glapi_noop_table, we will
return the wrong table here.

It doesn't seem right to have two versions of the code that does the
same anyway, so let's use the version that doesn't have this problem
instead.

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Louis-Francis Ratté-Boulianne <lfrb@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7280>

3 years agomapi: remove unused function
Erik Faye-Lund [Thu, 22 Oct 2020 16:11:15 +0000 (18:11 +0200)]
mapi: remove unused function

This function is unused, and also unsafe. Let's just get rid of it.

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Louis-Francis Ratté-Boulianne <lfrb@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7280>

3 years agoaco: use do_pack() for self-intersecting operations.
Daniel Schürmann [Fri, 16 Oct 2020 11:29:28 +0000 (13:29 +0200)]
aco: use do_pack() for self-intersecting operations.

This improves the code for GFX8+, but is slightly
worse for GFX6_7.

Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7189>

3 years agoaco: improve code sequences for 16bit packing
Daniel Schürmann [Thu, 15 Oct 2020 17:47:12 +0000 (19:47 +0200)]
aco: improve code sequences for 16bit packing

This includes using alignbyte for GFX6 and GFX7,
and 32-bit instructions for GFX8.

Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7189>

3 years agoaco: refactor GFX6_7 subdword copy lowering
Daniel Schürmann [Fri, 16 Oct 2020 13:12:28 +0000 (15:12 +0200)]
aco: refactor GFX6_7 subdword copy lowering

The new code uses alignbyte which leads
to shorter code and preserves the operand's
registers.

Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7189>

3 years agoiris: add support for fence signal capability
Eleni Maria Stea [Thu, 26 Mar 2020 16:23:08 +0000 (17:23 +0100)]
iris: add support for fence signal capability

This enables GL_EXT_semaphore feature.

v2:
* reversed previous commit that was conditionally setting the signal
  fence capability if the syncobj was present
* reversed previous commit that was introducing a bool has_syncobj that
  is not necessary anymore

v3:
* changed the signal function to use fence->seqno due to recent changes
  to master

v4:
* changed the signal callback to use the new structs of the fences
  backend (iris_fine_fence)

v5:
* removed check for ctx == NULL in iris_fence_signal and await functions
  as at the time they are called we always have a context
* splitted a line to not exceed width

v6:
* put back the if(ctx) check in iris_fence_await, if this is an error
  the fix should be in a different MR

Signed-off-by: Eleni Maria Stea <estea@igalia.com>
Reviewed-by: Rohan Garg <rohan.garg@collabora.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7042>

3 years agoiris: handle PIPE_FD_TYPE_SYNCOBJ type
Eleni Maria Stea [Thu, 26 Mar 2020 16:19:21 +0000 (17:19 +0100)]
iris: handle PIPE_FD_TYPE_SYNCOBJ type

Add support for importing syncobj semaphore types from fd handles.

v2:
* Used a C99 initializer instead of memset for drm_syncobj_handle in
  iris_fence.c

Signed-off-by: Eleni Maria Stea <estea@igalia.com>
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Reviewed-by: Rohan Garg <rohan.garg@collabora.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7042>

3 years agoac/nir: remove bindless image atomic format check
Rhys Perry [Wed, 21 Oct 2020 16:32:40 +0000 (17:32 +0100)]
ac/nir: remove bindless image atomic format check

PIPE_FORMAT_* is supposed to be used and a similar check will probably be
added to nir_validate soon anyway.

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7275>

3 years agodocs: document zink's gl > 3.0 requirements
Erik Faye-Lund [Fri, 23 Oct 2020 07:00:43 +0000 (09:00 +0200)]
docs: document zink's gl > 3.0 requirements

The new versions of OpenGL exposed by Zink requires additional Vulkan
features, so let's document them.

Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7286>

3 years agodocs: do not document required minimum
Erik Faye-Lund [Fri, 23 Oct 2020 07:16:36 +0000 (09:16 +0200)]
docs: do not document required minimum

We already document that shaderClipDistance is required, and for that
feature to be supported maxClipDistances needs to be at least 8. So
there's no point in documenting the maxClipDistances-requirement.

Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7286>

3 years agozink: verify geometry shader feature
Erik Faye-Lund [Fri, 23 Oct 2020 07:35:51 +0000 (09:35 +0200)]
zink: verify geometry shader feature

We shouldn't try to use geometry shaders on implementations that don't
support them. So let's verify the feature before using it.

Fixes: 8028991f361 ("zink: enable gs pipe caps")
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7287>

3 years agogallivm: lower flrp for all sizes.
Dave Airlie [Thu, 8 Oct 2020 05:54:15 +0000 (15:54 +1000)]
gallivm: lower flrp for all sizes.

This fixes:
builtin-float-mix-1.0.generated.cl

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7309>

3 years agogallivm: get correct min/max behaviour for kernels.
Dave Airlie [Fri, 9 Oct 2020 00:27:00 +0000 (10:27 +1000)]
gallivm: get correct min/max behaviour for kernels.

NaN handling for CL is harsher than GLSL

Fixes piglit min/max CL tests

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7309>

3 years agogallivm: add support for 8/16-bit mul_hi
Dave Airlie [Thu, 8 Oct 2020 21:13:45 +0000 (07:13 +1000)]
gallivm: add support for 8/16-bit mul_hi

This 32x32 code only needs small tweaks for this case.

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7309>

3 years agogallivm: handle sub-32 bit masked stores.
Dave Airlie [Thu, 8 Oct 2020 04:32:33 +0000 (14:32 +1000)]
gallivm: handle sub-32 bit masked stores.

This is used for register stores < 32 bit size.

Fixes:
builtin-char-rotate-1.0.generated.cl

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7309>

3 years agogallivm: add b2i8/b216 support
Dave Airlie [Thu, 8 Oct 2020 04:31:51 +0000 (14:31 +1000)]
gallivm: add b2i8/b216 support

This is part of the fix for
builtin-*-rotate-1.0.generated.cl

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7309>

3 years agogallivm: add 16-bit split/merge support.
Dave Airlie [Thu, 8 Oct 2020 03:44:47 +0000 (13:44 +1000)]
gallivm: add 16-bit split/merge support.

Fixes piglit load-hi16.cl, load-lo16.cl

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7309>

3 years agogallivm: fix 64->16 f2f16
Dave Airlie [Thu, 8 Oct 2020 03:17:56 +0000 (13:17 +1000)]
gallivm: fix 64->16 f2f16

llvm appears to callout to a library to do 64-bit->16-bit
fp trunc, just trunc to 32-bit first to avoid it.

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7309>

3 years agollvmpipe: fix 8/16 bit global stores
Dave Airlie [Thu, 8 Oct 2020 02:47:06 +0000 (12:47 +1000)]
llvmpipe: fix 8/16 bit global stores

Fixes:
CL vstore_half-float-global*

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7309>

3 years agoanv: report latest extension spec versions
Lionel Landwerlin [Wed, 14 Oct 2020 15:04:56 +0000 (18:04 +0300)]
anv: report latest extension spec versions

In many cases those revision happened every before the first public
release of the spec and we just forgot to update our numbers.

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Acked-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7136>

3 years agoandroid: panfrost: Move nir_undef_to_zero to util
Marijn Suijten [Fri, 23 Oct 2020 22:50:26 +0000 (00:50 +0200)]
android: panfrost: Move nir_undef_to_zero to util

    clang: error: no such file or directory: 'external/mesa3d/src/panfrost/midgard/nir_undef_to_zero.c'
    clang: error: no input files

Fixes: 86b2b4eb768 ("panfrost: Move nir_undef_to_zero to common util/")
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Reviewed-by: Mauro Rossi <issor.oruam@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7298>

3 years agoutil/xmlconfig: Disable for Windows like Android
James Park [Fri, 7 Aug 2020 02:48:39 +0000 (19:48 -0700)]
util/xmlconfig: Disable for Windows like Android

The code does not compile on Windows, so just disable for now. There is
already a pattern to do this for Android.

Stop including expat dependency if building Windows.

Disable WITH_XMLCONFIG if _WIN32 is defined.

Tuck _WIN32 incompatible includes inside WITH_XMLCONFIG.

Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7249>

3 years agogallivm: add load/store scratch support.
Dave Airlie [Thu, 8 Oct 2020 01:09:11 +0000 (11:09 +1000)]
gallivm: add load/store scratch support.

Scratch space is per-thread space, so allocate the scratch size
* vector width, and add a per-thread base offset to each
load/store.

This is needed for OpenCL private memory space

Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7304>

3 years agofrontends/va: Initialize drm modifier on import.
Bas Nieuwenhuizen [Sat, 24 Oct 2020 14:04:29 +0000 (16:04 +0200)]
frontends/va: Initialize drm modifier on import.

On import we don't get a modifier so the modifier in the Gallium
handle should be set to DRM_FORMAT_MOD_INVALID instead of LINEAR.

Otherwise things like screen capture break if the driver actually
starts supporting modifiers.

Acked-by: Leo Liu <leo.liu@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7302>

3 years agogallium: update abs_delta segementation parameter
SureshGuttula [Fri, 23 Oct 2020 10:25:02 +0000 (15:55 +0530)]
gallium: update abs_delta segementation parameter

This patch updates segmentation_abs_or_delta_update value based on
VP9 bitstream header info.

Netflix videos are showing corrupted output when codec is HW vp9
and segemantion enabled.This change will fix the corruption issue.

Signed-off-by: SureshGuttula <suresh.guttula@amd.com>
Reviewed-by: Leo Liu <leo.liu@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7290>

3 years agofrontends/omx/enc: fix omx h264 encoding force-keyframe-period issue.
Ruijing Dong [Thu, 22 Oct 2020 18:15:28 +0000 (14:15 -0400)]
frontends/omx/enc: fix omx h264 encoding force-keyframe-period issue.

poc was not set to 0 in IDR frames except the first one.

Signed-off-by: Ruijing Dong <Ruijing.Dong@amd.com>
Reviewed-by: Leo Liu <leo.liu@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7293>

3 years agomesa: Remove the key parameter from the _mesa_HashDeleteAll callback
Ian Romanick [Thu, 15 Oct 2020 17:57:58 +0000 (10:57 -0700)]
mesa: Remove the key parameter from the _mesa_HashDeleteAll callback

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7171>

3 years agomesa: Remove the key parameter from the _mesa_HashWalk callback
Ian Romanick [Mon, 12 Oct 2020 23:52:09 +0000 (16:52 -0700)]
mesa: Remove the key parameter from the _mesa_HashWalk callback

_mesa_HashWalkLocked too.  After the previous couple commits, there are
no users.  This eliminates a lot of unused parameter warnings.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7171>

3 years agoi965: Get the gl_perf_query_object Id from the object
Ian Romanick [Mon, 12 Oct 2020 23:46:24 +0000 (16:46 -0700)]
i965: Get the gl_perf_query_object Id from the object

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7171>

3 years agomesa: Store the atlas Id in the gl_bitmap_atlas structure
Ian Romanick [Mon, 12 Oct 2020 23:45:45 +0000 (16:45 -0700)]
mesa: Store the atlas Id in the gl_bitmap_atlas structure

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7171>

3 years agomesa: Open-code hash walk in _mesa_HashPrint
Ian Romanick [Mon, 12 Oct 2020 23:44:18 +0000 (16:44 -0700)]
mesa: Open-code hash walk in _mesa_HashPrint

Previously the deleted key data would get printed at the beginning and
the end.  I don't think that was intentional, so I changed it.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7171>

3 years agoamd: print NUM_PKRS with AMD_DEBUG=info on gfx10.3
Marek Olšák [Wed, 21 Oct 2020 21:48:54 +0000 (17:48 -0400)]
amd: print NUM_PKRS with AMD_DEBUG=info on gfx10.3

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7264>

3 years agoamd: replace 0x028848 with the register definition
Marek Olšák [Tue, 20 Oct 2020 21:18:16 +0000 (17:18 -0400)]
amd: replace 0x028848 with the register definition

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7264>

3 years agoamd: update gfx10-rsrc.json for gfx10.3
Marek Olšák [Wed, 21 Oct 2020 22:18:46 +0000 (18:18 -0400)]
amd: update gfx10-rsrc.json for gfx10.3

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7264>

3 years agoamd: correct typos in gfx10-rsrc.json
Marek Olšák [Wed, 21 Oct 2020 22:17:48 +0000 (18:17 -0400)]
amd: correct typos in gfx10-rsrc.json

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7264>

3 years agoamd: regenerate gfx103.json from kernel headers
Marek Olšák [Tue, 20 Oct 2020 21:17:18 +0000 (17:17 -0400)]
amd: regenerate gfx103.json from kernel headers

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7264>

3 years agoscons/windows: Support build with LLVM 11.
Vinson Lee [Tue, 20 Oct 2020 22:28:56 +0000 (15:28 -0700)]
scons/windows: Support build with LLVM 11.

Added LLVMFrontendOpenMP.
Removed LLVMX86Utils.

Signed-off-by: Vinson Lee <vlee@freedesktop.org>
Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7242>

3 years agoscons: gallium/auxiliary: Unconditionally compile NIR regardless of LLVM
Marijn Suijten [Tue, 20 Oct 2020 22:26:46 +0000 (00:26 +0200)]
scons: gallium/auxiliary: Unconditionally compile NIR regardless of LLVM

NIR sources are not depending on LLVM (anymore?) as can be seen in the
equivalent unconditional inclusion of nir/ source files in meson.build.
Symbols in these files are necessary to compile softpipe:

    Linking build/linux-x86_64-debug/gallium/targets/libgl-xlib/libGL.so.1.5 ...
    /usr/bin/ld: build/linux-x86_64-debug/gallium/drivers/softpipe/libsoftpipe.a(sp_state_shader.os): in function `softpipe_create_shader_state':
    src/gallium/drivers/softpipe/sp_state_shader.c:146: undefined reference to `nir_to_tgsi'
    /usr/bin/ld: build/linux-x86_64-debug/gallium/drivers/softpipe/libsoftpipe.a(sp_state_shader.os): in function `softpipe_create_compute_state':
    src/gallium/drivers/softpipe/sp_state_shader.c:435: undefined reference to `nir_to_tgsi'

Fixes: fa483d8cd1b ("android: gallium/auxiliary: Deduplicate nir_to_tgsi.c inclusion")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3669

Tested-by: Vinson Lee <vlee@freedesktop.org>
Acked-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7250>

3 years agospirv: Fix OpCopyMemorySized
Jason Ekstrand [Fri, 23 Oct 2020 16:24:51 +0000 (11:24 -0500)]
spirv: Fix OpCopyMemorySized

I have no idea how we are passing CTS tests with that bug in there.  I
guess by luck?

Fixes: 8323c03bbfd45 "spirv: Add support for OpCopyMemorySized"
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7294>

3 years agofrontends/omx/h265: Check the pps set before the scaling data
Leo Liu [Tue, 20 Oct 2020 22:51:23 +0000 (18:51 -0400)]
frontends/omx/h265: Check the pps set before the scaling data

Certain clip has no scaling list data in the pps set

Signed-off-by: Leo Liu <leo.liu@amd.com>
Reviewed-by: Boyuan Zhang <Boyuan.Zhang@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7240>

3 years agofrontends/omx/dec: Use the known codec profile when allocating buffers
Leo Liu [Tue, 20 Oct 2020 21:44:13 +0000 (17:44 -0400)]
frontends/omx/dec: Use the known codec profile when allocating buffers

We should use it since the profile has been known already,
otherwise it will get incorrect buffers in some cases.

Signed-off-by: Leo Liu <leo.liu@amd.com>
Reviewed-by: Boyuan Zhang <Boyuan.Zhang@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7240>

3 years agopan/bi: Account for bool32 ld_ubo reads
Alyssa Rosenzweig [Thu, 22 Oct 2020 14:58:04 +0000 (10:58 -0400)]
pan/bi: Account for bool32 ld_ubo reads

Fixes crash in sway.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopanfrost: Don't advertise MSAA on Bifrost
Alyssa Rosenzweig [Thu, 22 Oct 2020 14:57:39 +0000 (10:57 -0400)]
panfrost: Don't advertise MSAA on Bifrost

Not yet supported and rather broken.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopanfrost: Drop PIPE_CAP_GLSL_FEATURE_LEVEL for Bifrost
Alyssa Rosenzweig [Thu, 22 Oct 2020 14:56:54 +0000 (10:56 -0400)]
panfrost: Drop PIPE_CAP_GLSL_FEATURE_LEVEL for Bifrost

We don't want derivative instructions sneaking in from desktop GL before
we support them.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopanfrost: Implement BGRA textures
Alyssa Rosenzweig [Wed, 21 Oct 2020 19:23:16 +0000 (15:23 -0400)]
panfrost: Implement BGRA textures

Stopgap before the full format rework.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopanfrost: Fix component order XML
Alyssa Rosenzweig [Wed, 21 Oct 2020 21:36:52 +0000 (17:36 -0400)]
panfrost: Fix component order XML

For v7. This should be complete and correct now.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Fixes: 8389976b7c0 ("panfrost: XML-ify the blend descriptors")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopanfrost: Calculate thread count on Bifrost
Alyssa Rosenzweig [Thu, 15 Oct 2020 14:30:36 +0000 (10:30 -0400)]
panfrost: Calculate thread count on Bifrost

Since the register is missing in practice we need to apply the
per-architecture default.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopanfrost: Don't export queries
Alyssa Rosenzweig [Wed, 21 Oct 2020 21:20:27 +0000 (17:20 -0400)]
panfrost: Don't export queries

They should be cached onto the device anyway.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopanfrost: Record architecture major version
Alyssa Rosenzweig [Wed, 21 Oct 2020 21:17:41 +0000 (17:17 -0400)]
panfrost: Record architecture major version

This tends to be easier to work with than the raw GPU ID and needs some
special casing for Midgard vs Bifrost/Valhall.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopan/bi: Use nir_undef_to_zero
Alyssa Rosenzweig [Thu, 15 Oct 2020 12:47:40 +0000 (08:47 -0400)]
pan/bi: Use nir_undef_to_zero

We don't handle undefs explicitly in NIR->BIR which means if they aren't
optimized out they won't be RA'd to anything and then backend RA will
crash (as occurs in a glamor shader seen in MATE).

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopanfrost: Move nir_undef_to_zero to common util/
Alyssa Rosenzweig [Thu, 15 Oct 2020 12:45:24 +0000 (08:45 -0400)]
panfrost: Move nir_undef_to_zero to common util/

Will use for Bifrost as well.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopan/bi: Pipe through tls_size
Alyssa Rosenzweig [Thu, 15 Oct 2020 00:48:08 +0000 (20:48 -0400)]
pan/bi: Pipe through tls_size

So we have stack memory allocated.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopan/bi: Implement spilling
Alyssa Rosenzweig [Thu, 15 Oct 2020 00:45:19 +0000 (20:45 -0400)]
pan/bi: Implement spilling

Now that all the helpers are in place, we can wire it up.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopan/bi: Pack LOAD/STORE
Alyssa Rosenzweig [Thu, 15 Oct 2020 00:44:35 +0000 (20:44 -0400)]
pan/bi: Pack LOAD/STORE

LOAD is the same as LOAD_UNIFORM (same instruction, I need to
deduplicate the IR), STORE is basically the same as LOAD.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopan/bi: Add bi_foreach_clause_in_block_safe helper
Alyssa Rosenzweig [Thu, 15 Oct 2020 00:38:33 +0000 (20:38 -0400)]
pan/bi: Add bi_foreach_clause_in_block_safe helper

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopan/bi: Factor out singleton construction from scheduler
Alyssa Rosenzweig [Thu, 15 Oct 2020 00:38:13 +0000 (20:38 -0400)]
pan/bi: Factor out singleton construction from scheduler

We'll reuse the logic in spilling.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopan/bi: Implement bi_spill_register
Alyssa Rosenzweig [Thu, 15 Oct 2020 00:37:45 +0000 (20:37 -0400)]
pan/bi: Implement bi_spill_register

Given a node to spill, insert the appropriate loads and stores to spill
it.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopan/bi: Add helpers for working with singletons
Alyssa Rosenzweig [Thu, 15 Oct 2020 00:36:21 +0000 (20:36 -0400)]
pan/bi: Add helpers for working with singletons

Clauses with exactly one instruction (not canonical terminology to my
knowledge, but the notation is suggestive). Since these are isomorphic
to the instructions themselves, we want helpers to go between the forms.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopan/bi: Add bi_rewrite_index_src_single helper
Alyssa Rosenzweig [Thu, 15 Oct 2020 00:35:59 +0000 (20:35 -0400)]
pan/bi: Add bi_rewrite_index_src_single helper

Ported from Midgard.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopan/bi: Add bi_fill
Alyssa Rosenzweig [Wed, 14 Oct 2020 23:27:47 +0000 (19:27 -0400)]
pan/bi: Add bi_fill

Likewise generates LOAD from tls.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopan/bi: Add bi_spill helper
Alyssa Rosenzweig [Wed, 14 Oct 2020 23:26:58 +0000 (19:26 -0400)]
pan/bi: Add bi_spill helper

Generates STORE to TLS.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopan/bi: Add spills/fills parameters
Alyssa Rosenzweig [Wed, 14 Oct 2020 23:14:43 +0000 (19:14 -0400)]
pan/bi: Add spills/fills parameters

For future shader-db integration.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopan/bi: Implement bi_choose_spill_node
Alyssa Rosenzweig [Wed, 14 Oct 2020 22:59:33 +0000 (18:59 -0400)]
pan/bi: Implement bi_choose_spill_node

Simplified from Midgard.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopan/bi: Add no_spill flag to IR
Alyssa Rosenzweig [Wed, 14 Oct 2020 22:57:20 +0000 (18:57 -0400)]
pan/bi: Add no_spill flag to IR

Will be used to prevent double spills.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopan/bi: Stub spilling
Alyssa Rosenzweig [Wed, 14 Oct 2020 22:53:59 +0000 (18:53 -0400)]
pan/bi: Stub spilling

Like Midgard.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopan/bi: Fix handling of small constants in bi_lookup_constant
Alyssa Rosenzweig [Thu, 15 Oct 2020 01:23:00 +0000 (21:23 -0400)]
pan/bi: Fix handling of small constants in bi_lookup_constant

Streamline the logic and the bug goes away.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopan/bi: Drop 64-bit constant support
Alyssa Rosenzweig [Thu, 15 Oct 2020 01:16:10 +0000 (21:16 -0400)]
pan/bi: Drop 64-bit constant support

We don't support 64-bit clauses and don't intend to (v6 only, v7 doesn't
support them) so this is irrelevant.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopan/mdg: Cleanup mir_rewrite_index_src_single
Alyssa Rosenzweig [Thu, 15 Oct 2020 00:38:43 +0000 (20:38 -0400)]
pan/mdg: Cleanup mir_rewrite_index_src_single

Use idiomatic iterator.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopanfrost: Drop panfrost_vt_emit_shared_memory
Alyssa Rosenzweig [Thu, 15 Oct 2020 01:27:40 +0000 (21:27 -0400)]
panfrost: Drop panfrost_vt_emit_shared_memory

Let's reuse the same routines across Midgard/Bifrost so we get proper
handling of spilling.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopanfrost: Use canonical characterization of tls_size
Alyssa Rosenzweig [Thu, 15 Oct 2020 01:09:48 +0000 (21:09 -0400)]
panfrost: Use canonical characterization of tls_size

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopanfrost: Get rid of the non-native wallpering bits
Boris Brezillon [Sun, 18 Oct 2020 08:53:57 +0000 (10:53 +0200)]
panfrost: Get rid of the non-native wallpering bits

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopanfrost: Use native wallpapering on Bifrost
Boris Brezillon [Sun, 18 Oct 2020 08:38:52 +0000 (10:38 +0200)]
panfrost: Use native wallpapering on Bifrost

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopanfrost: Add support for native wallpapering on Bifrost
Boris Brezillon [Sun, 18 Oct 2020 08:37:13 +0000 (10:37 +0200)]
panfrost: Add support for native wallpapering on Bifrost

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopanfrost: Split panfrost_load_midg()
Boris Brezillon [Sun, 18 Oct 2020 08:34:28 +0000 (10:34 +0200)]
panfrost: Split panfrost_load_midg()

It makes it easier to read and will allow re-using common bits for
the bifrost reload logic.

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopanfrost: Pass the texture payload through a panfrost_ptr
Boris Brezillon [Sun, 18 Oct 2020 08:27:48 +0000 (10:27 +0200)]
panfrost: Pass the texture payload through a panfrost_ptr

We want to be able to pass a payload allocated from the pool, so let's
change the function prototype to allow that.

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopanfrost: Rename gtransfer to transfer
Alyssa Rosenzweig [Wed, 21 Oct 2020 20:00:54 +0000 (16:00 -0400)]
panfrost: Rename gtransfer to transfer

Now that panfrost_transfer is renamed to panfrost_ptr.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopanfrost: Rename panfrost_transfer to panfrost_ptr
Boris Brezillon [Sun, 18 Oct 2020 08:13:18 +0000 (10:13 +0200)]
panfrost: Rename panfrost_transfer to panfrost_ptr

And use it in panfrost_bo to store a GPU/CPU pointer tuple.

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopanfrost: Use real name for attribute's unknown field
Boris Brezillon [Sun, 18 Oct 2020 07:47:45 +0000 (09:47 +0200)]
panfrost: Use real name for attribute's unknown field

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopanfrost: Build blit shaders on Bifrost too
Boris Brezillon [Sat, 17 Oct 2020 12:02:50 +0000 (14:02 +0200)]
panfrost: Build blit shaders on Bifrost too

Now that the compiler has been patched to support all the instructions
used by blit shaders we can compile them unconditionally.

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopanfrost: Make {midgard,bifrost}_compile_shader_nir() return a program object
Boris Brezillon [Sat, 17 Oct 2020 10:08:17 +0000 (12:08 +0200)]
panfrost: Make {midgard,bifrost}_compile_shader_nir() return a program object

Letting the caller zero-initialize the program object is error prone,
not to mention that resources attached to the program might not be freed
by the caller. Let's simplify that by letting the compiler allocate the
panfrost_program object. Those objects should be freed with ralloc_free().

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopan/bi: Add basic support for txf_ms
Boris Brezillon [Sat, 17 Oct 2020 09:32:41 +0000 (11:32 +0200)]
pan/bi: Add basic support for txf_ms

We currently don't support txf_ms instructions specifying a texel offset
src.

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopan/bi: Support the case where TEXC needs 0 or 1 staging reg
Boris Brezillon [Sat, 17 Oct 2020 09:30:05 +0000 (11:30 +0200)]
pan/bi: Support the case where TEXC needs 0 or 1 staging reg

No need to add a COMBINE instruction if TEXC only needs zero or one
staging reg.

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopan/bi: Add support for load_sample_id
Boris Brezillon [Sat, 17 Oct 2020 09:24:17 +0000 (11:24 +0200)]
pan/bi: Add support for load_sample_id

Sample ID is preloaded in r61.

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopan/bi: Print blend descriptor source properly
Boris Brezillon [Sat, 17 Oct 2020 09:22:56 +0000 (11:22 +0200)]
pan/bi: Print blend descriptor source properly

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopan/bi: Make sure we don't print special index as a register
Boris Brezillon [Sat, 17 Oct 2020 09:19:42 +0000 (11:19 +0200)]
pan/bi: Make sure we don't print special index as a register

index can have both a SPECIAL flag and PAN_IS_REG (bit 0) set, but we
shouln't treat the index as a register in that case. Let's bail out
early in bi_print_dest_index() when we're passed a special index
that's not a register.

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopanfrost: Replace unkown renderer state fields by their real names
Boris Brezillon [Sat, 17 Oct 2020 09:13:44 +0000 (11:13 +0200)]
panfrost: Replace unkown renderer state fields by their real names

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopanfrost: Add specialized preload descriptors
Boris Brezillon [Sat, 17 Oct 2020 09:02:12 +0000 (11:02 +0200)]
panfrost: Add specialized preload descriptors

It's just easier to identify the different layouts this way.

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopanfrost: Add the bifrost tiler internal state field
Boris Brezillon [Sat, 17 Oct 2020 08:55:09 +0000 (10:55 +0200)]
panfrost: Add the bifrost tiler internal state field

The internal state is updated every time a tiler job is executed, and
pandecode complains that unused bits are not zero-ed when that happens.
Define the internal state (not meant to be set by the driver) to remove
those spurious errors.

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopanfrost: Fix tiler job injection
Boris Brezillon [Sat, 17 Oct 2020 08:51:24 +0000 (10:51 +0200)]
panfrost: Fix tiler job injection

When injecting a tiler job, we shouln't make it depend on the last tiler
job, but instead make the first tiler job depend on it.

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agopanfrost: Adjust the renderer state definition
Boris Brezillon [Tue, 13 Oct 2020 16:32:14 +0000 (18:32 +0200)]
panfrost: Adjust the renderer state definition

Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7206>

3 years agofreedreno/a6xx: Implement user clip/cull distances
Connor Abbott [Wed, 30 Sep 2020 09:02:35 +0000 (11:02 +0200)]
freedreno/a6xx: Implement user clip/cull distances

Also, plumb things through ir3 so that we don't lower clip planes to
discard anymore.

This seems to fix some artifacts in the neverball trace.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6959>