platform/upstream/mesa.git
22 months agoradv: store the binary to radv_shader_part
Samuel Pitoiset [Thu, 1 Sep 2022 10:14:11 +0000 (12:14 +0200)]
radv: store the binary to radv_shader_part

This is currently always freed after the upload but this will allow
to upload the PS epilog later.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18363>

22 months agoradv: split upload_shader_part() in two parts
Samuel Pitoiset [Thu, 1 Sep 2022 09:33:40 +0000 (11:33 +0200)]
radv: split upload_shader_part() in two parts

One that creates the radv_shader_part object and one that uploads it.
This will be used to upload the PS epilogs as part of the existing
pipeline BO.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18363>

22 months agoradv: store the VS prologs/PS epilogs VA at upload time
Samuel Pitoiset [Thu, 1 Sep 2022 09:55:49 +0000 (11:55 +0200)]
radv: store the VS prologs/PS epilogs VA at upload time

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18363>

22 months agoradv/ci: re-enable dEQP-VK.renderpass2.depth_stencil_resolve.*_samplemask
Samuel Pitoiset [Mon, 12 Sep 2022 06:18:37 +0000 (08:18 +0200)]
radv/ci: re-enable dEQP-VK.renderpass2.depth_stencil_resolve.*_samplemask

Since RADV switched to 100% dynamic rendering, image transitions for
attachments not used in a subpass are correctly performed.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18542>

22 months agoradv: add a pointer to radv_shader_binary in radv_shader
Samuel Pitoiset [Thu, 1 Sep 2022 11:56:34 +0000 (13:56 +0200)]
radv: add a pointer to radv_shader_binary in radv_shader

With GPL, we will have to keep the shader binary in the library for
uploading it later, so it's easier to have a pointer in radv_shader.
The shader binary will be freed when the library is destroyed.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18515>

22 months agointel/compiler: Use brw_ud* helpers in thread payload code
Caio Oliveira [Sat, 10 Sep 2022 18:09:15 +0000 (11:09 -0700)]
intel/compiler: Use brw_ud* helpers in thread payload code

Reviewed-by: Francisco Jerez <currojerez@riseup.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18176>

22 months agointel/compiler: Add a few more brw_ud* helpers
Caio Oliveira [Fri, 9 Sep 2022 23:52:10 +0000 (16:52 -0700)]
intel/compiler: Add a few more brw_ud* helpers

Reviewed-by: Francisco Jerez <currojerez@riseup.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18176>

22 months agointel/compiler: Make thread_payload struct abstract
Caio Oliveira [Tue, 30 Aug 2022 00:13:00 +0000 (17:13 -0700)]
intel/compiler: Make thread_payload struct abstract

Each shader stage has its own struct and will instantiate it, so the
base class doesn't need to be instantiated anymore.

Reviewed-by: Francisco Jerez <currojerez@riseup.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18176>

22 months agointel/compiler: Create and use struct for CS thread payload
Caio Oliveira [Tue, 23 Aug 2022 04:47:02 +0000 (21:47 -0700)]
intel/compiler: Create and use struct for CS thread payload

Move subgroup_id, that's only used by CS for verx10 < 125, as part of
the payload too -- even though is not, strictly speaking.

Note the thread execution of Task/Mesh is similar enough, so we make
their common struct inherit from cs_thread_payload.

Reviewed-by: Francisco Jerez <currojerez@riseup.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18176>

22 months agointel/compiler: Export brw_get_subgroup_id_param_index()
Caio Oliveira [Tue, 30 Aug 2022 07:47:32 +0000 (00:47 -0700)]
intel/compiler: Export brw_get_subgroup_id_param_index()

Reviewed-by: Francisco Jerez <currojerez@riseup.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18176>

22 months agointel/compiler: Create and use struct for Bindless thread payload
Caio Oliveira [Fri, 26 Aug 2022 00:00:15 +0000 (17:00 -0700)]
intel/compiler: Create and use struct for Bindless thread payload

