James Park
f3bd5f9590
amd: Hide drm_fourcc.h on Windows
...
Declare missing definitions instead.
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9708 >
2021-04-13 00:24:02 +00:00
James Park
7dfc9e4431
amd: Hide amdgpu_drm.h on Windows
...
Declare missing definitions instead.
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9708 >
2021-04-13 00:24:02 +00:00
Icecream95
821d68652d
panfrost: Add fast path for graphics work group computation
...
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10158 >
2021-04-12 23:53:41 +00:00
Icecream95
c8620005d2
panfrost: Align BO size to 4096 bytes
...
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10158 >
2021-04-12 23:53:41 +00:00
Icecream95
1b41707bbc
panfrost: Only add resource checksum BOs to the batch once
...
Previously panfrost_batch_add_bo was called MAX_MIP_LEVELS times on
the same batch.
Fixes: cbf68b21fb ("panfrost: Move checksum_bo to panfrost_resource")
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10158 >
2021-04-12 23:53:41 +00:00
James Park
1aeebac4e6
ac/rgp: BSD elf library compatibility
...
Allow compilation on Windows using modified BSD elf library.
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9210 >
2021-04-12 22:50:52 +00:00
Thong Thai
e62c7e7c6c
radeon: Add cropping to encoded H.265 when padding is used
...
Because the VCN encoder needs the surface to be memory aligned, the
resolution of the image passed to the encoder might be larger and have
extra padding added - this change crops the resulting output to
compensate for the extra padding that might have been added.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4559
Signed-off-by: Thong Thai <thong.thai@amd.com >
Reviewed-by: Leo Liu <leo.liu@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10137 >
2021-04-12 22:42:53 +00:00
Vasily Khoruzhick
77fdabdfa5
lima: limit number of draws per job
...
Otherwise we may hit tile heap size limit if an app issues too many
draws per job.
Reviewed-by: Erico Nunes <nunes.erico@gmail.com >
Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10121 >
2021-04-12 22:34:12 +00:00
Vasily Khoruzhick
c8e80c24d4
lima: use passed surface to get mipmap level for reload, not cbuf
...
lima_pack_reload_plbu_cmd() can be used for either cbuf or zsbuf, so
use passed surface other using cbuf unconditionally.
Fixes: b8c31ac06d ("lima: fix glCopyTexSubImage2D")
Reviewed-by: Erico Nunes <nunes.erico@gmail.com >
Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10121 >
2021-04-12 22:34:12 +00:00
Erico Nunes
b071d98c04
lima: increase epsilon for depthrange near == far
...
When the application sets depthrange near == far, lima inserts an
'epsilon' difference of decreasing 'near' by 1 unit, to prevent
application bugs.
For some specific values of depthrange this does not seem to be
sufficient, presumably due to precision limitations.
Increase the difference by also incrementing the 'far' distance in
this case, to further avoid bugs.
Signed-off-by: Erico Nunes <nunes.erico@gmail.com >
Reviewed-by: Vasily Khoruzhick <anarsoul@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9933 >
2021-04-12 21:08:35 +00:00
Marek Olšák
faf10bd49d
ac/surface: use named "color and "zs" structures in unions
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10083 >
2021-04-12 20:53:45 +00:00
Marek Olšák
468836317b
ac/surface: unify htile_* and dcc_* fields as meta_* fields
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10083 >
2021-04-12 20:53:45 +00:00
Marek Olšák
34fd07aa56
ac/surface: unify htile_levels and dcc_levels as meta_levels
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10083 >
2021-04-12 20:53:45 +00:00
Marek Olšák
b16c7b706f
ac/surface: pack radeon_surf better
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10083 >
2021-04-12 20:53:45 +00:00
Marek Olšák
988f148db3
ac/surface: overlap color and Z/S fields using a union in gfx9_surf_layout
...
to save space
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10083 >
2021-04-12 20:53:45 +00:00
Marek Olšák
ab00557685
ac/surface: pack alignments by storing log2 in radeon_surf
...
Only one bit is set in alignments, so store the bit offset (log2) and
change the type from uint32_t to uint8_t.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10083 >
2021-04-12 20:53:45 +00:00
Marek Olšák
cb016bb600
ac/surface: pack radeon_surf::num_htile_levels better
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10083 >
2021-04-12 20:53:45 +00:00
Marek Olšák
8837d1d833
ac/surface: pack gfx9_surf_layout:resource_type better to save 8 bytes
...
Yes, this saves 8 bytes. See pahole for yourself.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10083 >
2021-04-12 20:53:45 +00:00
Marek Olšák
4bd5f62966
ac/surface: pack gfx9_surf_meta_flags better
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10083 >
2021-04-12 20:53:45 +00:00
Marek Olšák
3f074d2f45
ac/surface: inline and reorder gfx9_surf_flags 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/10083 >
2021-04-12 20:53:45 +00:00
Marek Olšák
48dbdc62bf
ac/surface: change legacy_surf_level::offset to 32-bit offset_256B shifted by 8
...
Images are always aligned to 256B (enforced by register and descriptor
fields) and limited to 40-bit addresses. This saves some space.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10083 >
2021-04-12 20:53:45 +00:00
Marek Olšák
bbda20bf29
ac/surface: overlap color and Z/S fields using a union in legacy_surf_layout
...
to save space
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10083 >
2021-04-12 20:53:45 +00:00
Marek Olšák
2fd8018845
ac/surface: split dcc level info from surface_info to save space
...
stencil level info doesn't have DCC
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10083 >
2021-04-12 20:53:45 +00:00
Rhys Perry
e9dc3df868
nir/loop_unroll: fix is_indirect_load() with load_global
...
load_global only has one source.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net >
Fixes: dfe429eb41 ("nir/loop_unroll: unroll more aggressively if it can improve load scheduling")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10186 >
2021-04-12 20:28:57 +00:00
Jesse Natalie
eae264918c
CI: Enable -werror for Windows
...
Acked-by: Eric Engestrom <eric@engestrom.ch >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10157 >
2021-04-12 19:12:40 +00:00
Jesse Natalie
3b44d481e4
driconf: Remove default values from string driconf entries
...
None of the call sites pass a string here, which produces warnings
for MSVC, for not passing an argument to a macro which requires it.
Looks like GCC/clang stringize an unpassed argument to ""
Acked-by: Eric Engestrom <eric@engestrom.ch >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10157 >
2021-04-12 19:12:40 +00:00
Jesse Natalie
99dde83a3e
meson: For MSVC, suppress warnings generated by useless delayloads
...
LLVM's tools delayload some OS DLLs to improve process startup times,
but they put the delayload in the exported linker args that Meson picks
up and then applies to all libraries that link against LLVM. Since our
binaries don't link against the OS libs that are being delayloaded, that
generates a "useless delayload" warning.
Acked-by: Eric Engestrom <eric@engestrom.ch >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10157 >
2021-04-12 19:12:40 +00:00
Jesse Natalie
8cc3100226
microsoft/clc: Update unit test to always use COMMON state for buffers
...
New Windows versions have new debug validation warning that for resources that
aren't actually UPLOAD/READBACK (which these aren't, thanks to the
GetCustomHeapProperties call), initial state that's not COMMON doesn't actually
do anything, which causes these tests to all fail because they verify that
they don't produce debug layer messages.
Reviewed-By: Bill Kristiansen <billkris@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10190 >
2021-04-12 18:50:20 +00:00
Rhys Perry
0f2bf55c7e
nir/lcssa: fix nondeterminism in predecessor iteration
...
set_foreach()'s order on a list of nir_block * isn't deterministic, so we
need to sort the predecessor list.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3364 >
2021-04-12 18:17:19 +00:00
Rhys Perry
7050896be0
nir: add nir_block_get_predecessors_sorted() helper
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3364 >
2021-04-12 18:17:19 +00:00
Jason Ekstrand
21582016c5
anv: Make memory type and queue family pointers const
...
These point to data inside the instance so no one should be modifying
them.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10184 >
2021-04-12 18:09:27 +00:00
Leo Liu
544044b29e
radeonsi: replace the hard coded video decode and encode caps
...
For the caps of max_width, max_height and max_level with those
that are available via querying the kernel.
Signed-off-by: Leo Liu <leo.liu@amd.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10095 >
2021-04-12 17:33:32 +00:00
Leo Liu
75a725e4c5
ac: add function for querying video capabilities
...
It will be used to query caps of decode and encode
for hardware AMDGPU supports
Signed-off-by: Leo Liu <leo.liu@amd.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10095 >
2021-04-12 17:33:32 +00:00
Leo Liu
012e84ac11
include/drm-uapi: bump AMDGPU headers
...
From drm-next:
commit 2cbcb78c9ee5520c8d836c7ff57d1b60ebe8e9b7
Merge: 06debd6e1b28 8c44390d8872
Author: Daniel Vetter <daniel.vetter@ffwll.ch >
Date: Fri Mar 26 15:52:01 2021 +0100
Merge tag 'amd-drm-next-5.13-2021-03-23' of https://gitlab.freedesktop.org/agd5f/linux into drm-next
amd-drm-next-5.13-2021-03-23:
amdgpu:
...
UAPI:
- amdgpu: Add a new INFO ioctl interface to query video capabilities
rather than hardcoding them in userspace. This allows us to provide
fine grained asic capabilities (e.g., if a particular part is
bandwidth limited, we can limit the capabilities). Proposed userspace:
https://gitlab.freedesktop.org/leoliu/drm/-/commits/info_video_caps
https://gitlab.freedesktop.org/leoliu/mesa/-/commits/info_video_caps
...
Danvet: A bunch of conflicts all over, but it seems to compile ... I
did put the call to dc_allow_idle_optimizations() on a single line
since it looked a bit too jarring to be left alone.
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com >
From: Alex Deucher <alexander.deucher@amd.com >
Link: https://patchwork.freedesktop.org/patch/msgid/20210324040147.1990338-1-alexander.deucher@amd.com
Signed-off-by: Leo Liu <leo.liu@amd.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10095 >
2021-04-12 17:33:32 +00:00
Leo Liu
a99d77e5be
ci: Fix meson-i386 build failed after libdrm bump version
...
libpciaccess-dev:$arch from STABLE_EPHEMERAL down to the main list of packages
in .gitlab-ci/container/cross_build.sh, and bumping the arm_build, i386_build,
ppc64el_build & s390x_build tags again.
Signed-off-by: Leo Liu <leo.liu@amd.com >
Suggested-by: Michel Dänzer <mdaenzer@redhat.com >
Reviewed-by: Michel Dänzer <mdaenzer@redhat.com >
----
.gitlab-ci.yml | 8 ++++----
.gitlab-ci/container/cross_build.sh | 2 +-
2 files changed, 5 insertions(+), 5 deletions(-)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10095 >
2021-04-12 17:33:32 +00:00
Leo Liu
2c1e4c4baa
meson: bump drm amdgpu version to 2.4.105
...
To include the INFO ioctl query for video caps
Signed-off-by: Leo Liu <leo.liu@amd.com >
Reviewed-by: Michel Dänzer <mdaenzer@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10095 >
2021-04-12 17:33:32 +00:00
Ilia Mirkin
1b06189f4a
nv50: enable ARB_framebuffer_no_attachments
...
This is a required part of ES3.1 and fairly trivial to enable. In
practice it's almost entirely useless since the only information one
would be able to obtain are queries.
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu >
Reviewed-by: Karol Herbst <kherbst@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10162 >
2021-04-12 16:45:40 +00:00
Ilia Mirkin
97d61ae771
nv50/ir: fake SV_THREAD_KILL support
...
If we say that there are no helper invocations, it's suboptimal but
allows ES 3.1 to chug along.
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu >
Reviewed-by: Karol Herbst <kherbst@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10162 >
2021-04-12 16:45:40 +00:00
Ilia Mirkin
ea49c9dabc
nv50: emulate indirect draws
...
This is helpful for allowing ES 3.1 to work, as this is required.
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu >
Reviewed-by: Karol Herbst <kherbst@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10162 >
2021-04-12 16:45:40 +00:00
Ilia Mirkin
1baefe4119
nv50/ir: fix texture size for msaa textures
...
These are scaled up in the descriptor, which doesn't really know about
their MSAA-ness. So we have to shift them back down.
Cc: mesa-stable
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu >
Reviewed-by: Karol Herbst <kherbst@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10162 >
2021-04-12 16:45:40 +00:00
Rhys Perry
723b000d27
radv: don't use fp16 for 8-bit division lowering before GFX9
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10081 >
2021-04-12 16:19:46 +00:00
Rhys Perry
d8f12fd421
aco: fix 16-bit f2{u8,i8} on GFX6/7
...
Not really tested.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Tony Wasserka <tony.wasserka@gmx.de >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10081 >
2021-04-12 16:19:46 +00:00
Rhys Perry
d0e15b8c22
aco: fix 16-bit u2f32
...
This shouldn't sign-extend.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Tony Wasserka <tony.wasserka@gmx.de >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10081 >
2021-04-12 16:19:46 +00:00
Rhys Perry
254360d96c
nir/lower_idiv: make lowered divisions exact
...
I can't imagine any reasonable optimization which could break this, but
since it's lowered from an integer instructions, we shouldn't do anything
which could change the result.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10081 >
2021-04-12 16:19:46 +00:00
Rhys Perry
a2619b97f5
nir/lower_idiv: add options to use fp32 for 8-bit division lowering
...
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10081 >
2021-04-12 16:19:46 +00:00
Rhys Perry
7db8d307bc
radv: remove second nir_lower_idiv
...
nir_lower_idiv now lowers 8/16-bit divisions.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10081 >
2021-04-12 16:19:45 +00:00
Alyssa Rosenzweig
e00d94f14f
panfrost: Enable AFBC buffer sharing
...
This was hidden originally to workaround a bug in the RK3399 display
driver. The patch resolving this issue has been merged in the upstream
kernel, and in fact...
1. The issue was visible on 21.0 even with this workaround under certain
configurations (sway with an external monitor).
2. Even on buggy kernels, due to other platform details this is an
obscure bug to hit (not aware of any ways to trigger it OOTB with
current userspaces other than sway with an external monitor)
So why bother? Let's just delete the hack and let AFBC be used freely.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Cc: mesa-stable
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10148 >
2021-04-12 15:55:55 +00:00
Alyssa Rosenzweig
23b060bba7
panfrost: Fix AFBC body_size for shared resources
...
Accidental read-before-write due to incorrect statement ordering. I love
SSA as much as anyone, but not everything is a parallel copy.
Fixes faults in glamor in 21.0 when using GIMP on v5.
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com >
Fixes: e8b997e175 ("panfrost: Add AFBC slice.body_size and slice.{row,surface}_stride fields")
Closes : #4389
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10148 >
2021-04-12 15:55:55 +00:00
Mike Blumenkrantz
e52712a653
zink: disable mutable formats for zs formats and scanout images
...
swapchain images are never going to be used as texture views, and zs formats
aren't compatible with any other formats
this enables implicit modifiers in some cases, and more work can be done in the future
to eliminate mutable format usage to further improve performance
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10180 >
2021-04-12 15:37:46 +00:00
Mike Blumenkrantz
3622df7ab2
zink: flag anv for mesa image create wsi
...
the image creation wsi is used, but the memory creation wsi isn't
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10180 >
2021-04-12 15:37:46 +00:00