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
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
Jason Volk
e1488d9374
radeon: Support shared memory user pointers.
...
The RADEON_GEM_USERPTR_ANONONLY flag is hardcoded here which excludes
shared memory pages. DRM is actually capable of supporting shared file-
backed memory, but only if it's read-only. This mutability intent has to
be conveyed through the stack, so a flags argument is added to the winsys
regime to pass RADEON_FLAG_READ_ONLY.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16115 >
2022-06-22 12:23:02 +00:00
Pierre-Eric Pelloux-Prayer
aa58ff191f
Revert "winsys/amdgpu: use AMDGPU_IB_FLAG_PREAMBLE for the CS preamble on gfx10+"
...
This reverts commit 8edafaa25c
.
This fixes hangs on Navi21.
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
Marek Olšák
4d4bd7cb5b
winsys/amdgpu: add a kernel GDS management workaround retrying on -ENOMEM
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16885 >
2022-06-11 11:14:16 +00:00
Marek Olšák
8edafaa25c
winsys/amdgpu: use AMDGPU_IB_FLAG_PREAMBLE for the CS preamble on gfx10+
...
This skips the preamble for following IBs if the queue receives IBs from
the same context back-to-back. This eliminates VGT_FLUSH (for tess and
legacy GS) and PS_PARTIAL_FLUSH (for gfx11) in those cases if the preamble
contains them.
v2: only use this on gfx10+ due to stability issues on Stoney and limited
testing
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16885 >
2022-06-11 11:14:16 +00:00
Vlad Zahorodnii
f4de4453cf
winsys/amdgpu-radeon: Allow specifying context priority
...
This is needed to implement EGL_IMG_context_priority in radeonsi.
Signed-off-by: Vlad Zahorodnii <vlad.zahorodnii@kde.org>
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/16594 >
2022-05-25 14:15:30 +00:00
Marek Olšák
2443054932
amd: rename fishes to Navi21, Navi22, Navi23, Navi24, and Rembrandt
...
Reviewed-by: Mihai Preda <mhpreda@gmail.com>
Acked-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Acked-by: Martin Roukala <martin.roukala@mupuf.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16604 >
2022-05-19 11:55:50 +00:00
Marek Olšák
394e42427f
winsys/amdgpu: initialize IB_PREAMBLE in advance
...
Reviewed-by: Mihai Preda <mhpreda@gmail.com>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16509 >
2022-05-17 10:27:04 +00:00
Marek Olšák
1fdc3b0fde
radeonsi: move CS preamble emission into the winsys
...
The preamble will be skipped by the kernel if there is no context switch.
Reviewed-by: Mihai Preda <mhpreda@gmail.com>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16509 >
2022-05-17 10:27:04 +00:00
Marek Olšák
0755d02456
radeonsi: use AMDGPU_VM_PAGE_NOALLOC to disable MALL (infinity cache)
...
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:39 -04:00
Marek Olšák
e9e9086b66
radeonsi: use the new flag AMDGPU_GEM_CREATE_DISCARDABLE
...
It forces the best placement (usually VRAM) and evictions discard the contents
instead of copying.
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:39 -04:00
Marek Olšák
527e22412a
winsys/amdgpu-radeon: clean up code related to heaps
...
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:38 -04:00
Marek Olšák
d21be64b3a
winsys/amdgpu: handle RADEON_FLAG_ENCRYPTED as a heap modifier
...
so that we don't need custom code for encrypted allocations
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:37 -04:00
Marek Olšák
593f72aa21
winsys/amdgpu-radeon: rework how we describe heaps
...
It was getting difficult to add more heaps.
This adds more heaps because more flag combinations are legal now.
Invalid flag combinations are also handled better.
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:37 -04: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
85aa067d0f
amd: replace num_rings[type] with ip[type].num_queues
...
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16360 >
2022-05-10 06:59:55 +00:00
Marek Olšák
7203723120
amd: rename RING_* enums to AMD_IP_*
...
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16360 >
2022-05-10 06:59:55 +00:00
Marek Olšák
ae7e4d7619
amd: rename ring_type --> amd_ip_type and match the kernel enum values
...
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16360 >
2022-05-10 06:59:55 +00:00
Marek Olšák
caa09f66ae
amd: add chip identification for gfx1100-1103
...
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:55 +00:00
Marek Olšák
4a982aa542
winsys/amdgpu: fix a mutex deadlock when we fail to create pipe_screen
...
Fixes: 2eb067db0f
- winsys/amdgpu: add a new winsys for the new kernel driver
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16112 >
2022-04-25 13:43:16 +00:00
Marek Olšák
11c462534b
gallium/winsys: move {amdgpu,radeon_drm}_public.h contents into radeon_winsys.h
...
header file simplification
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Mihai Preda <mhpreda@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15907 >
2022-04-17 01:27:34 +00:00
Marek Olšák
efac875b66
gallium: move radeon_winsys.h into gallium/include/winsys/
...
it's used by 3 different drivers, so it shouldn't be in radeonsi
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Mihai Preda <mhpreda@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15907 >
2022-04-17 01:27:34 +00:00
Marek Olšák
139f55071b
gallium: move drivers/radeon/* into drivers/radeonsi/
...
this is only used by radeonsi
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Mihai Preda <mhpreda@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15907 >
2022-04-17 01:27:34 +00:00
Marek Olšák
f23e07525f
winsys/amdgpu: fix a warning of defining radeon_screen_create_t twice
...
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
Pierre-Eric Pelloux-Prayer
148b2d0040
amd: add SDMA_NOP_PAD
...
And use it in amdgpu_cs.c.
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13959 >
2022-01-11 12:18:35 +00:00
Qiang Yu
40928e452d
winsys/radeon: change surface_init flags to 64bit
...
RADEON_SURF_PRT is (1ull << 32).
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
Pierre-Eric Pelloux-Prayer
5358d8a110
radeonsi/sqtt: reserve a vmid when sqtt is enabled
...
Based on https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13695
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13696 >
2021-11-08 17:16:11 +00:00
Marek Olšák
0e54ac7a3c
winsys/amdgpu: optimize looping inefficiencies in add_bo_fence_dependencies
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13478 >
2021-10-29 06:54:22 +00:00
Marek Olšák
c4ba003e2f
winsys/amdgpu: move BO fence array updates to the CS thread
...
We always wait for num_active_ioctls == 0 before we use the fence,
so we can just add fences to BOs in the CS thread.
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13478 >
2021-10-29 06:54:22 +00:00
Marek Olšák
67de09acbd
winsys/amdgpu: don't use ip_instance and ring fields of fence and IB structures
...
They are always 0.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13478 >
2021-10-29 06:54:22 +00:00
Marek Olšák
f6d072b2f0
winsys/amdgpu: increase the BO hash list size
...
This decreases overhead inside amdgpu_cs_add_buffer by 40%
for viewperf2020/catia.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13478 >
2021-10-29 06:54:22 +00:00
Marek Olšák
a5118bc97d
winsys/amdgpu: don't clear RADEON_USAGE_SYNCHRONIZED for last_added_bo_usage
...
It was breaking the early return path.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13478 >
2021-10-29 06:54:22 +00:00
Marek Olšák
107bc76882
winsys/amdgpu: remove an amdgpu_cs dereference from amdgpu_cs_add_buffer
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13478 >
2021-10-29 06:54:21 +00:00
Marek Olšák
8bb0c09f9e
winsys/amdgpu: simplify parameter passing and derefs in cs_add_buffer
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13478 >
2021-10-29 06:54:21 +00:00
Marek Olšák
61bd8ec043
gallium/radeon: merge BO read/write usage flags with priority flags
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13478 >
2021-10-29 06:54:21 +00:00
Marek Olšák
90ff5ef5c0
gallium/radeon: remove unused RADEON_DEPENDENCY_START_FENCE
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13478 >
2021-10-29 06:54:21 +00:00
Marek Olšák
b5cf0d118c
gallium/radeon: remove/merge some BO priorities and remove holes
...
The upper bits will be used by RADEON_USAGE_*
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13478 >
2021-10-29 06:54:21 +00:00
Marek Olšák
f815009036
gallium/radeon: change the BO priority definitions to bits
...
This is for the next microoptimization.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13478 >
2021-10-29 06:54:21 +00:00
Marek Olšák
c5f39acb33
winsys/amdgpu: set max_ib_size and max_check_space_size later in cs_check_space
...
If there is enough CS space, don't update them. This eliminates some overhead.
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:30 +00:00
Marek Olšák
6129db68bf
winsys/amdgpu: remove force_chaining parameter from cs_check_space
...
it's always false
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:30 +00:00
Marek Olšák
f9d7db0262
ac,radeonsi: print a lowercase codename in the renderer string
...
to make it stand out less
Reviewed-by: Zoltán Böszörményi <zboszor@gmail.com>
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13392 >
2021-10-18 18:37:09 +00:00
Pierre-Eric Pelloux-Prayer
8791e831b1
winsys/amdgpu: add uncached flag to the imported DRI_PRIME buffer
...
There's no point in caching this linear buffer since we're only
ever writing to it.
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
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
Marek Olšák
af7c6720de
winsys/amdgpu: include CS ioctl overhead in RADEON_NOOP
...
submit an empty IB instead of skipping the ioctl
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12812 >
2021-09-10 23:32:03 +00:00
Marek Olšák
468135abab
winsys/amdgpu: precompute amdgpu_ib_max_submit_dwords
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12812 >
2021-09-10 23:32:03 +00:00
Marek Olšák
576f8394db
radeonsi: remove the primitive discard compute shader
...
It doesn't always work, it's only useful on gfx9 and older, and it's too
complicated.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4011
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12812 >
2021-09-10 23:32:03 +00:00
Marek Olšák
77a0411694
winsys/amdgpu: clean up amdgpu_cs_check_space
...
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
Jason Ekstrand
d4b482d378
android: Drop the Android.mk build system
...
Android.mk files haven't really been supported by Mesa devs for a long
time. Most of us have been willing to update Makefile.sources if we
remember and sometimes we try to blind code some Android.mk for a new
generator. However, the reality is that it breaks regularly and ends up
being maintained by the Android community. To address this problem
another approach was implemented in !10183 utilizing the maintained
meson build system. The old Android.mk files are no longer required.
This commit was created with the following commands:
git rm **/Android.mk
git rm **/Android.*.mk
git rm **/Makefile.sources
git rm CleanSpec.mk
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4487
Acked-by: Roman Stratiienko <r.stratiienko@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9728 >
2021-07-08 14:44:02 -05:00