Reviewed-by: Marcin Ślusarz <marcin.slusarz@intel.com>
Acked-by: Ian Romanick <ian.d.romanick@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18176>

22 months agointel/compiler: Store start of ICP handles in GS thread payload struct
Caio Oliveira [Tue, 23 Aug 2022 06:02:34 +0000 (23:02 -0700)]
intel/compiler: Store start of ICP handles in GS thread payload struct

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Marcin Ślusarz <marcin.slusarz@intel.com>
Acked-by: Ian Romanick <ian.d.romanick@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18176>

22 months agointel/compiler: Create and use struct for GS thread payload
Caio Oliveira [Tue, 23 Aug 2022 05:23:17 +0000 (22:23 -0700)]
intel/compiler: Create and use struct for GS thread payload

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Marcin Ślusarz <marcin.slusarz@intel.com>
Acked-by: Ian Romanick <ian.d.romanick@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18176>

22 months agointel/compiler: Create and use struct for TASK and MESH thread payloads
Caio Oliveira [Mon, 22 Aug 2022 06:05:08 +0000 (23:05 -0700)]
intel/compiler: Create and use struct for TASK and MESH thread payloads

Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Marcin Ślusarz <marcin.slusarz@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Acked-by: Ian Romanick <ian.d.romanick@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18176>

22 months agointel/compiler: Create and use struct for VS thread payload
Caio Oliveira [Mon, 22 Aug 2022 04:22:12 +0000 (21:22 -0700)]
intel/compiler: Create and use struct for VS thread payload

Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Marcin Ślusarz <marcin.slusarz@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Acked-by: Ian Romanick <ian.d.romanick@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18176>

22 months agointel/compiler: Create and use struct for TES thread payload
Caio Oliveira [Mon, 22 Aug 2022 03:51:58 +0000 (20:51 -0700)]
intel/compiler: Create and use struct for TES thread payload

Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Marcin Ślusarz <marcin.slusarz@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Acked-by: Ian Romanick <ian.d.romanick@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18176>

22 months agointel/compiler: Store start of ICP handles in TCS thread payload struct
Caio Oliveira [Sat, 20 Aug 2022 00:31:37 +0000 (17:31 -0700)]
intel/compiler: Store start of ICP handles in TCS thread payload struct

Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Marcin Ślusarz <marcin.slusarz@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Acked-by: Ian Romanick <ian.d.romanick@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18176>

22 months agointel/compiler: Store Primitive ID in TCS thread payload struct
Caio Oliveira [Fri, 19 Aug 2022 22:04:15 +0000 (15:04 -0700)]
intel/compiler: Store Primitive ID in TCS thread payload struct

Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Marcin Ślusarz <marcin.slusarz@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Acked-by: Ian Romanick <ian.d.romanick@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18176>

22 months agointel/compiler: Store Patch URB output in TCS thread payload struct
Caio Oliveira [Fri, 19 Aug 2022 21:57:31 +0000 (14:57 -0700)]
intel/compiler: Store Patch URB output in TCS thread payload struct

Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Marcin Ślusarz <marcin.slusarz@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Acked-by: Ian Romanick <ian.d.romanick@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18176>

22 months agointel/compiler: Create struct for TCS thread payload
Caio Oliveira [Fri, 19 Aug 2022 21:41:52 +0000 (14:41 -0700)]
intel/compiler: Create struct for TCS thread payload

Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Marcin Ślusarz <marcin.slusarz@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Acked-by: Ian Romanick <ian.d.romanick@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18176>

22 months agointel/compiler: Use FS thread payload only for FS
Caio Oliveira [Fri, 19 Aug 2022 19:40:20 +0000 (12:40 -0700)]
intel/compiler: Use FS thread payload only for FS

Move the setup into the FS thread payload constructor.  Consolidate
payload setup for that in brw_fs_thread_payload.cpp file.

Reviewed-by: Francisco Jerez <currojerez@riseup.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18176>

