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
Yogesh Mohan Marimuthu
2330c71751
radeonsi: remove tabs from code
...
v2: fix indentation after if (Marek Olšák)
Signed-off-by: Yogesh Mohan Marimuthu <yogesh.mohanmarimuthu@amd.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17504 >
2022-07-14 10:30:09 +00:00
Pierre-Eric Pelloux-Prayer
b75ef3815f
radeonsi: use helpers to access si_screen::aux_context
...
This avoids to mistakenly use the context without locking it first.
The aux_context_lock needs to become a recursive one now, since
si_texture_get_handle can call si_reallocate_texture_inplace which
uses resource_create which may use the aux_context too.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6666
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17032 >
2022-06-15 10:38:04 +00:00
Pierre-Eric Pelloux-Prayer
b81f05e94d
radeonsi: set size in si_texture_get_handle
...
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6507
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6491
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16813 >
2022-06-08 09:42:47 +02:00
Marek Olšák
ceddd7d49a
radeonsi: rename RADEON_FLAG_UNCACHED -> RADEON_FLAG_GL2_BYPASS
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16466 >
2022-05-16 07:03:36 -04:00
Marek Olšák
39800f0fa3
amd: change chip_class naming to "enum amd_gfx_level gfx_level"
...
This aligns the naming with PAL.
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Acked-by: Pierre-Eric Pellou-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16469 >
2022-05-13 14:56:22 -04:00
Marek Olšák
529eb739fc
radeonsi/gfx11: add CB deltas
...
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16328 >
2022-05-10 04:29:54 +00:00
Marek Olšák
ced20893d4
radeonsi/gfx11: enable arbitrary DCC format reinterpretation
...
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16328 >
2022-05-10 04:29:54 +00:00
Marek Olšák
a0dad2f1db
radeonsi: remove si_create_surface_custom
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
01d994f5e6
radeonsi: add color buffer support for R9G9B9E5_FLOAT on gfx10.3
...
This was missed when we added gfx10.3.
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16215 >
2022-05-03 11:11:08 -04:00
Marek Olšák
6fc94500c0
radeonsi: ignore AMD_DEBUG=nodcc if the texture is imported
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15965 >
2022-04-22 20:52:26 +00:00
Marek Olšák
f865631b1b
radeonsi: replace SI_RESOURCE_FLAG_UNMAPPABLE with PIPE_RESOURCE_FLAG_UNMAPPABLE
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15098 >
2022-02-22 11:41:04 +00:00
Marek Olšák
ad9b5ac0a1
radeonsi: more fixes for si_buffer_from_winsys_buffer for GL-VK interop
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15098 >
2022-02-22 11:41:04 +00:00
Marek Olšák
a87ab82f25
radeonsi: add assertions to check if buffer_map/texture_map calls are valid
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15098 >
2022-02-22 11:41:04 +00:00
Qiang Yu
80974a5f1e
radeonsi: fix depth stencil multi sample texture blit
...
This causes the flushed_depth_texture is allocated without
multi sample. So the blit will cause VM fault.
cc: mesa-stable
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14990 >
2022-02-21 01:47:23 +00:00
Pierre-Eric Pelloux-Prayer
3b27ad1504
radeonsi: create prime buffers as uncached
...
8791e831b1
marked imported prime buffers as uncached (useful when prime
buffer is allocated by the display GPU), but they should also be created
as uncached (useful when allocated by the render GPU).
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14615 >
2022-02-08 00:13:07 +00:00
Pierre-Eric Pelloux-Prayer
18c38bf78f
gallium: rename PIPE_BIND_DRI_PRIME
...
The new name PIPE_BIND_PRIME_BLIT_DST is more precise.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14615 >
2022-02-08 00:13:07 +00:00
Qiang Yu
71a77aea79
radeonsi: enable multi sample sparse texture support
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14362 >
2022-01-18 16:10:36 +08:00
Qiang Yu
485ceb5c51
gallium: add multi_sample parameter to get_sparse_texture_virtual_page_size
...
Instead of using actual sample count as parameter, we only use a bool
to indicate if the target is multi sample. This is because we don't
know the sample count when glGetInternalformativ() case.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14362 >
2022-01-18 16:10:36 +08:00
Pierre-Eric Pelloux-Prayer
86262b6eac
radeonsi,radv: fix usages of surf_pitch
...
For linear textures, pitch[level] should be used instead.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14454 >
2022-01-12 11:39:53 +00:00
Pierre-Eric Pelloux-Prayer
2f8982df0e
radeonsi/gfx10: fix si_texture_get_offset for mipmapped tex
...
Pitch can be different per-level so adjust stride and offset.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5792
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14454 >
2022-01-12 11:39:53 +00:00
Marek Olšák
6386b95f0f
radeonsi: modifiers can't disable DCC
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14266 >
2022-01-05 12:46:30 +00:00
Marek Olšák
ce72395008
radeonsi: add a debug option that disables DCC for all exported buffers
...
requested internally
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14283 >
2022-01-03 17:19:56 +00:00
Qiang Yu
5a844f87a1
radeonsi: support texture resource commit
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14223 >
2021-12-30 16:11:19 +08:00
Qiang Yu
5f3c904ac8
radeonsi: implement get_sparse_texture_virtual_page_size
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14223 >
2021-12-30 16:11:19 +08:00
Qiang Yu
c11059c2b5
radeonsi: use staging buffer for sparse texture when transfer map
...
Can't map sparse texture directly.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14223 >
2021-12-30 16:11:19 +08:00
Qiang Yu
c2bb232dae
radeonsi: support alloc a sparse texture
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14223 >
2021-12-30 16:11:19 +08:00
Marek Olšák
901697654a
radeonsi: add dcc_msaa option to enable DCC for MSAA
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13700 >
2021-11-16 02:11:46 +00:00
Marek Olšák
c0f723ce2b
radeonsi: allow and finish TC-compatible MSAA HTILE
...
This improves perf for Catia by 4%.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13603 >
2021-11-04 17:36:26 +00:00
Marek Olšák
3baeaac64b
radeonsi: rename stencil_cleared_level_mask -> stencil_cleared_level_mask_once
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13603 >
2021-11-04 17:36:26 +00:00
Marek Olšák
9f2a97e9df
radeonsi: add an option to use CPU storage uploads for threaded context
...
It's only enabled for viewperf for now.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13400 >
2021-10-19 16:53:29 +00:00
Pierre-Eric Pelloux-Prayer
a905072521
radeon_winsys.h: add a parameter to buffer_from_handle
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13362 >
2021-10-18 17:16:53 +02:00
Yipeng Chen (Jasber)
33484a327e
radeonsi: do not use staging texture for APU
...
This is to fix serious performance drop of texture_upload/
texture_resue relative items in chromeos glbench test.
Staging texture is not efficient for CPU uploading.
Signed-off-by: Jasber Chen <yipeng.chen@amd.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13306 >
2021-10-13 10:45:04 +00:00
Marek Olšák
c85ce2531e
radeonsi: align pipe_resource & sampler_view allocations to a cache line
...
It eliminates "False Sharing" for atomic operations. (see wikipedia)
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11618 >
2021-10-13 03:26:20 +00:00
Joshua Ashton
baff748cb0
radeonsi: Check if modifier supports the image extent
...
DCN only supports an extent < 4K on !64B && 128B.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13056 >
2021-10-11 11:43:39 +00:00
Marek Olšák
86a33569f4
radeonsi: add back a workaround for DCC MSAA on gfx9 due to conformance issues
...
Fixes: 8b95f51ef1
- radeonsi: fix and enable full DCC with MSAA 2x on gfx9
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13256 >
2021-10-11 02:10:10 +00:00
Marek Olšák
b15c413947
radeonsi: simplify memory usage checking by merging vram and gtt counters
...
no change in behavior
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12656 >
2021-09-01 00:42:58 +00:00
Pierre-Eric Pelloux-Prayer
ff8a930cf7
radeonsi: add _once suffix to depth_cleared_level_mask
...
And add a new variable to disambiguate between "has been cleared once" and
"is cleared".
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10979 >
2021-06-15 10:19:02 +02:00
Mike Blumenkrantz
74abd5df0e
aux/tc: pass rebind count and rebind bitmask with replace_buffer_storage func
...
tc already calculates all the rebinding that needs to be done on a given
context, so (some of) this info can be passed on to drivers to enable
optimizations
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11245 >
2021-06-14 20:42:47 +00:00
Pierre-Eric Pelloux-Prayer
b377da9122
radeonsi: allow write-only mapping of encrypted textures
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11107 >
2021-06-03 08:33:52 +00:00
Marek Olšák
5af124c92c
radeonsi: change si_resource::alignment to alignment_log2 for better packing
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10813 >
2021-05-25 16:15:44 +00:00
Marek Olšák
e33e525e16
radeonsi: don't disable L2 caching for staging textures
...
Uncached access can be slow if the box is not aligned nicely.
Also, caching in L2 might enable bigger PCIe bursts.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10813 >
2021-05-25 16:15:44 +00:00
Marek Olšák
2670efa1f7
gallium: remove empty structure u_resource_vtbl
...
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10659 >
2021-05-21 17:38:04 +00:00
Marek Olšák
38171635af
gallium: remove u_resource_vtbl::transfer_(un)map
...
This removes the call indirection.
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10659 >
2021-05-21 17:38:04 +00:00
Marek Olšák
9effc49569
gallium: remove u_resource_vtbl::resource_destroy
...
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10659 >
2021-05-21 17:38:04 +00:00
Marek Olšák
b04044b350
radeonsi: stop using u_resource_vtbl::resource_destroy
...
Acked-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10659 >
2021-05-21 17:38:04 +00:00
Marek Olšák
89eaf59092
gallium: remove transfer_flush_region from u_resource_vtbl
...
It's only used by buffers and only zink uses it privately for textures too.
This is part of removing u_resource_vtbl.
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10659 >
2021-05-21 17:38:04 +00:00
Marek Olšák
078e129d54
gallium: remove resource_get_handle from u_resource_vtbl
...
This is the initial step towards removing u_resource_vtbl.
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10659 >
2021-05-21 17:38:04 +00:00
Marek Olšák
ec77a2d43a
gallium/u_threaded: add callbacks and documentation for resource busy checking
...
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10662 >
2021-05-17 10:37:24 +00:00
Marek Olšák
804e292440
radeonsi: remove the separate DCC optimization for Stoney
...
This removes some complexity from the driver.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10343 >
2021-04-26 22:53:30 +00:00