Daniel Schürmann
2fee99a36c
aco: implement load_ray_launch_{id|size}
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21780 >
2023-03-16 01:40:30 +00:00
Daniel Schürmann
c7c68e1193
aco: move rt_dynamic_callable_stack_base_amd to VGPR
...
In future, we will use a VGPR arg for that between RT stages.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21780 >
2023-03-16 01:40:30 +00:00
Daniel Schürmann
1f01a86b36
aco: don't set private_segment_buffer/scratch_offset on GFX9+
...
It is unused. Also don't initialize scratch in raytracing stages as it gets
initialized in the prolog shader.
Co-authored-by: Friedrich Vock <friedrich.vock@gmx.de >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21780 >
2023-03-16 01:40:30 +00:00
Daniel Schürmann
a33b9d43d8
aco: add RT stage enums
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21780 >
2023-03-16 01:40:29 +00:00
Daniel Schürmann
c38b8678c9
radv: add RT shader handling to radv_postprocess_config
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21780 >
2023-03-16 01:40:29 +00:00
Daniel Schürmann
3f03eebf04
radv: add RT stages to radv_get_shader_name()
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21780 >
2023-03-16 01:40:29 +00:00
Daniel Schürmann
650f386bdd
radv: handle RT stages in radv_nir_shader_info_pass()
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21780 >
2023-03-16 01:40:29 +00:00
Daniel Schürmann
d5de56bf59
radv: add RT shader args
...
Co-authored-by: Friedrich Vock <friedrich.vock@gmx.de >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21780 >
2023-03-16 01:40:29 +00:00
Daniel Schürmann
5ede3b1c6b
mesa: add gl_shader_stage_is_rt()
...
to indicate raytracing shader stages.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21780 >
2023-03-16 01:40:29 +00:00
Rob Clark
b78fc0ae48
driconf: Work around incorrect GI discard/invalidate
...
Genshin Impact does a depth+stencil invalidate (or discard, not sure
which entrypoint they are using) and then proceeds to do draws with
depth test enabled. For IMRs (or freedreno in sysmem mode) this is no
problem. But for tilers that use this as a hint that they can skip the
z/s tile load, it is.
Signed-off-by: Rob Clark <robdclark@chromium.org >
Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21916 >
2023-03-16 00:56:37 +00:00
Rob Clark
a66c62420e
driconf: Add ignore_discard_framebuffer option
...
Some apps use glDiscardFramebuffer()/glInvalidateFramebuffer() when they
only kidding. Add a knob to disable that.
Signed-off-by: Rob Clark <robdclark@chromium.org >
Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21916 >
2023-03-16 00:56:37 +00:00
Rob Clark
976d964a35
mesa: Rework discard_framebuffer()
...
Decouple the logic turning API attachment enums into gl_buffer_index.
This will make it easier to re-use discard_attachments() internally (See
!21910 )
Signed-off-by: Rob Clark <robdclark@chromium.org >
Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21916 >
2023-03-16 00:56:37 +00:00
Lynne
f5e5ec180c
aco_validate: allow for wave32 in p_dual_src_export_gfx11
...
Fixes RADV_PERFTEST=pswave32
Fixes: bb90d29660 ("aco: add p_dual_src_export_gfx11 for dual source blending on GFX11")
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21934 >
2023-03-15 23:55:41 +00:00
Mark Janes
a2e5e7daa0
intel: use generated helpers for Wa_1409433168/Wa_16011107343
...
HSD 1306463417 is a hardware defect. The originating software
workaround for the issue is Wa_1409433168. Convert all references to
the software workaround number, and use generated helpers instead of
GFX comparisons.
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21914 >
2023-03-15 23:31:08 +00:00
Emma Anholt
4466098324
ci/turnip: Move some more of the 1.3.5 new xfails under links.
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21915 >
2023-03-15 23:07:21 +00:00
Emma Anholt
5e3d36199f
ci/turnip: Disable dEQP-VK.image.queue_transfer.* for now.
...
We're waiting on the upstream CTS fix to land. Until then, quiet the spam
in #freedreno-ci to see if we have any other flakes we need to be managing
right now.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21915 >
2023-03-15 23:07:21 +00:00
Emma Anholt
45dc05d455
ci/turnip: Clear out stale xfails.
...
These were all fixed in the CTS, but missed from removal due to fractional runs.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21915 >
2023-03-15 23:07:21 +00:00
Emma Anholt
78d4a82d30
turnip: Don't push inline uniform buffer contents outside constlen.
...
This would apparently lead to trying to load from this inline uniform
buffer in later submits.
Fixes: 37cde2c634 ("tu: Rewrite inline uniform implementation")
Fixes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8219
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21915 >
2023-03-15 23:07:21 +00:00
Mike Blumenkrantz
f99eab23ad
aux/trace: delete GALLIUM_TRACE_NIR log message
...
this is not only annoying, it breaks trace xml output
cc: mesa-stable
Acked-by: Simon Zeni <simon@bl4ckb0ne.ca >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21609 >
2023-03-15 20:43:52 +00:00
José Roberto de Souza
eec5ddd0ed
anv: Handle external objects allocation in Xe
...
External(imported or exported) objects needs to have vm_id set to 0.
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/21885 >
2023-03-15 18:17:11 +00:00
José Roberto de Souza
b2d82c25fb
anv: Properly alloc buffers that will be promoted to framebuffer in Xe KMD
...
Xe KMD does a special caching handling for buffers that will be
scanout to display, so that is why it needs a flag set during
allocation.
Checking if VK_STRUCTURE_TYPE_WSI_MEMORY_ALLOCATE_INFO_MESA
is available in AllocateMemory() and marking the buffer as scanout.
All WSI code paths but one sets
VK_STRUCTURE_TYPE_WSI_MEMORY_ALLOCATE_INFO_MESA.
The only one that doesn't requires that WSI is initialize with
wsi_device_options.sw_device = true to be executed, what is not the
case for ANV.
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/21885 >
2023-03-15 18:17:11 +00:00
José Roberto de Souza
a311c031f6
anv: Implement Xe version of anv_physical_device_get_parameters()
...
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/21885 >
2023-03-15 18:17:11 +00:00
antonino
1538a28803
zink: fix final_hash update in zink_gfx_program_update
...
The logic that updates `ctx->gfx_pipeline_state.final_hash` assumed that
the program is replaced. It is supposed to xor `final_hash` with the
hash first and then with the new hash however when the program is
updated it end up xor-ing the new hash twice so it does nothing.
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Fixes: 15450d2c2e ("zink: incrementally hash all pipeline component hashes")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21925 >
2023-03-15 18:00:20 +00:00
SoroushIMG
78198d634d
zink: Add driver name and API version to renderer name
...
Having driver name in the renderer will be useful to differentiate
between open source and proprietary drivers as they can have different
feature sets/quirks.
Vulkan API version is also added to the name to match up with ANGLE.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21922 >
2023-03-15 17:40:16 +00:00
Mike Blumenkrantz
81a4163375
zink: fix copy box merging adjacency
...
these cases need to increase the box size, not just adjust the offset
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21921 >
2023-03-15 16:42:19 +00:00
Mike Blumenkrantz
32f74c4db5
zink: fix copy box iteration when adding
...
need to use the iterator, not the base pointer
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21921 >
2023-03-15 16:42:19 +00:00
Timur Kristóf
6185e4f2ff
aco, radv: Remove VS IO information from ACO.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Acked-by: Konstantin Seurer <konstantin.seurer@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16805 >
2023-03-15 14:54:28 +00:00
Timur Kristóf
819ba6f7ae
ac/llvm: Remove unused function ac_build_struct_tbuffer_load.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Acked-by: Konstantin Seurer <konstantin.seurer@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16805 >
2023-03-15 14:54:28 +00:00
Timur Kristóf
2f78700f89
radv: Remove VS inputs code from LLVM backend.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Acked-by: Konstantin Seurer <konstantin.seurer@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16805 >
2023-03-15 14:54:28 +00:00
Timur Kristóf
3b0394d063
aco: Rename visit_load_input to visit_load_fs_input.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Acked-by: Konstantin Seurer <konstantin.seurer@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16805 >
2023-03-15 14:54:28 +00:00
Timur Kristóf
c602092033
aco: Remove VS inputs from visit_load_input.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Acked-by: Konstantin Seurer <konstantin.seurer@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16805 >
2023-03-15 14:54:28 +00:00
Timur Kristóf
27c8131978
radv: Apply swizzle and alpha adjust in radv_nir_lower_vs_inputs.
...
Deal with VS input related things in a single pass instead of
having two different passes.
Fossil DB stats on Rembrandt (GFX10.3):
Totals from 174 (0.13% of 134913) affected shaders:
VGPRs: 7736 -> 7520 (-2.79%)
CodeSize: 354004 -> 353604 (-0.11%); split: -0.17%, +0.06%
MaxWaves: 4196 -> 4248 (+1.24%)
Instrs: 65228 -> 65139 (-0.14%); split: -0.19%, +0.06%
Latency: 265823 -> 265728 (-0.04%); split: -0.12%, +0.08%
InvThroughput: 84629 -> 84644 (+0.02%); split: -0.08%, +0.10%
VClause: 1618 -> 1606 (-0.74%); split: -0.93%, +0.19%
SClause: 1382 -> 1379 (-0.22%); split: -0.36%, +0.14%
Copies: 5586 -> 5566 (-0.36%); split: -0.55%, +0.20%
PreSGPRs: 4994 -> 5037 (+0.86%); split: -0.10%, +0.96%
PreVGPRs: 4948 -> 4955 (+0.14%); split: -0.04%, +0.18%
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com >
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16805 >
2023-03-15 14:54:27 +00:00
Timur Kristóf
a46acdbc3f
radv: Lower non-dynamic VS inputs in NIR.
...
Add a new RADV specific NIR pass which lowers VS input
loads to AMD specific buffer load instructions.
We do this because we want to remove the RADV specific
VS input handling from the shader compiler back-ends.
Fossil DB stats on Rembrandt (GFX10.3):
Totals from 32507 (24.09% of 134913) affected shaders:
VGPRs: 1245512 -> 1245344 (-0.01%); split: -0.35%, +0.34%
SpillSGPRs: 1068 -> 1102 (+3.18%)
CodeSize: 90333192 -> 90327232 (-0.01%); split: -0.07%, +0.06%
MaxWaves: 881816 -> 881388 (-0.05%); split: +0.23%, -0.28%
Instrs: 17264710 -> 17264562 (-0.00%); split: -0.09%, +0.09%
Latency: 87300501 -> 86586480 (-0.82%); split: -1.07%, +0.25%
InvThroughput: 13700046 -> 13685931 (-0.10%); split: -0.20%, +0.10%
VClause: 361520 -> 361301 (-0.06%); split: -1.32%, +1.26%
SClause: 441018 -> 441505 (+0.11%); split: -0.54%, +0.65%
Copies: 1371477 -> 1373838 (+0.17%); split: -0.57%, +0.75%
Branches: 496639 -> 496611 (-0.01%); split: -0.01%, +0.00%
PreSGPRs: 1122956 -> 1122663 (-0.03%); split: -0.09%, +0.06%
PreVGPRs: 976051 -> 995717 (+2.01%); split: -0.12%, +2.14%
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com >
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16805 >
2023-03-15 14:54:27 +00:00
Timur Kristóf
22ca8c8561
ac/llvm: Implement typed buffer load intrinsic.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Acked-by: Konstantin Seurer <konstantin.seurer@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16805 >
2023-03-15 14:54:27 +00:00
Timur Kristóf
477cb943f6
aco: Implement load_typed_buffer_amd.
...
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16805 >
2023-03-15 14:54:27 +00:00
Timur Kristóf
022e55557b
nir: Add load_typed_buffer_amd intrinsic.
...
This new intrinsic maps to the MTBUF instruction format on AMD GPUs
and represents a typed buffer load in NIR.
Also add an unsigned upper bound for the new intrinsic.
Code for that ported from aco_instruction_selection_setup.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16805 >
2023-03-15 14:54:27 +00:00
Timur Kristóf
7d63d8882a
aco: Remove vtx_binding from MUBUF/MTBUF instructions.
...
We haven't measured any noteworthy perf improvement
from these, and they are difficult to port to NIR,
so remove them before the NIR based VS input lowering
in order to make it easier to bisect and analyze stats.
Fossil DB stats on Rembrandt (GFX10.3):
Totals from 21750 (16.12% of 134913) affected shaders:
VGPRs: 868512 -> 868664 (+0.02%); split: -0.00%, +0.02%
CodeSize: 64406804 -> 64397572 (-0.01%); split: -0.08%, +0.07%
MaxWaves: 567904 -> 567888 (-0.00%); split: +0.00%, -0.00%
Instrs: 12327212 -> 12324851 (-0.02%); split: -0.10%, +0.08%
Latency: 61367324 -> 61371204 (+0.01%); split: -0.04%, +0.05%
InvThroughput: 9687734 -> 9686000 (-0.02%); split: -0.03%, +0.01%
VClause: 248207 -> 303449 (+22.26%); split: -0.02%, +22.28%
SClause: 314942 -> 315564 (+0.20%); split: -0.09%, +0.29%
Copies: 921581 -> 921820 (+0.03%); split: -0.16%, +0.19%
Branches: 341964 -> 341967 (+0.00%); split: -0.00%, +0.00%
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com >
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16805 >
2023-03-15 14:54:27 +00:00
Marek Olšák
999b956ebc
radeonsi: correct an assertion if we get a display list with no vertex buffers
...
It's possible to get a display list with no vertex buffers if the linker
eliminates all VS inputs or if the list was built with glArrayElement with
no enabled attribs.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21860 >
2023-03-15 13:16:34 +00:00
Marek Olšák
9fad7ca659
radeonsi: don't use fp16_rtz for FP formats in the compute blit
...
It doesn't change the test results.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21860 >
2023-03-15 13:16:34 +00:00
Marek Olšák
bcdde99675
radeonsi: don't convert to fp16 in the compute blit if not testing
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21860 >
2023-03-15 13:16:34 +00:00
Marek Olšák
e7d7fc6740
radeonsi: fix AMD_TEST=computeblit being rejected on gfx < 11
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21860 >
2023-03-15 13:16:34 +00:00
Marek Olšák
f67b41e53b
radeonsi: don't print the base non-view texture format for AMD_TEST=computeblit
...
it's confusing in the output and it affects nothing
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21860 >
2023-03-15 13:16:34 +00:00
Marek Olšák
f8070b3dc2
radeonsi: add AMD_DEBUG=nowcstream to enable caching for stream_uploader
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21860 >
2023-03-15 13:16:34 +00:00
Marek Olšák
e32700c503
radeonsi: rework MSAA resolve averaging to exploit instruction-level parallelism
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21860 >
2023-03-15 13:16:34 +00:00
Marek Olšák
1d978917a0
radeonsi: remove duplicated gfx11 check in si_msaa_resolve_blit_via_CB
...
The function really does that twice. You'll find the same code a few lines
above this change.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21860 >
2023-03-15 13:16:34 +00:00
Marek Olšák
d76bb15c51
radeonsi: replace nonir,noir,noasm,preoptir options with new reworked options
...
New options depending on what you want to print:
- initnir = initial NIR of shader CSOs
- nir = final NIR of variants after all lowering
- initllvm = LLVM IR before optimizations
- llvm = final LLVM IR
- asm = asm
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21860 >
2023-03-15 13:16:34 +00:00
Marek Olšák
c3df9973a3
radeonsi: dump shader stats only if dumping asm shaders
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21860 >
2023-03-15 13:16:34 +00:00
Marek Olšák
c2f3339783
radeonsi: remove unused TCS/TES SGPR fields
...
We stopped using them when we switched to ac_nir_lower_hs_outputs_to_mem.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21860 >
2023-03-15 13:16:34 +00:00
Yogesh Mohan Marimuthu
2b04d6cada
radv: set RADEON_SURF_NO_TEXTURE flag in radv_get_surface_flags()
...
In vkCreateImage() if block comrpessed format and VK_IMAGE_TILING_LINEAR is
used, then the app crashes in vega gpu.
This is because addrlib does not support BC + linear as from function
ValidateSwModeParams(). From Marek Olšák the addrlib behaviour is correct.
In pal driver, flags.texture is not set in DetermineSurfaceFlags() function
if BC + linear. pal driver does it because it is expected that the
BC + linear image is only used as transfer resource.
This patch sets RADEON_SURF_NO_TEXTURE flag if usage is not
VK_IMAGE_USAGE_SAMPLED_BIT and and VK_IMAGE_USAGE_STORAGE_BIT.
flags.texture flag is not set if RADEON_SURF_NO_TEXTURE and this fixes
the crash.
v1: set NO_TEXTURE if not SAMPLED or STORAGE (Marek Olšák)
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21422 >
2023-03-15 12:25:33 +00:00
Yogesh Mohan Marimuthu
de0885cdb8
amd/surface: add RADEON_SURF_NO_TEXTURE flag
...
Block compressed + linear format is not supported in addrlib. But these
surface can be used as transfer resource. RADEON_SURF_NO_TEXTURE flag
indicates not to set flags.texture flag in gfx9_compute_surface().
This will help to fix the vkCreateImage() crash where block
compressed + linear format image is requested.
v2: combine RADEON_SURF_NO_TEXTURE to below line (Marek Olšák)
v1: add RADEON_SURF_NO_TEXTURE flag (Marek Olšák)
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21422 >
2023-03-15 12:25:33 +00:00