22 months agointel/compiler: Make a type for Thread Payload and FS variant
Caio Oliveira [Fri, 19 Aug 2022 19:18:21 +0000 (12:18 -0700)]
intel/compiler: Make a type for Thread Payload and FS variant

Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Marcin Ślusarz <marcin.slusarz@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Acked-by: Ian Romanick <ian.d.romanick@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18176>

22 months agointel/devinfo: Add MTL platforms enums and intel_device_info_is_mtl()
Jordan Justen [Mon, 8 Nov 2021 22:20:24 +0000 (14:20 -0800)]
intel/devinfo: Add MTL platforms enums and intel_device_info_is_mtl()

Ref: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/include/drm/i915_pciids.h?h=v6.0-rc4#n736
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18482>

22 months agonir/lower_blend: Avoid emitting unnecessary fsats
Alyssa Rosenzweig [Sat, 10 Sep 2022 20:08:13 +0000 (16:08 -0400)]
nir/lower_blend: Avoid emitting unnecessary fsats

The option struct passed to nir_lower_blend doesn't have a "blending
disabled" flag. Unless blending is skipped due to logic ops or
framebuffer formats, nir_lower_blend always blends, even if the blend
mode is "replace" (corresponding to the API level blend disable).

That's mostly okay, since NIR can optimize out the code, at the expense
of a little compile time. However, there's a catch: nir_lower_blend
emits fsat at the start of the shader (for UNORM framebuffers, or
fsat_signed for SNORM). We can expect hardware to saturate the input to
store_output itself, so these operations are redundant, but it's tricky
to optimize these instructions out otherwise. Don't even try: detect the
replace blend mode and don't call nir_blend in that case. Colour masking
is still applied as usual.

Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18535>

22 months agoradv: Enable subgroup feature bits for mesh and task shaders.
Timur Kristóf [Fri, 9 Sep 2022 16:26:15 +0000 (18:26 +0200)]
radv: Enable subgroup feature bits for mesh and task shaders.

Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18520>

22 months agoradv: Replace NV_mesh_shader macros with EXT.
Timur Kristóf [Fri, 9 Sep 2022 16:35:09 +0000 (18:35 +0200)]
radv: Replace NV_mesh_shader macros with EXT.

Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18521>

22 months agovenus: avoid fixing pipeline if not derivative
Yiwei Zhang [Mon, 12 Sep 2022 18:00:50 +0000 (18:00 +0000)]
venus: avoid fixing pipeline if not derivative

Fixes: 33e791bc02a ("venus/pipeline: Ignore basePipelineHandle")
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Chad Versace <chadversary@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18555>

22 months agovenus: zero out the pipeline handles
Yiwei Zhang [Mon, 12 Sep 2022 17:46:59 +0000 (17:46 +0000)]
venus: zero out the pipeline handles

We only have to zero out the handles on failure, which is missed. For
pipelines, we can just do it at the beginning for simplicity.

Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Chad Versace <chadversary@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18555>

22 months agovenus: vn_ResetDescriptorPool to reset mutable type states
Yiwei Zhang [Mon, 12 Sep 2022 05:39:17 +0000 (05:39 +0000)]
venus: vn_ResetDescriptorPool to reset mutable type states

Fixes: de5879447b4 ("Track bitset when create descriptor pool")
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Chad Versace <chadversary@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18555>

22 months agovenus: fix an oob in descriptor pool state restoration
Yiwei Zhang [Mon, 12 Sep 2022 05:30:53 +0000 (05:30 +0000)]
venus: fix an oob in descriptor pool state restoration

Fixes: de5879447b4 ("Track bitset when create descriptor pool")
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Chad Versace <chadversary@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18555>

22 months agoRevert "glx: Use XSaveContext, delete glxhash.c"
Adam Jackson [Mon, 12 Sep 2022 18:37:50 +0000 (14:37 -0400)]
Revert "glx: Use XSaveContext, delete glxhash.c"

This reverts commit 057c58b39bae8317ffbec666366a526cb17d0160.

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7242
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18556>

