Manuel Stoeckl
7e554e11a1
dri: fix incorrect fourcc for R16G16B16A16_UNORM format
...
The DRM fourcc for this format is DRM_FORMAT_ABGR16161616 = 'AB48', not
__DRI_IMAGE_FOURCC_RGBA16161616 = 'RA48'. This should have no outward
effect for clients, since the format does not get revealed by
dri2_query_dma_buf_formats, and is otherwise only used within the
library.
Signed-off-by: Manuel Stoeckl <code@mstoeckl.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14580 >
2022-07-27 07:27:10 +00:00
Marek Olšák
bc85e79bba
ac/gpu_info: require amdgpu DRM 3.15.0 (kernel 4.12) from July 2017
...
to match the radeon requirement
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17411 >
2022-07-27 05:01:38 +00:00
Marek Olšák
9f6a64b1c3
gallium/radeon: require radeon DRM 2.50.0 (kernel 4.12) from July 2017
...
This is the latest radeon DRM version.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17411 >
2022-07-27 05:01:38 +00:00
Marek Olšák
8426cf9132
ac/gpu_info: remove unused has_unaligned_shader_loads
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17411 >
2022-07-27 05:01:38 +00:00
Marek Olšák
f3f00f77ad
ac/gpu_info: remove amdgpu_gpu_info parameter from ac_query_gpu_info
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17411 >
2022-07-27 05:01:38 +00:00
Marek Olšák
abd188ec1c
radeonsi: remove workarounds for radeon DRM < 2.45.0
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17411 >
2022-07-27 05:01:38 +00:00
Marek Olšák
b2455e1ccb
gallium/radeon: require radeon DRM 2.45.0 from April 2016
...
This removes most non-radeonsi workarounds.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17411 >
2022-07-27 05:01:38 +00:00
Marek Olšák
3657cdafd6
amd: require amdgpu DRM 3.2.0 from April 2016
...
This removes an early bug workaround.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17411 >
2022-07-27 05:01:38 +00:00
Marek Olšák
ff19666a0d
ac/gpu_info: remove redundant vcn_encode
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17411 >
2022-07-27 05:01:38 +00:00
Marek Olšák
89113c0338
ac/gpu_info: remove redundant vce_encode
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17411 >
2022-07-27 05:01:38 +00:00
Marek Olšák
9cbbdc6583
ac/gpu_info: remove redundant uvd_encode
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17411 >
2022-07-27 05:01:38 +00:00
Marek Olšák
2972ceccfd
ac/gpu_info: remove redundant jpeg_decode
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17411 >
2022-07-27 05:01:38 +00:00
Marek Olšák
a0d2e16c91
ac/gpu_info: remove redundant uvd_decode
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17411 >
2022-07-27 05:01:38 +00:00
Marek Olšák
12c5d64fae
ac/gpu_info: remove vram_size and gtt_size in favor of *_kb variants
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17411 >
2022-07-27 05:01:38 +00:00
Marek Olšák
9552da66cc
ac/gpu_info: rework and extend device info to be more informative
...
This is the result with AMD_DEBUG=info:
Device info:
name = NAVI23
marketing_name = AMD Radeon RX 6600
num_se = 2
num_rb = 8
num_cu = 28
max_gpu_freq = 2750 MHz
max_gflops = 9856 GFLOPS
l0_cache_size = 16 KB
l1_cache_size = 128 KB
l2_cache_size = 2048 KB
l3_cache_size = 32 MB
memory_channels = 8 (TCC blocks)
memory_size = 8 GB (8192 MB)
memory_freq = 14 GHz
memory_bus_width = 128 bits
memory_bandwidth = 224 GB/s
clock_crystal_freq = 100000 KHz
IP GFX 10.3 queues:1
IP COMP 10.3 queues:4
IP SDMA 5.2 queues:2
IP VCN_DEC 3.0 queues:1
IP VCN_ENC 3.0 queues:1
IP VCN_JPG 3.0 queues:1
It might not be 100% correct with other chips.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17411 >
2022-07-27 05:01:38 +00:00
Marek Olšák
f218c3d795
ac/gpu_info: rename info fields to num_cu, memory_bus_width, memory_freq_mhz
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17411 >
2022-07-27 05:01:38 +00:00
Dave Airlie
38a2a2da3e
llvmpipe: keep context list and use to track resource usage.
...
Just check across all contexts if a resource is referenced.
Fixes: 6bbbe15a78
("Reinstate: llvmpipe: allow vertex processing and fragment processing in parallel")
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17702 >
2022-07-27 01:09:34 +00:00
Dave Airlie
a680fd078c
llvmpipe: make last_fence a screen/rast object not a context one.
...
When a flush happens the per-context setup is used to hold the fence
for the last scene sent to the rasterizer. However when multiple
contexts are in use, this fence won't get returned to be blocked on.
Instead move the last fence to the rasterizer object, and return
that instead as it should be valid across contexts.
Fixes gtk4 bugs on llvmpipe since overlapping vertex/fragment.
Fixes: 6bbbe15a78
("Reinstate: llvmpipe: allow vertex processing and fragment processing in parallel")
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17702 >
2022-07-27 01:09:34 +00:00
Iago Toral Quiroga
2ca4a51679
v3d,v3dv: add a common v3d_hw_prim_type helper
...
We had this replicated in both drivers.
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17594 >
2022-07-27 00:00:54 +00:00
Mike Blumenkrantz
4cfa777e39
zink: enable unordered blit/resolve ops
...
can't do swapchain or u_blitter ops, but these should be fine
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17667 >
2022-07-26 21:34:59 +00:00
Mike Blumenkrantz
731d7be375
zink: make get_cmdbuf() public
...
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17667 >
2022-07-26 21:34:59 +00:00
Mike Blumenkrantz
ca03e35821
zink: expand unordered_exec
...
track read+write
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17667 >
2022-07-26 21:34:59 +00:00
Mike Blumenkrantz
b1781ec9ab
zink: move buffer/image functions down in file
...
no functional changes
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17667 >
2022-07-26 21:34:59 +00:00
Mike Blumenkrantz
84b8242262
zink: promote image/buffer copy operations to unordered
...
if the src and dst for these operations can both be promoted, then the
entire operation can be promoted to potentially avoid splitting renderpasses
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17667 >
2022-07-26 21:34:59 +00:00
Mike Blumenkrantz
a8c368b0dc
zink: add a second resource param to get_cmdbuf() for unordered promotion
...
no functional changes
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17667 >
2022-07-26 21:34:59 +00:00
Mike Blumenkrantz
d9276ca6d0
zink: rework unordered_exec handling
...
previously this would opportunistically promote barriers to the unordered
cmdbuf only if a renderpass was active or there was no access, which
was the wrong approach
instead, opportunistically promote barriers to the unordered cmdbuf
any time it's possible to do so, which is when one of these conditions is true:
* when there is no access to the resource on the current cmdbuf
* when the only access to the resource is in the unordered cmdbuf
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17667 >
2022-07-26 21:34:59 +00:00
Mike Blumenkrantz
f0f0611f40
zink: explicitly unset unordered_exec when resource can't be unordered
...
ensure that subsequent commands can't be promoted
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17667 >
2022-07-26 21:34:59 +00:00
Mike Blumenkrantz
e5c4c33fa6
zink: zink_resource::unordered_barrier -> unordered_exec
...
this is a bit more clear
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17667 >
2022-07-26 21:34:59 +00:00
Mike Blumenkrantz
a41ea582c4
zink: add ZINK_DEBUG=noreorder
...
this will be useful for debugging
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17667 >
2022-07-26 21:34:59 +00:00
Mike Blumenkrantz
f42212983c
zink: convert ZINK_DEBUG to enum
...
more readable/debuggable
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17667 >
2022-07-26 21:34:59 +00:00
Mike Blumenkrantz
4a3cea6730
zink: stop ORing unordered barrier access
...
this doesn't make any sense and is confusing
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17667 >
2022-07-26 21:34:59 +00:00
Jordan Justen
ab4939dfff
iris/bufmgr: Add I915_GEM_CREATE_EXT_FLAG_NEEDS_CPU_ACCESS for vram mappable buffers
...
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16739 >
2022-07-26 20:34:02 +00:00
Mike Blumenkrantz
fc1eec0a27
lavapipe: fix shader access stage conversion from mesa -> pipe
...
ok ok but this time it's fixed and works I promise
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17758 >
2022-07-26 20:21:50 +00:00
Gert Wollny
bbe8400949
r600/sb: fall back to unoptimized shader if RA fails
...
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Filip Gawin <filip@gawin.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17755 >
2022-07-26 20:14:14 +00:00
Mike Blumenkrantz
62044403a9
util/blitter: respect PIPE_TEXTURE_RECT
...
if this isn't supported, don't use rect-related sampling
cc: mesa-stable
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17714 >
2022-07-26 19:30:44 +00:00
Emma Anholt
00efd4cc38
ci/virgl: Make the VM-based virgl tests report to #virgl-ci, too.
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17730 >
2022-07-26 18:59:45 +00:00
Emma Anholt
bd8740da77
gallivm: Optimize single-invocation SSBO stores.
...
The CTS does a lot of 1x1x1 compute shaders (all that stuff like
dEQP-GLES31.functional.shaders.builtin_functions.precision.mul.highp_compute.scalar)
which finish with store_ssbos. Instead of doing the invocation loop in
that case (which LLVM has to later unroll), just emit the single
invocation's store.
Fixes timeouts running
dEQP-GLES31.functional.ssbo.layout.random.all_shared_buffer.36, which does
a spectacular number of SSBO stores in a long 1x1x1 compute shader.
Reduces runtime of on llvmpipe from 66s to 29s locally, and virgl from
1:38 to 43s. virgl
dEQP-GLES31.functional.ssbo.layout.random.nested_structs_arrays_instance_arrays.22
goes down to 7 seconds.
Fixes : #6797
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17730 >
2022-07-26 18:59:45 +00:00
Emma Anholt
8d41f8f384
gallivm: Refactor a bit of UBO/SSBO range checking.
...
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17730 >
2022-07-26 18:59:45 +00:00
Erik Faye-Lund
e8b22afae9
llvmpipe: remove unused function
...
Fixes: a1846e3926
("llvmpipe: merge all rasterizer-bind functions")
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17735 >
2022-07-26 08:12:17 +00:00
Jason Ekstrand
23220c86d9
lavapipe: Use the vk_graphics_pipeline_state
...
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17669 >
2022-07-26 00:45:26 +00:00
Jason Ekstrand
33092faef1
lavapipe: Use shader_info::uses_sample_shading
...
This is more accurate because it's computed directly in spirv_to_nir and
takes even unused SampleID and SamplePos builtings into account.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17669 >
2022-07-26 00:45:26 +00:00
Mike Blumenkrantz
27c97dc0d1
lavapipe: advertise VK_EXT_multisampled_render_to_single_sampled
...
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17705 >
2022-07-26 00:02:26 +00:00
Mike Blumenkrantz
f2d5ff1c3a
lavapipe: VK_EXT_multisampled_render_to_single_sampled
...
this works by doing a replicate at renderpass start and an in-place
resolve on renderpass end
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17705 >
2022-07-26 00:02:26 +00:00
Mike Blumenkrantz
f1ae6523b1
llvmpipe: add a shortcut for blitter resolves
...
if this is only going to do a sample0 resolve, the functionality is
equivalent to just copying the first sample, and in llvmpipe terms,
this just means doing a direct copy at offset=0
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17705 >
2022-07-26 00:02:26 +00:00
Mike Blumenkrantz
6064d838e7
lavapipe: fix stencil clears
...
this uses the value from the stencil attachment
Fixes: 8068c68b1f
("lavapipe: Delete render passes")
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17705 >
2022-07-26 00:02:26 +00:00
Mike Blumenkrantz
f2f517b315
llvmpipe: allow resource_copy_region to perform replicate operations
...
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17705 >
2022-07-26 00:02:26 +00:00
Mike Blumenkrantz
8563a95bd7
llvmpipe: remove weird clamping for format support with sample counts
...
this breaks u_blitter
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17705 >
2022-07-26 00:02:26 +00:00
Mike Blumenkrantz
725cdfb0ad
lavapipe: set image access on pipeline bind, not descriptor bind
...
this is where the access originates, so set it here
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17739 >
2022-07-25 22:08:53 +00:00
Mike Blumenkrantz
a18708e5ce
lavapipe: use 64bit masks for shader access
...
ensure that all descriptors are tracked for this
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17739 >
2022-07-25 22:08:53 +00:00
Mike Blumenkrantz
2fd930f95b
lavapipe: use correct offset calculation for flagging ssbo/image write access
...
var->data.binding has no relation to the actual index of the resource,
which must be separately calculated based on the layout
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17739 >
2022-07-25 22:08:53 +00:00