Mike Blumenkrantz
b0d0c1971c
glx: delete releaseTexBuffer
...
this is always null, so none of the code is ever executed
Reviewed-by: Adam Jackson <ajax@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30400 >
2024-07-31 18:50:38 +00:00
Mike Blumenkrantz
0341623f39
dri: delete __DRI_COPY_SUB_BUFFER
...
bye-bye
Reviewed-by: Adam Jackson <ajax@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30400 >
2024-07-31 18:50:38 +00:00
Mike Blumenkrantz
5019481a16
dri: delete __DRImesaCoreExtensionRec::createNewScreen
...
Reviewed-by: Adam Jackson <ajax@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30400 >
2024-07-31 18:50:38 +00:00
yinjiyao
0460ededda
frontends/va: check hevc enc hdr sei
...
Decode packed header HDR sei for hevc encoding.
Signed-off-by: Yinjie Yao <yinjie.yao@amd.com >
Reviewed-by: Boyuan Zhang <boyuan.zhang@amd.com >
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30388 >
2024-07-29 21:48:04 +00:00
Ruijing Dong
8ea977ca5e
frontends/va: check av1 enc hdr metadata
...
Decode packed header HDR metadata
for av1 encoding.
Reviewed-by: David Rosca <david.rosca@amd.com >
Signed-off-by: Ruijing Dong <ruijing.dong@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30237 >
2024-07-23 17:16:21 +00:00
Eric Engestrom
dfd70bab4a
loader: gc loader_get_extensions_name() and __DRI_DRIVER_{GET_,}EXTENSIONS defines
...
Leaving the defines in include/GL/internal/dri_interface.h because I'm
not sure if something needs it.
Fixes: fa541a887c ("loader: delete loader_open_driver()")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30266 >
2024-07-19 20:38:19 +00:00
Daniel Stone
361f362258
dri: Unify createImage and createImageWithModifiers
...
There's no real reason for the two to exist separately. Nuke the old
createImage in favour of just having createImageWithModifiers.
Signed-off-by: Daniel Stone <daniels@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30245 >
2024-07-18 14:16:51 +00:00
Daniel Stone
4072809149
dri: Delete createImageFromName
...
Its last user is now gone. Bye!
Signed-off-by: Daniel Stone <daniels@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30245 >
2024-07-18 14:16:51 +00:00
Emma Anholt
2ef4b6ed54
dri: Drop the old lookupEGLImage wrapper function.
...
All the loaders implemented the split version. We don't need to maintain
the old function and struct layout, because we're version locked
between loader and driver.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30245 >
2024-07-18 14:16:51 +00:00
Daniel Stone
d6bce728de
dri: Remove createImageFromFds
...
All callers have been switched to use the newer createImageFromDmaBufs.
Signed-off-by: Daniel Stone <daniels@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30245 >
2024-07-18 14:16:51 +00:00
Daniel Stone
60cb420996
dri: Remove old createImageWithModifiers
...
Everyone can use createImageWithModifiers2, which is now just called
createImageWithModifiers.
Signed-off-by: Daniel Stone <daniels@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30245 >
2024-07-18 14:16:50 +00:00
Emma Anholt
3bfd157483
dri: Drop createImageFromFds2() in favor of createImageFromDmaBufs()
...
They're calling the same thing in the backend, just merge the impls. We
don't need to maintain the old function and struct layout, because we're
version locked between loader and driver.
Reviewed-by: Adam Jackson <ajax@redhat.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30245 >
2024-07-18 14:16:50 +00:00
Emma Anholt
26c1354578
dri: Consistently use createImageFromDmabufs() not createImageFromFds()
...
They're calling the same thing in the backend, so reduce the proliferation
of interfaces consumed within our implementation.
driVkImageExtensionSw now sets dri2_from_dma_bufs, which means that
egl_dri2 will now expose EXT_image_dma_buf_import. Given that it
previously set dri2_from_fds suggesting that it can import dmabufs, this
is presumably OK.
Reviewed-by: Adam Jackson <ajax@redhat.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30245 >
2024-07-18 14:16:50 +00:00
Emma Anholt
b1bcda45be
dri: Drop old createImageFromRenderbuffer()
...
... and rename createImageFromRenderbuffer2() to be it. We don't need to
maintain the old function and struct layout, because we're version locked
between loader and driver.
Reviewed-by: Adam Jackson <ajax@redhat.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30245 >
2024-07-18 14:16:50 +00:00
Emma Anholt
24d03a1c0f
dri: Replace createImageFromDmaBufs() with createImageFromDmaBufs3()
...
If FromDmaBufs()/FromDmaBufs2() are available, then FromDmaBufs3() is.
Drop the old method (unused by third parties) and make the new preferred
entrypoint take its name.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30245 >
2024-07-18 14:16:50 +00:00
Adam Jackson
91e1ea52c9
mesa_interface: Move out of GL/internal/
...
Move it into src/gallium/include/ to make it absolutely clear this is a Mesa detail.
While we're at it, clean up its include sites, including some places
where we can just include kopper_interface.h instead since it includes
mesa_interface.h as its first act.
Acked-by: Daniel Stone <daniels@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28378 >
2024-07-17 23:47:05 +00:00
Rhys Perry
57080749f7
gallium: remove PIPE_CAP_SHADER_CAN_READ_OUTPUTS
...
nir_lower_io_to_temporaries is now done for all stages except TCS, and
nir_lower_io_to_temporaries with a TCS is a no-op.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com >
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25590 >
2024-07-10 19:11:38 +00:00
David Rosca
20b76fe1d4
gallium: Remove pipe_h264_picture_desc.slice_parameter.slice_count
...
This is a duplicate of pipe_h264_picture_desc.slice_count and is not
currently used anywhere.
Reviewed-by: Ruijing Dong <ruijing.dong@amd.com >
Reviewed-by: Boyuan Zhang <Boyuan.Zhang@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30011 >
2024-07-08 19:09:38 +00:00
David Rosca
28fdc4b372
gallium: Remove PIPE_VIDEO_CAP_EFC_SUPPORTED
...
Reviewed-by: Thong Thai <thong.thai@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29932 >
2024-07-03 17:56:28 +00:00
David Rosca
03d4ec7321
gallium: Add is_video_target_buffer_supported
...
This will be used to replace PIPE_VIDEO_CAP_EFC_SUPPORTED.
Reviewed-by: Thong Thai <thong.thai@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29932 >
2024-07-03 17:56:27 +00:00
Konstantin Seurer
fcc0fd2fc1
gallium: Add a memory range parameter to resource_bind_backing
...
Needed to bind regions of the resource.
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29408 >
2024-06-27 09:29:34 +00:00
Karol Herbst
0fa4eaf6f6
gallium: add PIPE_CAP_TEXTURE_SAMPLER_INDEPENDENT
...
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25362 >
2024-06-26 10:04:02 +00:00
Karol Herbst
169dc86e74
gallium: properly type fields of pipe_resource.usage
...
This gets rid of most of the pointless bitfields and also moves away from
unsigned, which we really should stop using :)
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Reviewed-by: Adam Jackson <ajax@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29720 >
2024-06-14 13:56:34 +00:00
Karol Herbst
40785d9a52
gallium: properly type pipe_resource.usage with the enum
...
This allows for a more strongly typed field on the Rust side.
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Reviewed-by: Adam Jackson <ajax@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29720 >
2024-06-14 13:56:34 +00:00
Karol Herbst
f58247882a
gallium: reduce pipe_resource.usage to 4 bits
...
This works around a bindgen bug, but also moves the value into a single
byte as per the addition of compression_rate it spanned over two bytes.
Fixes: 5db7398672 ("gallium: add interface for fixed-rate surface/texture compression")
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Reviewed-by: Adam Jackson <ajax@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29720 >
2024-06-14 13:56:34 +00:00
Louis-Francis Ratté-Boulianne
5db7398672
gallium: add interface for fixed-rate surface/texture compression
...
Add methods needed to implement EGL_EXT_surface_compression and
GL_EXT_texture_storage_compression.
Signed-off-by: Louis-Francis Ratté-Boulianne <lfrb@collabora.com >
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27109 >
2024-06-12 21:20:06 +00:00
Ruijing Dong
8cd53d95fe
radesonsi/vcn: update vcn4 tile processing logic
...
Vcn4 tile number calculation doesn't consider
some input case, which could result in output
bitstream corruption, this fixed the issue.
Not using the number_of_tiles directly but from
calculation. Also change to re-use some macros
from local vcn_5_0.c to ac_vcn_enc.h header file.
Updated vcn4 spec_misc_av1 ip package.
Reviewed-by: Boyuan Zhang <Boyuan.Zhang@amd.com >
Signed-off-by: Ruijing Dong <ruijing.dong@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29556 >
2024-06-10 13:12:20 +00:00
Mike Blumenkrantz
27cd4b061c
gallium: add drawid_offset to draw_mesh_tasks interface
...
this matches the other draw interfaces
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29462 >
2024-06-07 17:47:53 +00:00
Yonggang Luo
85ff3f525c
util: Rename DETECT_OS_UNIX to DETECT_OS_POSIX
...
Looking at each usage of DETECT_OS_UNIX, it's more about the POSIX API usage, not the
Unix-like OS, so let's rename it
And for POSIX it's a standard to claim which API present, but for UNIX there is no such thing
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com >
Acked-by: Rob Clark <robdclark@chromium.org >
Reviewed-by: Gurchetan Singh <gurchetansingh@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29555 >
2024-06-07 01:56:28 +00:00
Marek Olšák
3d05d86d88
radeonsi/gfx12: add DCC
...
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29510 >
2024-06-06 01:01:46 +00:00
Marek Olšák
7232995fb5
radeonsi: remove leftover comment of non-existent RADEON_FLAG_MALL_NOALLOC
...
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29510 >
2024-06-06 01:01:46 +00:00
Marek Olšák
0dad61dfb6
radeonsi: allow RADEON_HEAP_BIT_GL2_BYPASS for VRAM
...
Queries might use it on gfx12.
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29510 >
2024-06-06 01:01:46 +00:00
Marek Olšák
e303aae145
radeonsi: remove RADEON_FLAG_READ_ONLY
...
It's not used much and it doubles the number of heaps.
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29510 >
2024-06-06 01:01:46 +00:00
Ruijing Dong
5860d4348a
frontends/va: parsing uniform_tile_spacing flag
...
in order to keep uniform_tile_spacing flag, parsing
it in frontends/va.
Acked-by: Leo Liu <leo.liu@amd.com >
Signed-off-by: Ruijing Dong <ruijing.dong@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29423 >
2024-05-30 20:12:37 +00:00
Rob Clark
2ea4a59ab7
loader: Add better support for virtgpu nctx driver loading
...
In the case of virtio_gpu, if the drm native context capset is
supported, we should try loading the native driver before falling back
to virgl.
Previously this was done with hacks in pipe_virtio_gpu_create_screen(),
but this also requires virgl's driconf to be the superset of virgl and
all the nctx drivers.
Instead add an optional loader callback to probe for nctx support. This
is called with the drm capset, if the host supports the drm context
type, to allow driver specific code to determine if the specific GPU is
supported, so we can cleanly fall back to virgl if it does not (for ex,
an old VM guest with a newer host, where mesa in the guest does not
support the new GPU, but mesa in the host does).
TODO: How to handle the dynamic loader case?
Signed-off-by: Rob Clark <robdclark@chromium.org >
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28777 >
2024-05-23 20:02:03 +00:00
David Rosca
9837dab4bd
frontends/va: Store slice types for H264 decode
...
Cc: mesa-stable
Reviewed-by: Leo Liu <leo.liu@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29055 >
2024-05-16 15:05:08 +00:00
Mike Blumenkrantz
2efa1ae0d5
dri: rename 'implicit' param from earlier series
...
I accidentally merged the wrong version of this, and this was supposed
to be the correct and more informative name
Acked-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29066 >
2024-05-07 15:19:23 +00:00
Chia-I Wu
893797eb32
gallium: add pipe_picture_desc::flush_flags
...
It specifies the flush flags for pipe_video_codec::end_frame.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28771 >
2024-04-26 00:45:04 +00:00
Mike Blumenkrantz
b53a402edc
pipe-loader: plumb a flag for implicit driver load through screen creation
...
Acked-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28139 >
2024-04-22 23:25:58 +00:00
Marek Olšák
e5f133ccc4
util: import pipe_box and its helpers
...
We'll use them. There are also new helpers that we'll use.
Reviewed-by: Yonggang Luo <luoyonggang@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28733 >
2024-04-22 01:42:52 +00:00
Mike Blumenkrantz
2e5d49b3dd
gallium: delete PIPE_CAP_NIR_COMPACT_ARRAYS
...
this is now nir_shader_compiler_options::compact_arrays
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28601 >
2024-04-12 18:43:48 +00:00
Hannes Mann
4f4c9ff68a
gallium/pipe: Add contiguous planes per-surface attribute
...
Attribute is set when textures are created by compatible drivers, but
not when importing from DMA-BUF.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26165 >
2024-04-11 20:14:15 +00:00
Mike Blumenkrantz
bfd8c12406
winsys: add more stride members to winsys_handle
...
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27805 >
2024-04-05 16:05:21 +00:00
Mike Blumenkrantz
3727457884
winsys: add WINSYS_HANDLE_TYPE_UNBACKED
...
for use with lavapipe imports
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27805 >
2024-04-05 16:05:21 +00:00
Lucas Fryzek
7e5c5d313b
gallium: Add dmabuf arg to memory fd allocation API
...
Modify the memory fd allocation API to provide an argument to specify
if the allocating fd should be a dmabuf.
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27805 >
2024-04-05 16:05:20 +00:00
Mike Blumenkrantz
23206844eb
sw_winsys: add displaytarget_create_mapped
...
this is for creating displaytargets from already-imported fds
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27805 >
2024-04-05 16:05:20 +00:00
Mike Blumenkrantz
24453579ad
gallium: rework PIPE_CAP_POINT_SIZE_FIXED
...
this adds modes to the cap which allow drivers to opt out of the
frontend injecting gl_PointSize=1.0 into shaders while still getting
the uniform value uploaded
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28162 >
2024-04-04 11:26:17 +00:00
Ruijing Dong
7525d2242b
radeonsi/vcn: add enc surface alignment caps
...
set [64x16] as the alignment for hevc
encoding surface.
Cc: mesa-stable
Reviewed-By: Sil Vilerino <sivileri@microsoft.com >
Reviewed-by: Leo Liu <leo.liu@amd.com >
Signed-off-by: Ruijing Dong <ruijing.dong@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28280 >
2024-03-25 14:38:46 +00:00
Marek Olšák
651191801a
gallium: increase the size of pipe_box y, height fields to allow bigger textures
...
and reorder the fields to pack them better
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
Acked-by: Karol Herbst <kherbst@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27953 >
2024-03-21 03:33:39 +00:00
Qiang Yu
6b1fd20780
radeonsi: split RADEON_USAGE_NEEDS_IMPLICIT_SYNC into CB and DB flags
...
it will be required in the future
Signed-off-by: Qiang Yu <yuq825@gmail.com >
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27943 >
2024-03-11 23:36:55 +00:00