22 months agor300: add special path for merging movs with the same source
Pavel Ondračka [Sat, 27 Aug 2022 18:16:56 +0000 (20:16 +0200)]
r300: add special path for merging movs with the same source

This is quite rare but still helps few tesseract shaders and
is quite straightforward.

shader-db with RV530:
total instructions in shared programs: 135671 -> 135646 (-0.02%)
instructions in affected programs: 322 -> 297 (-7.76%)
helped: 13
HURT: 0

Reviewed-by: Filip Gawin <filip@gawin.net>
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18288>

22 months agor300: merge together MOV and MAD instructions
Pavel Ondračka [Thu, 11 Aug 2022 12:49:15 +0000 (14:49 +0200)]
r300: merge together MOV and MAD instructions

Assuming they write different channels of the same destination
and they share at least one source or one of the sources is
RC_FILE_NONE.

shader-db with RV530:
total instructions in shared programs: 136033 -> 135673 (-0.26%)
instructions in affected programs: 22987 -> 22627 (-1.57%)
total temps in shared programs: 18977 -> 18965 (-0.06%)
temps in affected programs: 74 -> 62 (-16.22%)

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6188

Reviewed-by: Filip Gawin <filip@gawin.net>
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18288>

22 months agor300: run copy propagate once more after merging channels
Pavel Ondračka [Fri, 26 Aug 2022 12:57:25 +0000 (14:57 +0200)]
r300: run copy propagate once more after merging channels

The previous pass can actually create some new movs that are eligible
for copy propagation. There is some minor inctruction and temps
improvement but the biggest win is a gained gnome-shell shader.
Nine more still fail with too many instructions though.

GAINED: shaders/gnome-shell-42/6-1.shader_test FS

shader-db with RV530:
total instructions in shared programs: 136382 -> 135538 (-0.62%)
instructions in affected programs: 31021 -> 30177 (-2.72%)
total temps in shared programs: 18939 -> 18937 (-0.01%)
temps in affected programs: 563 -> 561 (-0.36%)

Reviewed-by: Filip Gawin <filip@gawin.net>
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18288>

22 months agointel/compiler: fix assert from ver to verx10
Tapani Pälli [Mon, 12 Sep 2022 10:18:39 +0000 (13:18 +0300)]
intel/compiler: fix assert from ver to verx10

Fixes: 027b8b42490 ("intel/compiler: Add helper for barrier message payload setup for gfx >= 125")
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18546>

22 months agointel/compiler: Use builder to allocate fs regs for gs control data bits
Jordan Justen [Thu, 8 Sep 2022 05:50:47 +0000 (22:50 -0700)]
intel/compiler: Use builder to allocate fs regs for gs control data bits

Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18537>

22 months agointel/compiler: Use builder to allocate fs regs for TCS store output
Caio Oliveira [Sun, 11 Sep 2022 06:25:28 +0000 (23:25 -0700)]
intel/compiler: Use builder to allocate fs regs for TCS store output

Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18537>

22 months agoamd/common: some ASICs with gfx9 use compute rings for render
James Zhu [Mon, 29 Aug 2022 19:46:20 +0000 (15:46 -0400)]
amd/common: some ASICs with gfx9 use compute rings for render

Some ASICs with gfx9 use compute rings for render.

Fixes: 983223de5dc01f50 - ac/gpu_info: use the kernel-reported
GFX IP version to set gfx_level

-v2: update merge requests num

Signed-off-by: James Zhu <James.Zhu@amd.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18553>

22 months agomesa: skip extra state updates for clear calls
Illia Polishchuk [Mon, 12 Sep 2022 07:36:17 +0000 (10:36 +0300)]
mesa: skip extra state updates for clear calls

The glClear call updates draw state in the same way as other draw calls
with _mesa_update_state func

If currently used shader uses textures, _mesa_update_state will try to
update the shader texture state

But if the texture not set yet, before glClear call, it will detect
incompleted texture and will create dummy texture with default values
(see the update_single_program_texture func).
And this will be complete waste of time for glClear

