Jordan Justen
4a7ddc4841
intel/vk/grl: Allow genX_grl.h to be included by C++ files
...
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21670 >
2023-03-03 21:37:19 +00:00
Jordan Justen
3251db1270
intel/vk/grl: Don't include anv_private.h in genX_grl.h
...
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21670 >
2023-03-03 21:37:19 +00:00
Eric Engestrom
a535f213d7
asahi/winsys: add .clang-format
...
Copied from src/asahi/.clang-format
Signed-off-by: Eric Engestrom <eric@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21691 >
2023-03-03 21:23:03 +00:00
Asahi Lina
af8d97d096
asahi: Destroy the renderonly context on screen destroy
...
This fixes an fd leak due to leaving behind the dup'd renderonly fd.
Signed-off-by: Asahi Lina <lina@asahilina.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21677 >
2023-03-03 21:11:47 +00:00
Asahi Lina
0a5f3556a1
asahi: Fix device fd leak in agx_close_device
...
I'm not sure if this was always broken downstream or just got dropped at
some point, but it's definitely UAPI-agnostic and missing now that we
have all the non-UAPI bits upstream.
Signed-off-by: Asahi Lina <lina@asahilina.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21677 >
2023-03-03 21:11:47 +00:00
Alyssa Rosenzweig
f083e1807d
asahi/decode: Handle VDM barriers
...
We emit these now (for transform feedback).
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21675 >
2023-03-03 20:54:18 +00:00
Alyssa Rosenzweig
2eb1efd181
docs/feature: Mark ARB_sync as done on Asahi
...
Strictly, this extension was already advertised, but it didn't seem nice to mark
it DONE when there was no sync support in the driver whatsoever. Mark it done
now that we do have proper explicit sync (well, in conjunction with the "add
Linux UAPI" patches that are blocked on getting the kernel driver upstream, but
that's needed for *any* of these extensions to be there!)
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21676 >
2023-03-03 20:47:40 +00:00
Timur Kristóf
05e6d945ad
radv: Emulate VGT_ESGS_ITEMSIZE in shaders on GFX9+.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21434 >
2023-03-03 20:15:10 +00:00
Rhys Perry
8aff7152a0
aco: make IDSet sparse
...
Improves compilation time of huge shaders.
A ray tracing pipeline of Hellblade: Senua's Sacrifice compiles in about
half the time, with this patch.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev >
Gitlab: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8179
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21022 >
2023-03-03 17:45:14 +00:00
Asahi Lina
8e0c832c30
asahi: Fix scissor culling check when out of bounds for FB/viewport
...
Fixes a bunch of the `assert(maxx > minx && maxy > miny)` failures in
dEQP-EGL and probably others.
Signed-off-by: Asahi Lina <lina@asahilina.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21678 >
2023-03-03 16:42:18 +00:00
Asahi Lina
1313787c12
asahi: Do not overread user index buffers
...
We need to align the extent to 4 for the GPU, but we can't copy more
than the original size out of the user buffer. Always alloc the exact
size we need.
This does mean the GPU gets an IB extent that could include some other
stuff later in the pool, if not aligned. This is probably safe? Given
the base alignment, it should never cross a page boundary and fault or
anything like that.
Signed-off-by: Asahi Lina <lina@asahilina.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21686 >
2023-03-03 16:28:46 +00:00
José Roberto de Souza
1fecb26634
iris: Add iris_bo_set_caching()
...
Signed-off-by: José Roberto de Souza <jose.souza@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21688 >
2023-03-03 16:02:46 +00:00
José Roberto de Souza
5dc0f18333
iris: Move iris_bo_madvise() to i915/iris_bufmgr.c
...
Start to split functions that are not in hot paths to specific i915
files.
Also making it static as iris_bo_madvise() is only called from
iris_bufmgr.c and adding a enum iris_madvice to be used among all
backends.
Signed-off-by: José Roberto de Souza <jose.souza@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21688 >
2023-03-03 16:02:46 +00:00
Rhys Perry
736d6643bb
aco/tests: add tests for v_fma_f32 with 2 fp16 literals
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21633 >
2023-03-03 14:20:55 +00:00
Lionel Landwerlin
afb0289d7c
blorp: add dependency on idep_intel_dev
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: 3c9a8f7a6d ("intel/dev: generate helpers to identify platform workarounds")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8421
Reviewed-by: Marcin Ślusarz <marcin.slusarz@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21679 >
2023-03-03 13:04:23 +00:00
Marcin Ślusarz
75ce0bfd85
crocus/meson: add back dependency on libintel_dev
...
Fixes: a0fa31bcdd ("intel/dev: create a helper dependency for libintel_dev")
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21679 >
2023-03-03 13:04:23 +00:00
Lionel Landwerlin
1d9cf8f381
anv: add gfx9 generated draw support
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Ivan Briano <ivan.briano@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20497 >
2023-03-03 11:30:54 +00:00
Lionel Landwerlin
3ac7d5f258
anv: remove unused item_count parameter
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Reviewed-by: Ivan Briano <ivan.briano@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20497 >
2023-03-03 11:30:54 +00:00
Lionel Landwerlin
ec66054426
anv: use a list of generated shaders
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Ivan Briano <ivan.briano@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20497 >
2023-03-03 11:30:54 +00:00
Lionel Landwerlin
b32303c369
anv: move common shader code into header
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Ivan Briano <ivan.briano@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20497 >
2023-03-03 11:30:54 +00:00
Lionel Landwerlin
ac71719d4a
anv: pack more data into generated draws input
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Ivan Briano <ivan.briano@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20497 >
2023-03-03 11:30:54 +00:00
Lionel Landwerlin
200cec935d
anv: use 64bit int support in generation shaders
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Ivan Briano <ivan.briano@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20497 >
2023-03-03 11:30:54 +00:00
Lionel Landwerlin
a2026bf5f9
anv: rename generated draws for Gfx11
...
We'll need different shaders for Gfx9
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Ivan Briano <ivan.briano@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20497 >
2023-03-03 11:30:54 +00:00
Lionel Landwerlin
caf2389bc5
anv: use a single generation shader for indirect draws
...
The indirect draw count shader can be used as a more generic case of
the indirect draw one. We'll never enter the last condition of the
shader (writing the MI_BATCH_BUFFER_START) with non count variants of
draws.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Ivan Briano <ivan.briano@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20497 >
2023-03-03 11:30:54 +00:00
Lionel Landwerlin
897a92f576
anv: remove MI_NOOPs at the end of the generation batch
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: c950fe97a0 ("anv: implement generated (indexed) indirect draws")
Reviewed-by: Ivan Briano <ivan.briano@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20497 >
2023-03-03 11:30:54 +00:00
Lionel Landwerlin
aa18d52728
anv: make sure mi_memcpy lands before push constant loads
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: e2dc32d755 ("anv: move functions around to plan for generated draws")
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Reviewed-by: Ivan Briano <ivan.briano@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20497 >
2023-03-03 11:30:54 +00:00
Lionel Landwerlin
e68615aeaa
anv: fix indirect draws VF cache tracking of index buffer
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: e2dc32d755 ("anv: move functions around to plan for generated draws")
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Reviewed-by: Ivan Briano <ivan.briano@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20497 >
2023-03-03 11:30:54 +00:00
Lionel Landwerlin
1454b789b1
anv: fix 3DSTATE_PS emission in generation shaders
...
We have to use the helper and also were missing the vector mask
programming.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: c950fe97a0 ("anv: implement generated (indexed) indirect draws")
Reviewed-by: Ivan Briano <ivan.briano@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20497 >
2023-03-03 11:30:54 +00:00
Lionel Landwerlin
8f16ca8741
anv: remove commented code
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: c950fe97a0 ("anv: implement generated (indexed) indirect draws")
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Reviewed-by: Ivan Briano <ivan.briano@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20497 >
2023-03-03 11:30:54 +00:00
Lionel Landwerlin
f5dc88910f
anv: remove pre hasvk split assert
...
With softpin we should not always expect a BO in addresses.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Cc: mesa-stable
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Reviewed-by: Ivan Briano <ivan.briano@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20497 >
2023-03-03 11:30:54 +00:00
Lionel Landwerlin
ae398284c9
anv: limit push constant dirtyness with generation shaders
...
We only use the fragment shader push constants.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: c950fe97a0 ("anv: implement generated (indexed) indirect draws")
Reviewed-by: Ivan Briano <ivan.briano@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20497 >
2023-03-03 11:30:54 +00:00
Lionel Landwerlin
2ea106e758
anv: correctly program 3DSTATE_SF in generation shaders
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: c950fe97a0 ("anv: implement generated (indexed) indirect draws")
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Reviewed-by: Ivan Briano <ivan.briano@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20497 >
2023-03-03 11:30:54 +00:00
Lionel Landwerlin
e698040061
anv: remove BTI related flush in generation shaders
...
Earlier versions of the generation shaders were using the binding
table. We since switch to A64 messages. So the flush can be removed.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: c950fe97a0 ("anv: implement generated (indexed) indirect draws")
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Reviewed-by: Ivan Briano <ivan.briano@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20497 >
2023-03-03 11:30:54 +00:00
Lionel Landwerlin
1dcb536acd
anv: remove copied code from generation shader
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: c950fe97a0 ("anv: implement generated (indexed) indirect draws")
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Reviewed-by: Ivan Briano <ivan.briano@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20497 >
2023-03-03 11:30:54 +00:00
Lionel Landwerlin
63fa6d9f49
anv: fix generated forward jump with more than 67M draws
...
The issue here is that for draw indirect count variants, we want to
jump after the last generated draw call to the next location where
commands are. But if we have more than 67M draws (8k * 8k chunks), we
only know the location once we've generated each of the 8k * 8k
chunks.
This change adds a CPU side pointer in the push constant struct so
that we can create a single linked list of chunks to edit and go
through to write the correct jump address after all the generated
space has been allocated.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: c950fe97a0 ("anv: implement generated (indexed) indirect draws")
Reviewed-by: Ivan Briano <ivan.briano@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20497 >
2023-03-03 11:30:54 +00:00
Lionel Landwerlin
c1c680c08b
anv: correctly reset generation address on command buffer reset
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Reviewed-by: Ivan Briano <ivan.briano@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20497 >
2023-03-03 11:30:54 +00:00
Lionel Landwerlin
4246a519f3
anv: fix incorrect parameter
...
cmd_buffer_update_dirty_vbs_for_gfx8_vb_flush takes a value RANDOM/SEQUENTIAL. Not a boolean.
Fortunately this worked okay because true == RANDOM
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Cc: mesa-stable
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Reviewed-by: Ivan Briano <ivan.briano@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20497 >
2023-03-03 11:30:54 +00:00
Lionel Landwerlin
234505f013
util/glsl2spirv: add support for include directive
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Ivan Briano <ivan.briano@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20497 >
2023-03-03 11:30:54 +00:00
Eric Engestrom
eae5aa943a
panfrost/ci: add EGL tests
...
Signed-off-by: Eric Engestrom <eric@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21504 >
2023-03-03 10:14:29 +00:00
Lionel Landwerlin
6ee7a2ecfa
anv: pull Wa_14016118574 out of some loop not changing state
...
The WA is meant to be here to apply some state that is not propagated
properly inside the HW. But if you have a loop like :
for ( ... ) {
emit(3DPRIMITIVE, some param);
}
You're not really changing any state, just push more draws into the
pipeline.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: f2645229c2 ("anv: implement Wa_14016118574")
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21660 >
2023-03-03 09:34:16 +00:00
Lionel Landwerlin
d82e8e01c8
anv: fixup condition for Wa_14016118574
...
We don't want the WA to kick-in if it's not point/line topology.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: f2645229c2 ("anv: implement Wa_14016118574")
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21660 >
2023-03-03 09:34:16 +00:00
Samuel Pitoiset
3e4541bb56
radv/ci: adjust timeouts for Vega10 and Renoir
...
With latest CTS it takes much more time.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21390 >
2023-03-03 08:23:22 +00:00
Samuel Pitoiset
f775873f81
ci: uprev CTS to 1.3.5.0
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Acked-by: Eric Engestrom <eric@igalia.com >
Reviewed-by: Emma Anholt <emma@anholt.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21390 >
2023-03-03 08:23:21 +00:00
Samuel Pitoiset
3b9937c85e
radv: stop allocationg the attr ring BO for compute queues on GFX11
...
Only needed for graphics. This saves ~8Mib of 32-bit VRAM per compute
queue.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21632 >
2023-03-03 07:27:21 +00:00
José Roberto de Souza
23f8b5b7a2
iris: Add initial skeleton of kmd backend
...
Signed-off-by: José Roberto de Souza <jose.souza@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21369 >
2023-03-03 05:57:05 +00:00
José Roberto de Souza
cebffb404f
iris: Use DRM_IOCTL_I915_GEM_CREATE_EXT in all supported kernels
...
As we start to refactor the iris code base to support Xe KMD here I'm
dropping DRM_IOCTL_I915_GEM_CREATE usage as much as possible and
unifying all graphics memory allocation calls to
DRM_IOCTL_I915_GEM_CREATE_EXT.
The kernel version that implemented DRM_I915_QUERY_MEMORY_REGIONS uAPI
also implemented DRM_IOCTL_I915_GEM_CREATE_EXT so we can use that
to safely call DRM_IOCTL_I915_GEM_CREATE_EXT.
Signed-off-by: José Roberto de Souza <jose.souza@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21369 >
2023-03-03 05:57:05 +00:00
José Roberto de Souza
65d129ec15
iris/bufmgr: Add i915_gem_set_domain()
...
Avoids code duplication.
Signed-off-by: José Roberto de Souza <jose.souza@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21369 >
2023-03-03 05:57:05 +00:00
José Roberto de Souza
d6754c1e04
iris: Convert drm_i915_gem_memory_class_instance to intel_memory_class_instance
...
Signed-off-by: José Roberto de Souza <jose.souza@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21369 >
2023-03-03 05:57:05 +00:00
José Roberto de Souza
a24d93aa89
intel/dev: Query and compute hardware topology for Xe
...
Signed-off-by: José Roberto de Souza <jose.souza@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21368 >
2023-03-03 05:25:35 +00:00
José Roberto de Souza
4b81a80f55
intel/dev: Implement Xe functions to handle hwconfig
...
Signed-off-by: José Roberto de Souza <jose.souza@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21368 >
2023-03-03 05:25:35 +00:00