Sathishkumar S [Wed, 29 Mar 2023 07:03:38 +0000 (02:03 -0500)]
util/format: add planar3 r8_g8_b8_unorm pipe format
add pipe format to represent three plane 8bit RGB format
Signed-off-by: Sathishkumar S <sathishkumar.sundararaju@amd.com>
Reviewed-by: Leo Liu <leo.liu@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22388>
Felix DeGrood [Mon, 20 Mar 2023 16:30:26 +0000 (16:30 +0000)]
docs: add INTEL_MEASURE=cpu
Update documentation about INTEL_MEASURE=cpu
Reviewed-by: Mark Janes <markjanes@swizzler.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21505>
Felix DeGrood [Thu, 23 Feb 2023 16:09:16 +0000 (16:09 +0000)]
iris: Enable INTEL_MEASURE=cpu
Reviewed-by: Mark Janes <markjanes@swizzler.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21505>
Felix DeGrood [Wed, 22 Feb 2023 19:29:28 +0000 (19:29 +0000)]
anv: Enable INTEL_MEASURE=cpu
Reviewed-by: Mark Janes <markjanes@swizzler.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21505>
Felix DeGrood [Wed, 22 Feb 2023 01:40:19 +0000 (01:40 +0000)]
intel: INTEL_MEASURE cpu mode
INTEL_MEASURE normally measures timing of GPU events. However, it
is sometimes useful to instead measure when these gfx API calls
were requested of the driver. INTEL_MEASURE cpu can be used in
in conjunction with other driver debug capabilities, like
INTEL_DEBUG=pc for analyzing stalls/flushes or when debugger is
attached, to track which frame you're currently on or where in
the frame you're at.
Initial commit, without plumbing into anv/iris.
"INTEL_MEASURE=cpu" will collect a cpu timestamp for each
INTEL_MEASURE event instead of GPU timestamps.
Reviewed-by: Mark Janes <markjanes@swizzler.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21505>
Felix DeGrood [Wed, 22 Feb 2023 00:53:37 +0000 (00:53 +0000)]
anv: split INTEL_MEASURE multi events
Measure performance of each draw separately in multi_draw event.
Previously, we measured duration of the sum of all draws launched
per multi_draw. This should provide more detailed data for
multi_draws.
Reviewed-by: Mark Janes <markjanes@swizzler.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21505>
Felix DeGrood [Thu, 23 Feb 2023 18:28:49 +0000 (18:28 +0000)]
anv: Add flush reason to NEEDS_END_OF_PIPE_SYNC
cs_stall gets inserted if both flushes and invalidates are required.
This cs_stall reason was not called out explicitly, until now.
Reviewed-by: Mark Janes <markjanes@swizzler.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21505>
Felix DeGrood [Wed, 22 Feb 2023 21:33:13 +0000 (21:33 +0000)]
anv: Add flush reasons to raytracing flushes
Reviewed-by: Mark Janes <markjanes@swizzler.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21505>
Felix DeGrood [Wed, 22 Feb 2023 21:32:08 +0000 (21:32 +0000)]
anv: Add END_OF_PIPE_SYNC reporting to INTEL_DEBUG=pc
Reviewed-by: Mark Janes <markjanes@swizzler.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21505>
David (Ming Qiang) Wu [Thu, 13 Apr 2023 18:29:35 +0000 (14:29 -0400)]
radeonsi/vcn: add an exception of field case for h264 decoding
This is an error case where the I field has no reference, however
the reference list contains some reference, which resulting in
not be able to find its reference, and it is a correct behavior,
should not enter the correction code. Just add this exception to
prevent such a case, if more exceptions found, they will
be treated indiviually in the future.
Cc: mesa-stable
closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8740
Signed-off-by: Ruijing Dong <ruijing.dong@amd.com>
Signed-off-by: David (Ming Qiang) Wu <David.Wu3@amd.com>
Reviewed-by: Leo Liu <leo.liu@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22485>
Roland Scheidegger [Thu, 13 Apr 2023 18:06:36 +0000 (20:06 +0200)]
llvmpipe: fix some corner cases with line rendering
Some comparisons were wrong depending on swapped endpoints and
the bottom_edge_rule (if the endpoint was exactly touching
pixel center), hence the code assuming a line endpoint which
should be drawn according to diamond exit rules would already be
drawn (so not adjusting the endpoint) when in reality it was not,
in which case the line would end up one pixel too short.
Note that this is still not fully correct - the logic as such
should be correct now, however these comparisons can give wrong
results due to float math vs. fixed point planes (an endpoint very
close to a pixel center might be exactly at pixel center in fixed
point), but this should do for now. (Also, the logic is still
completely wrong for state trackers not using half_pixel_center
setting, but this is only really a concern for dx9 state tracker.)
Reviewed-by: Brian Paul <brianp@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22481>
Roland Scheidegger [Thu, 30 Mar 2023 16:31:52 +0000 (18:31 +0200)]
llvmpipe: minor cleanups in line rendering code
Use float constants, some code deduplication, no functional change.
Reviewed-by: Brian Paul <brianp@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22481>
Juan A. Suarez Romero [Thu, 13 Apr 2023 11:21:31 +0000 (13:21 +0200)]
v3d: set depth compare function correctly
Depth compare function must be set to the configured one only when
compare mode is enabled; otherwise it must be configured to never.
v2 (Eric):
- Handle V3D < 4.0 case
CC: mesa-stable
Reviewed-by: Eric Engestrom <eric@igalia.com>
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22470>
antonino [Fri, 14 Apr 2023 10:47:17 +0000 (12:47 +0200)]
zink: use correct primitives for passthrough gs with tess
When tessellation is used the geometry shader needs to take the
tessellator output primitive as input.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Fixes:
90a8525d703 ("zink: handle edgeflags")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22498>
antonino [Fri, 14 Apr 2023 10:03:06 +0000 (12:03 +0200)]
zink: don't emulate edgeflags for patches
Patches are used for tessellation, edgeflags don't work with
tessellation.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Fixes:
90a8525d703 ("zink: handle edgeflags")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22498>
Samuel Pitoiset [Thu, 13 Apr 2023 15:43:43 +0000 (17:43 +0200)]
radv: tidy up dirtying RBPLUS state in radv_bind_dynamic_state()
To dirty driver specific states at the same place.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22472>
Samuel Pitoiset [Thu, 13 Apr 2023 15:40:50 +0000 (17:40 +0200)]
radv: re-emit the guardband state when related PSO are bound
If one of the related states is static, the guardband state needs to be
re-emitted when a graphics pipeline is bound.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8828
Fixes:
40d8df72808 ("radv: emit the guardband state separately from the scissor state")
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22472>
Patrick Lerda [Sun, 2 Apr 2023 16:30:20 +0000 (18:30 +0200)]
r600: fix refcnt imbalance related to r600_set_vertex_buffers()
For instance, this issue is triggered with: "piglit/bin/useprogram-flushverts-2 -auto -fbo" or
"piglit/bin/primitive-restart-draw-mode line_loop -auto"
while setting GALLIUM_REFCNT_LOG=refcnt.log.
Fixes:
27dcb466293f ("gallium: add take_ownership param into set_vertex_buffers to eliminate atomics")
Signed-off-by: Patrick Lerda <patrick9876@free.fr>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22395>
James Knight [Thu, 13 Apr 2023 20:38:51 +0000 (16:38 -0400)]
meson: ensure i915 Gallium driver includes Intel sources
Ensure builds flag the use of Intel sources when the i915 Gallium driver
is configured (`-Dgallium-drivers=i915`). Otherwise, a build may fail if
other Intel-based configuration options are not enabled:
./src/gallium/winsys/i915/drm/meson.build:21:0: ERROR: Unknown variable "libintel_common".
Signed-off-by: James Knight <james.d.knight@live.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22490>
Marcin Ślusarz [Wed, 12 Apr 2023 14:17:52 +0000 (16:17 +0200)]
intel: split URB space between task and mesh proportionally to entry sizes
Improves performance by 0.5-2.5% in vk_meshlet_cadscene
depending on the model.
Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22445>
Samuel Pitoiset [Thu, 13 Apr 2023 14:07:16 +0000 (16:07 +0200)]
radv: try to keep HTILE compressed for READ_ONLY_OPTIMAL layout
It should be handled like DEPTH_STENCIL_READ_ONLY_OPTIMAL.
This fixes an issue with VRS attachment because HTILE was considered
disabled for READ_ONLY_OPTIMAL but there is no reasons to disable it
as long as the image is only used as a depth/stencil attachment.
Otherwise, when HTILE is disabled, VRS rates are ignored.
Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8675
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22468>
Eric Engestrom [Wed, 12 Apr 2023 21:10:12 +0000 (22:10 +0100)]
broadcom/ci: deduplicate script definition
It's always going to be the same for all the jobs in our farm.
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Juan A. Suarez <igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22457>
Samuel Pitoiset [Wed, 12 Apr 2023 13:26:24 +0000 (15:26 +0200)]
vulkan: ignore rasterizationSamples when the state is dynamic
Fixes:
1deb83fb86d ("vulkan: Add more dynamic multisample states")
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22444>
Eric Engestrom [Wed, 12 Apr 2023 19:29:51 +0000 (20:29 +0100)]
ci: update shebang to make it more portable
Doesn't matter for now, but it doesn't cost anything to make it portable :)
Suggested-by: David Heidelberg <david.heidelberg@collabora.com>
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Helen Koike <helen.koike@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22450>
Eric Engestrom [Wed, 12 Apr 2023 13:47:31 +0000 (14:47 +0100)]
ci: bump tags
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: David Heidelberg <david.heidelberg@collabora.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Helen Koike <helen.koike@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22450>
Eric Engestrom [Wed, 12 Apr 2023 13:46:36 +0000 (14:46 +0100)]
ci: start documenting which image tags need to be bumped
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: David Heidelberg <david.heidelberg@collabora.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Helen Koike <helen.koike@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22450>
Eric Engestrom [Wed, 12 Apr 2023 10:10:19 +0000 (11:10 +0100)]
ci: move deqp-egl instead of copying it
To make sure we can't accidentally run a random leftover platform.
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: David Heidelberg <david.heidelberg@collabora.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Helen Koike <helen.koike@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22450>
Eric Engestrom [Wed, 12 Apr 2023 10:07:04 +0000 (11:07 +0100)]
ci: add -android suffix for android build of deqp-egl
Makes it clearer which platform is being run.
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: David Heidelberg <david.heidelberg@collabora.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Helen Koike <helen.koike@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22450>
Eric Engestrom [Wed, 12 Apr 2023 10:06:02 +0000 (11:06 +0100)]
ci: stop removing -x11 suffix for x11 build of deqp-egl
Makes it clearer which platform is being run.
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: David Heidelberg <david.heidelberg@collabora.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Helen Koike <helen.koike@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22450>
Lionel Landwerlin [Thu, 13 Apr 2023 16:34:15 +0000 (19:34 +0300)]
intel/vec4: force exec_all on float control instruction
Applying the same rule as the fs backend so that generation code
doesn't assert.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes:
daa8003e45 ("intel/fs: use nomask for setting cr0 for float controls")
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22473>
Mike Blumenkrantz [Wed, 5 Apr 2023 12:06:27 +0000 (08:06 -0400)]
glthread: disable by default with fewer than 4 (big) CPUs
with a low CPU count or low count of "big" CPUs, glthread hurts perf
much more than it helps, so it should be disabled
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21926>
Mike Blumenkrantz [Wed, 5 Apr 2023 11:51:36 +0000 (07:51 -0400)]
driconf: rework glthread enablement
this splits out glthread enablement into 3 settings:
- driver
- app
- user
which can then be modified with more granularity
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21926>
Mike Blumenkrantz [Wed, 15 Mar 2023 14:26:13 +0000 (10:26 -0400)]
util/cpu: add big.LITTLE cpu detection
it's useful for drivers to be able to detect big.LITTLE topology in
order to make decisions about how to handle workloads (specifically as
it relates to threading)
Reviewed-by: Rob Clark <robdclark@chromium.org>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21926>
i509VCB [Thu, 30 Mar 2023 01:55:27 +0000 (20:55 -0500)]
docs/asahi: Add hardware glossary
Explains some of hardware units referenced throughout the driver.
Signed-off-by: i509VCB <git@i509.me>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22200>
Karol Herbst [Sun, 13 Nov 2022 21:06:30 +0000 (22:06 +0100)]
nouveau: nouveau_copy_buffer can deal with user_ptrs just fine
Signed-off-by: Karol Herbst <kherbst@redhat.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19712>
Karol Herbst [Sat, 5 Nov 2022 12:33:29 +0000 (13:33 +0100)]
nouveau: allow to enable SVM without having to enable CL
Signed-off-by: Karol Herbst <kherbst@redhat.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19712>
Karol Herbst [Sat, 5 Nov 2022 12:20:33 +0000 (13:20 +0100)]
nv50/ir: ignore CL system values
Signed-off-by: Karol Herbst <kherbst@redhat.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19712>
Karol Herbst [Sat, 5 Nov 2022 12:33:45 +0000 (13:33 +0100)]
rusticl: add support for fine-grained system SVM
At the moment it's an all or nothing. A driver supporting fine-grained
system SVM can enable it in order to get full SVM support.
Lower levels could be emulated by userptrs and placing the bo at the same
locations in the GPU's VM as well, but that would require reworking quite
a bit on the drivers side.
For now supporting mmu_notifiers on the kernel side is the only way of
getting SVM support with Rusticl.
The only driver having the gallium bits wired up atm is Nouveau, but I
suspect it shouldn't be all to hard for iris and radeonsi as well.
Signed-off-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19712>
Karol Herbst [Thu, 13 Apr 2023 13:53:17 +0000 (15:53 +0200)]
rusticl/mem: add get_parent helper
Signed-off-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19712>
Karol Herbst [Sun, 13 Nov 2022 21:04:24 +0000 (22:04 +0100)]
rusticl/memory: Rework mapping of memory located in system RAM
The old code didn't consider a few cases where we could just map resources
located in system RAM.
Signed-off-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19712>
Karol Herbst [Sun, 6 Nov 2022 18:14:07 +0000 (19:14 +0100)]
rusticl/context: add helper to get the max mem alloc size for all devices
Signed-off-by: Karol Herbst <kherbst@redhat.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19712>
Karol Herbst [Sun, 13 Nov 2022 13:17:00 +0000 (14:17 +0100)]
gallium: correctly name the flags of svm_migrate
Signed-off-by: Karol Herbst <kherbst@redhat.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19712>
Mike Blumenkrantz [Thu, 13 Apr 2023 21:20:47 +0000 (17:20 -0400)]
zink: remove screen param from zink_prune_query()
no longer used
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22493>
Mike Blumenkrantz [Thu, 13 Apr 2023 21:06:35 +0000 (17:06 -0400)]
zink: always defer query pool deletion
this feels dumb, but I can't think of a simpler way to do it that
would more accurately handle deletion while also guaranteeing
pool longevity
Fixes:
7da78ffb697 ("zink: create/use query pools dynamically")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22493>
Mike Blumenkrantz [Thu, 13 Apr 2023 21:22:20 +0000 (17:22 -0400)]
zink: pass ctx through query destroy paths
no functional changes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22493>
Mike Blumenkrantz [Thu, 13 Apr 2023 20:54:38 +0000 (16:54 -0400)]
zink: remove atomics from zink_query
this is never accessed from threads anymore and
hasn't been for a long time
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22493>
Thong Thai [Thu, 13 Apr 2023 14:22:21 +0000 (10:22 -0400)]
frontends/va: report min width and min height values if available
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8756
Signed-off-by: Thong Thai <thong.thai@amd.com>
Reviewed-by: Sil Vilerino <sivileri@microsoft.com>
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Reviewed-by: Boyuan Zhang <Boyuan.Zhang@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22422>
Thong Thai [Thu, 13 Apr 2023 14:19:43 +0000 (10:19 -0400)]
radeonsi: return min width and min height video cap values
Signed-off-by: Thong Thai <thong.thai@amd.com>
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Reviewed-by: Boyuan Zhang <Boyuan.Zhang@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22422>
Thong Thai [Thu, 13 Apr 2023 14:18:13 +0000 (10:18 -0400)]
gallium/pipe: add min width and min height video cap enums
Signed-off-by: Thong Thai <thong.thai@amd.com>
Reviewed-by: Sil Vilerino <sivileri@microsoft.com>
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com>
Reviewed-by: Boyuan Zhang <Boyuan.Zhang@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22422>
Eric Engestrom [Thu, 13 Apr 2023 19:21:08 +0000 (20:21 +0100)]
v3d: add flake spec@ext_framebuffer_blit@fbo-sys-sub-blit
https://gitlab.freedesktop.org/mesa/mesa/-/jobs/
39905522
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22486>
Giancarlo Devich [Tue, 11 Apr 2023 23:47:40 +0000 (16:47 -0700)]
d3d12: Support separate front/back stencils
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3833
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22454>
Giancarlo Devich [Wed, 12 Apr 2023 17:56:35 +0000 (10:56 -0700)]
d3d12: Add ID3D12GraphicsCommandList8 to the context
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22454>
Giancarlo Devich [Tue, 11 Apr 2023 23:41:17 +0000 (16:41 -0700)]
d3d12: Update PSO creation to use CreatePipelineState
This uses CD3DX12_PIPELINE_STATE_STREAM3 from
d3dx12_pipeline_state_stream.h and gives us access to newer D3D12
features.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22454>
Giancarlo Devich [Tue, 11 Apr 2023 23:39:42 +0000 (16:39 -0700)]
d3d12: Query device for D3D12_FEATURE_D3D12_OPTIONS14
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22454>
Giancarlo Devich [Tue, 11 Apr 2023 23:38:41 +0000 (16:38 -0700)]
d3d12: Update and require DirectX-Headers 1.610.0
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22454>
Lionel Landwerlin [Thu, 13 Apr 2023 07:52:15 +0000 (10:52 +0300)]
vulkan/runtime: discard unused graphics stages in libraries
Anv is trying to rely on the stages put into the library graphics
state.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Cc: mesa-stable
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22460>
Mike Blumenkrantz [Wed, 12 Apr 2023 16:57:13 +0000 (12:57 -0400)]
mesa/st/program: don't init xfb info if there are no outputs
this is almost certainly a failure case, but drivers still shouldn't
get xfb info if there are no outputs
affects:
spec@glsl-1.50@execution@interface-blocks-api-access-members
cc: mesa-stable
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22448>
Brian Paul [Wed, 5 Apr 2023 15:42:04 +0000 (09:42 -0600)]
llvmpipe: code clean-ups in llvmpipe_get_query_result_resource()
Replace 'unsignalled' with 'ready' to simplify logic.
Remove needless !! in !!(a > b) expressions.
Remove some casting. Use MIN2() macro. Add const qualifiers.
Declare loop vars in loops.
Signed-off-by: Brian Paul <brianp@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22464>
Brian Paul [Fri, 7 Apr 2023 20:04:53 +0000 (14:04 -0600)]
llvmpipe: remove lp_setup_alloc_triangle()'s unneeded tri_size param
This returned size was never used by the callers.
Signed-off-by: Brian Paul <brianp@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22464>
Lionel Landwerlin [Thu, 13 Apr 2023 17:20:22 +0000 (20:20 +0300)]
docs: add missing MESA_VK_WSI_HEADLESS_SWAPCHAIN variable
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22478>
Timur Kristóf [Thu, 13 Apr 2023 15:23:40 +0000 (17:23 +0200)]
amd: Rename INDIRECT_BUFFER_CIK to just INDIRECT_BUFFER.
This packet is supported on GFX6 too, its name should relect that.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22406>
Timur Kristóf [Tue, 11 Apr 2023 00:31:28 +0000 (02:31 +0200)]
radv: Chain command buffers on GFX6 in radv_queue.
Also don't check whether chaining is enabled in radv_queue, the
winsys will take care of that anyway.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22406>
Timur Kristóf [Tue, 11 Apr 2023 00:30:10 +0000 (02:30 +0200)]
radv: Use IB BOs (chaining) by default on GFX6.
GFX6 supports IB chaining since the PFP firmware version 20.
Note that the very first amdgpu firmware for GFX6 already had
version 29, so we can assume that all GPUs supported by RADV
have this feature.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22406>
Timur Kristóf [Tue, 11 Apr 2023 00:29:38 +0000 (02:29 +0200)]
radv: Disallow IB2 on GFX6 when using draw_indirect_multi.
GFX6 has the same problem as GFX7 here.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22406>
Timur Kristóf [Tue, 11 Apr 2023 11:59:49 +0000 (13:59 +0200)]
radv/amdgpu: Remove unnecessary assertions from chaining.
These used to guard against chaining on GFX6 and on HW IP types
that don't support chaining, but these things are now guarded
elsewhere and these assertions are no longer necessary.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22406>
Harri Nieminen [Tue, 11 Apr 2023 21:18:38 +0000 (00:18 +0300)]
r600/sfn: fix typos in code
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22432>
Harri Nieminen [Thu, 13 Apr 2023 11:09:00 +0000 (14:09 +0300)]
r600/sfn: fix typos
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22432>
Harri Nieminen [Thu, 13 Apr 2023 11:08:22 +0000 (14:08 +0300)]
r600/sb: fix typo
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22432>
Harri Nieminen [Thu, 13 Apr 2023 11:07:09 +0000 (14:07 +0300)]
r600: fix typos
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22432>
Harri Nieminen [Tue, 11 Apr 2023 20:37:34 +0000 (23:37 +0300)]
radeonsi: fix typos
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22432>
Harri Nieminen [Tue, 11 Apr 2023 20:16:41 +0000 (23:16 +0300)]
r300: fix typos
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22432>
Harri Nieminen [Wed, 12 Apr 2023 04:18:46 +0000 (07:18 +0300)]
amd: fix typos in code
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22432>
Harri Nieminen [Wed, 12 Apr 2023 04:10:19 +0000 (07:10 +0300)]
amd: fix typos
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22432>
Karol Herbst [Wed, 12 Apr 2023 16:49:55 +0000 (18:49 +0200)]
rusticl/mem: replace buffer_offset_size with CLVec::calc_offset_size
buffer_offset_size was almost correct, but didn't calculate the size
correctly.
Signed-off-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22449>
Karol Herbst [Wed, 12 Apr 2023 16:40:50 +0000 (18:40 +0200)]
rusticl/mem: fix Mem::copy_rect
The old code was kinda bogus as we mapped at (0, 0, 0), but then didn't
take the origin into account when specifiying the size of the access.
Just offset properly instead.
Signed-off-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22449>
Karol Herbst [Wed, 12 Apr 2023 15:52:56 +0000 (17:52 +0200)]
rusticl: rework CLVec helper function to calculate bounds
We kinda need three things:
1. offset of a point in linear memory
2. size of access for a region
3. a mix of both
Signed-off-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22449>
Felix DeGrood [Wed, 12 Apr 2023 00:11:00 +0000 (00:11 +0000)]
anv: disable reset query pools using blorp opt on MTL
This optimization causes some MTL tests to run forever. Not
yet sure why. Disabling optimization until we have a fix.
Reviewed-by: Mark Janes <markjanes@swizzler.org>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22373>
Emma Anholt [Thu, 6 Apr 2023 21:39:48 +0000 (14:39 -0700)]
ci/crocus: Update checksum for STK.
Rendering is still fine, stable checksum for the last 3 runs.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22348>
Emma Anholt [Thu, 6 Apr 2023 21:33:50 +0000 (14:33 -0700)]
zink: Avoid infinite loop finding no var in update_so_info.
Fixes timeouts in CI for
spec@glsl-1.50@execution@interface-blocks-api-access-members where we've
got a GS with SO outputs and no vars declared, by asserting that something
has gone horribly wrong instead.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22348>
Alyssa Rosenzweig [Sat, 18 Mar 2023 02:57:25 +0000 (22:57 -0400)]
nir: Add more system values for lowering XFB
Add more system values for XFB. This should be good enough for lowering GL3.1 +
transform_feedback2 + transform_feedback3. More will probably be needed for
geom/tess but that will be easier to work with when I'm actually bringing up
geom/tess. At any rate, we're splitting out XFB from the rasterization pipeline
and since XFB happens only in the last shader pre-rasterization stage, VS+XFB is
an orthogonal problem from e.g. VS+GS+XFB. Yeah, the combinatorics suck.
These will be used by Asahi, and hopefully eventually Panfrost.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Acked-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22123>
Alyssa Rosenzweig [Wed, 12 Apr 2023 14:37:59 +0000 (10:37 -0400)]
d3d12: Use u_default_get_sample_position
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Suggested-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22383>
Alyssa Rosenzweig [Sun, 9 Apr 2023 19:03:28 +0000 (15:03 -0400)]
freedreno: Use u_default_get_sample_position
Verified by hand to produce the same results.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22383>
Alyssa Rosenzweig [Sun, 9 Apr 2023 18:59:57 +0000 (14:59 -0400)]
panfrost: Use u_default_get_sample_position
The Mali sample positions are the standard sample positions.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22383>
Alyssa Rosenzweig [Sun, 9 Apr 2023 18:57:44 +0000 (14:57 -0400)]
zink: Use u_default_get_sample_position
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22383>
Alyssa Rosenzweig [Sun, 9 Apr 2023 18:53:18 +0000 (14:53 -0400)]
gallium: Add u_default_get_sample_position
ctx->get_sample_position doesn't change what it returns based on the programmed
positions, it's just supposed to return the defaults. For most (all?) hardware,
those are the Vulkan standard sample positions. In
bf9a1e0a4be ("zink: add a
pipe_context::get_sample_position hook"), Mike wondered why there wasn't a
common implementation. So here's one to fix that :~)
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22383>
José Roberto de Souza [Tue, 14 Feb 2023 19:41:08 +0000 (11:41 -0800)]
iris: Set priority to Xe engines
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/22172>
José Roberto de Souza [Tue, 14 Feb 2023 19:36:01 +0000 (11:36 -0800)]
iris: Implement batch_check_for_reset() in Xe 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/22172>
José Roberto de Souza [Fri, 11 Nov 2022 16:23:16 +0000 (08:23 -0800)]
iris: Create, destroy and replace Xe engines
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/22172>
José Roberto de Souza [Tue, 11 Apr 2023 19:41:06 +0000 (12:41 -0700)]
iris: Move iris_batch i915 specific variables to union
Saves some bytes when Xe kmd fields are added and makes easier to
spot places that are misusing i915 variables.
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/22172>
José Roberto de Souza [Tue, 11 Apr 2023 19:18:43 +0000 (12:18 -0700)]
iris: Initialize batch screen in iris_init_batch()
The comment to initialize screen earlier not valid anymore so we can
initialize it with the rest of batch fields.
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/22172>
José Roberto de Souza [Mon, 20 Mar 2023 18:38:34 +0000 (11:38 -0700)]
iris: Move i915 batch destroy logic to iris_i915_destroy_batch()
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/22172>
xurui [Thu, 6 Apr 2023 10:11:48 +0000 (18:11 +0800)]
zink: Some return values of malloc should be checked
Signed-off-by: xurui <xurui@kylinos.cn>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22328>
Samuel Pitoiset [Wed, 12 Apr 2023 12:03:56 +0000 (14:03 +0200)]
radv: fix detecting FMASK_DECOMPRESS/DCC_DECOMPRESS meta pipelines
With the on_demand shaders feature, meta pipelines are only created
when they are used, otherwise they are NULL. Though, inside secondary
cmdbuffers, the graphics pipeline might be also NULL. In this specific
case, radv_is_{dcc,fmask}_decompress_pipeline() would return
TRUE because these pipelines are NULL too...
This fixes flakes with tests that use secondary cmdbuffers with
TC-compat images.
Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22440>
Eric Engestrom [Tue, 11 Apr 2023 16:28:08 +0000 (17:28 +0100)]
docs: reset new_features.txt
Signed-off-by: Eric Engestrom <eric@engestrom.ch>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22455>
Eric Engestrom [Tue, 11 Apr 2023 16:27:54 +0000 (17:27 +0100)]
VERSION: bump to 23.2
Signed-off-by: Eric Engestrom <eric@engestrom.ch>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22455>
Qiang Yu [Sun, 9 Apr 2023 08:14:40 +0000 (16:14 +0800)]
ac,aco: move gfx10 ngg prim count zero workaround to nir
To simplify both llvm and aco backend and remove unnecessary
workaround code where prim count is known to be not zero.
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22381>
Tapani Pälli [Wed, 12 Apr 2023 09:07:14 +0000 (12:07 +0300)]
intel/compiler: use intel_needs_workaround for Wa_14012437816
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22437>
Tapani Pälli [Wed, 12 Apr 2023 09:03:43 +0000 (12:03 +0300)]
intel/fs: use intel_needs_workaround for Wa_22013689345
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22437>
Eric Engestrom [Wed, 5 Apr 2023 18:04:10 +0000 (19:04 +0100)]
ci/rustfmt: make sure to only check each file once
rustfmt has some magic that follows files (I'm guessing), making files get
checked multiple times with `*.rs`, so let's limit ourselves to `lib.rs`.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22321>
Tatsuyuki Ishi [Mon, 3 Apr 2023 04:42:37 +0000 (13:42 +0900)]
ci/android: Make armv8's arch aarch64 instead of arm.
Per [1], arm is for 32-bit.
For an upcoming change, we need to detect AArch64 specifically.
Specifying arm in the cross file will result in the wrong build script
behavior.
[1]: https://mesonbuild.com/Reference-tables.html#cpu-families
Reviewed-by: Helen Koike <helen.koike@collabora.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22418>