Closes: #7128

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18459>

22 months agopan/decode: Fix job cycle detection
Alyssa Rosenzweig [Sun, 11 Sep 2022 22:12:09 +0000 (18:12 -0400)]
pan/decode: Fix job cycle detection

We need to look at the job header pointers themselves, not the memory objects
that contain them, because there can be (and usually is) multiple jobs per BO.

Fixes: 3da8c9193c3 ("panfrost: Handle Job VA cycles when decoding a dump file")
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18539>

22 months agov3dv: expose VK_EXT_primitive_topology_list_restart
Iago Toral Quiroga [Mon, 12 Sep 2022 08:54:52 +0000 (10:54 +0200)]
v3dv: expose VK_EXT_primitive_topology_list_restart

The hw supports restarts of list primmitives and we pass
all the relevant CTS tests.

We don't advertise patch list restarts because we don't support
tessellation shaders yet.

Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18544>

22 months agoanv: Allow aliasing with modifiers for WSI images
Oleksii Bozhenko [Thu, 8 Sep 2022 19:45:45 +0000 (22:45 +0300)]
anv: Allow aliasing with modifiers for WSI images

Ignore ALIAS_BIT when format comes from WSI because
we have the ability to bind the MEMORY_BINDING_PRIVATE
from the other WSI image.

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7019

Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18347>

22 months agovulkan/wsi: Pass wsi_image_create_info into anv_GetPhysicalDeviceImageFormatProperties2
Oleksii Bozhenko [Thu, 8 Sep 2022 19:44:40 +0000 (22:44 +0300)]
vulkan/wsi: Pass wsi_image_create_info into anv_GetPhysicalDeviceImageFormatProperties2

Signed-off-by: Oleksii Bozhenko <oleksii.bozhenko@globallogic.com>
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18347>

22 months agopvr: Add mid fragment pipeline barrier if needed.
Karmjit Mahil [Mon, 28 Mar 2022 12:02:44 +0000 (13:02 +0100)]
pvr: Add mid fragment pipeline barrier if needed.

Signed-off-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Reviewed-by: Rajnesh Kanwal <rajnesh.kanwal@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18124>

22 months agopvr: Implement clear ppp state emission from template.
Karmjit Mahil [Thu, 17 Mar 2022 11:25:54 +0000 (11:25 +0000)]
pvr: Implement clear ppp state emission from template.

Signed-off-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Reviewed-by: Rajnesh Kanwal <rajnesh.kanwal@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18124>

22 months agoRevert "pvr: Make pvr_cmd_pack() macro clearly internal"
Karmjit Mahil [Thu, 4 Aug 2022 13:00:57 +0000 (14:00 +0100)]
Revert "pvr: Make pvr_cmd_pack() macro clearly internal"

This reverts commit 27c57b86500ce48154533d78b74350c31152b2f3.

The driver doesn't always pack or emit words directly. In some
cases it might be desirable to store the struct equivalent for the
control word and emit/pack at a later stage. Thus reverting to
expose pvr_cmd_pack().
One such use case is in the following commit.

Signed-off-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Reviewed-by: Rajnesh Kanwal <rajnesh.kanwal@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18124>

22 months agopvr: Add graphics pipeline barrier handling.
Karmjit Mahil [Thu, 17 Mar 2022 11:28:37 +0000 (11:28 +0000)]
pvr: Add graphics pipeline barrier handling.

Signed-off-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Reviewed-by: Rajnesh Kanwal <rajnesh.kanwal@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18124>

22 months agopvr: Add static clear VDM state in pvr_device.
Karmjit Mahil [Tue, 15 Mar 2022 14:43:17 +0000 (14:43 +0000)]
pvr: Add static clear VDM state in pvr_device.

Signed-off-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Reviewed-by: Rajnesh Kanwal <rajnesh.kanwal@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18124>

22 months agopvr: Add static clear control stream templates in pvr_device.
Karmjit Mahil [Mon, 14 Mar 2022 16:14:26 +0000 (16:14 +0000)]
pvr: Add static clear control stream templates in pvr_device.

The templates will be used to flush fragment work at the
pipeline barrier. They will also be used in
vkCmdClearAttachments().

"pds_state" is a pointer to an array. This is done to prevent a
memcpy() patching the PDS state. Whenever the template requires
PDS state we will always be patching it so let's just pass a
pointer instead. Using a pointer here also allows to check (with a
NULL check) whether the pds state in the template was configured
prior to emitting.

Signed-off-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Reviewed-by: Rajnesh Kanwal <rajnesh.kanwal@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18124>

22 months agopvr: Add clear program in pvr_device.
Karmjit Mahil [Mon, 18 Jul 2022 12:29:32 +0000 (13:29 +0100)]
pvr: Add clear program in pvr_device.

It gets used to flush fragment work for a graphics pipeline
barrier.

Signed-off-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Reviewed-by: Rajnesh Kanwal <rajnesh.kanwal@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18124>

22 months agoAndroid: Use libgbm_mesa name for SDK30+
Roman Stratiienko [Sat, 10 Sep 2022 15:42:50 +0000 (18:42 +0300)]
Android: Use libgbm_mesa name for SDK30+

libgbm.so name has been occupied in AOSP by minigbm starting from
Android-11 (SDKv30).

In AOSP's mesa3d fork, libgbm was renamed to libgbm_mesa.

Signed-off-by: Roman Stratiienko <r.stratiienko@gmail.com>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18533>

22 months agoradv: fix pipelineStageCreationFeedbackCount when it's 0
Samuel Pitoiset [Fri, 9 Sep 2022 07:55:49 +0000 (09:55 +0200)]
radv: fix pipelineStageCreationFeedbackCount when it's 0

From the Vulkan spec 1.3.227:

    "If pipelineStageCreationFeedbackCount is not 0,
     pPipelineStageCreationFeedbacks must be a valid pointer to an
     array of pipelineStageCreationFeedbackCount
     VkPipelineCreationFeedback structures."

Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18513>

22 months agorusticl: add README file
Karol Herbst [Sat, 10 Sep 2022 13:32:45 +0000 (15:32 +0200)]
rusticl: add README file

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agoci: rusticl with llvmpipe
Karol Herbst [Thu, 11 Aug 2022 16:11:07 +0000 (18:11 +0200)]
ci: rusticl with llvmpipe

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/program: some more API validation
Karol Herbst [Fri, 5 Aug 2022 20:29:46 +0000 (22:29 +0200)]
rusticl/program: some more API validation

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl: call glsl_type_singleton_init_or_ref
Karol Herbst [Fri, 24 Jun 2022 16:55:53 +0000 (18:55 +0200)]
rusticl: call glsl_type_singleton_init_or_ref

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl: proper PIPE_MAP flags for internal maps
Karol Herbst [Thu, 12 May 2022 16:38:27 +0000 (18:38 +0200)]
rusticl: proper PIPE_MAP flags for internal maps

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/kernel: use real references for arguments
Karol Herbst [Mon, 9 May 2022 11:21:26 +0000 (13:21 +0200)]
rusticl/kernel: use real references for arguments

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/icd: add some way of debugging CL function calls
Karol Herbst [Thu, 5 May 2022 23:38:23 +0000 (01:38 +0200)]
rusticl/icd: add some way of debugging CL function calls

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/icd: implement clGetExtensionFunctionAddressForPlatform
Karol Herbst [Fri, 6 May 2022 11:10:56 +0000 (13:10 +0200)]
rusticl/icd: implement clGetExtensionFunctionAddressForPlatform

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/device: report mesas version for CL_DRIVER_VERSION
Karol Herbst [Thu, 5 May 2022 22:27:32 +0000 (00:27 +0200)]
rusticl/device: report mesas version for CL_DRIVER_VERSION

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/kernel: fix local buffers
Karol Herbst [Wed, 4 May 2022 17:43:26 +0000 (19:43 +0200)]
rusticl/kernel: fix local buffers

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/program: parse quoted paths in args
Karol Herbst [Wed, 4 May 2022 10:06:04 +0000 (12:06 +0200)]
rusticl/program: parse quoted paths in args

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/device: allow overwriting the device_type via env
Karol Herbst [Tue, 3 May 2022 19:52:42 +0000 (21:52 +0200)]
rusticl/device: allow overwriting the device_type via env

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl: disable fp64 support
Karol Herbst [Thu, 28 Apr 2022 00:49:00 +0000 (02:49 +0200)]
rusticl: disable fp64 support

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/memory: kernel read_write images prep work
Karol Herbst [Wed, 27 Apr 2022 19:19:15 +0000 (21:19 +0200)]
rusticl/memory: kernel read_write images prep work

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/program: some boilerplate code for SPIR-V support
Karol Herbst [Sat, 23 Apr 2022 01:05:09 +0000 (03:05 +0200)]
rusticl/program: some boilerplate code for SPIR-V support

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/kernel: implement CL_KERNEL_ATTRIBUTES
Karol Herbst [Sun, 24 Apr 2022 11:21:32 +0000 (13:21 +0200)]
rusticl/kernel: implement CL_KERNEL_ATTRIBUTES

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl: the CTS is a piece of shit
Karol Herbst [Thu, 21 Apr 2022 00:10:13 +0000 (02:10 +0200)]
rusticl: the CTS is a piece of shit

seriously, this fixes some image test, becaues ... rounding modes on CPU

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/kernel: optimize local size
Karol Herbst [Wed, 20 Apr 2022 13:27:57 +0000 (15:27 +0200)]
rusticl/kernel: optimize local size

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl: fix compiler features_macro
Karol Herbst [Tue, 19 Apr 2022 21:49:34 +0000 (23:49 +0200)]
rusticl: fix compiler features_macro

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/kernel: cache the nir as well
Karol Herbst [Sun, 17 Apr 2022 17:00:57 +0000 (19:00 +0200)]
rusticl/kernel: cache the nir as well

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/kernel: prepare for nir caching
Karol Herbst [Sun, 17 Apr 2022 12:52:06 +0000 (14:52 +0200)]
rusticl/kernel: prepare for nir caching

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl: kernel caching
Karol Herbst [Sat, 16 Apr 2022 18:48:07 +0000 (20:48 +0200)]
rusticl: kernel caching

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl: port to Rust 2018
Karol Herbst [Sat, 16 Apr 2022 11:55:50 +0000 (13:55 +0200)]
rusticl: port to Rust 2018

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/mem: only write pitch when required
Karol Herbst [Fri, 15 Apr 2022 15:58:46 +0000 (17:58 +0200)]
rusticl/mem: only write pitch when required

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/mem: fix IMAGE1D_BUFFER
Karol Herbst [Fri, 15 Apr 2022 11:36:00 +0000 (13:36 +0200)]
rusticl/mem: fix IMAGE1D_BUFFER

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/kernel: implement image_format and image_order
Karol Herbst [Thu, 14 Apr 2022 14:33:21 +0000 (16:33 +0200)]
rusticl/kernel: implement image_format and image_order

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/mesa: make resource_from_user_memory an optinal feature
Karol Herbst [Wed, 13 Apr 2022 23:21:05 +0000 (01:21 +0200)]
rusticl/mesa: make resource_from_user_memory an optinal feature

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/mem: add user_ptr fallback shadow buffer
Karol Herbst [Tue, 12 Apr 2022 23:28:43 +0000 (01:28 +0200)]
rusticl/mem: add user_ptr fallback shadow buffer

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/device: fix compiler features_macro
Karol Herbst [Tue, 12 Apr 2022 15:31:47 +0000 (17:31 +0200)]
rusticl/device: fix compiler features_macro

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/queue: implement missing CL 3.0 bits
Karol Herbst [Tue, 12 Apr 2022 12:52:57 +0000 (14:52 +0200)]
rusticl/queue: implement missing CL 3.0 bits

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/device: fix api consistency_device_and_host_timer test
Karol Herbst [Tue, 12 Apr 2022 10:50:37 +0000 (12:50 +0200)]
rusticl/device: fix api consistency_device_and_host_timer test

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/memory: don't map more than necessary for copy operations
Karol Herbst [Mon, 11 Apr 2022 22:51:29 +0000 (00:51 +0200)]
rusticl/memory: don't map more than necessary for copy operations

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl: get rid of a few clones
Karol Herbst [Sun, 3 Apr 2022 18:02:05 +0000 (20:02 +0200)]
rusticl: get rid of a few clones

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl: Call nir_scale_fdiv
Jason Ekstrand [Fri, 15 Apr 2022 20:13:53 +0000 (15:13 -0500)]
rusticl: Call nir_scale_fdiv

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/kernel: run some more opt passes
Karol Herbst [Fri, 29 Apr 2022 01:20:36 +0000 (03:20 +0200)]
rusticl/kernel: run some more opt passes

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/kernel: set CL_DEVICE_PREFERRED_WORK_GROUP_SIZE_MULTIPLE
Karol Herbst [Fri, 29 Apr 2022 01:20:25 +0000 (03:20 +0200)]
rusticl/kernel: set CL_DEVICE_PREFERRED_WORK_GROUP_SIZE_MULTIPLE

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/device: implement cl_khr_3d_image_writes
Karol Herbst [Thu, 31 Mar 2022 14:24:37 +0000 (16:24 +0200)]
rusticl/device: implement cl_khr_3d_image_writes

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/device: add retain/release callbacks for luxmark v4
Karol Herbst [Thu, 31 Mar 2022 00:38:17 +0000 (02:38 +0200)]
rusticl/device: add retain/release callbacks for luxmark v4

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/kernel: lower memcpy
Karol Herbst [Wed, 30 Mar 2022 16:09:32 +0000 (18:09 +0200)]
rusticl/kernel: lower memcpy

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/kernel: inline samplers
Karol Herbst [Wed, 30 Mar 2022 03:01:50 +0000 (05:01 +0200)]
rusticl/kernel: inline samplers

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/kernel: support for images
Karol Herbst [Fri, 25 Mar 2022 19:31:16 +0000 (20:31 +0100)]
rusticl/kernel: support for images

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/mem: implement clCreateSamplerWithProperties
Karol Herbst [Fri, 25 Mar 2022 17:57:08 +0000 (18:57 +0100)]
rusticl/mem: implement clCreateSamplerWithProperties

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/mesa/context: un Arc the PipeContext
Karol Herbst [Mon, 11 Apr 2022 14:49:46 +0000 (16:49 +0200)]
rusticl/mesa/context: un Arc the PipeContext

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/mem: implement copies between buffers and images
Karol Herbst [Fri, 25 Mar 2022 13:40:26 +0000 (14:40 +0100)]
rusticl/mem: implement copies between buffers and images

v2: Use the pitches from the pipe_transfer_map (Jason)

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/mem: implement clCreateImage2D and 3D
Karol Herbst [Thu, 24 Mar 2022 19:52:48 +0000 (20:52 +0100)]
rusticl/mem: implement clCreateImage2D and 3D

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/mem: implement copy image
Karol Herbst [Thu, 24 Mar 2022 17:21:44 +0000 (18:21 +0100)]
rusticl/mem: implement copy image

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/mem: implement fill image
Karol Herbst [Thu, 24 Mar 2022 01:19:07 +0000 (02:19 +0100)]
rusticl/mem: implement fill image

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>

22 months agorusticl/mem: implement maping images
Karol Herbst [Wed, 23 Mar 2022 22:12:36 +0000 (23:12 +0100)]
rusticl/mem: implement maping images

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15439>