Alyssa Rosenzweig
c0beb79145
hk: drop silly
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33743 >
2025-02-26 00:03:52 +00:00
Alyssa Rosenzweig
1100c2328a
asahi: rename wip modifier
...
this is gpu-tiled, not twiddled.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33743 >
2025-02-26 00:03:52 +00:00
Alyssa Rosenzweig
42bc9f6400
ail: split compression up
...
this better describes the hw.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33743 >
2025-02-26 00:03:52 +00:00
Alyssa Rosenzweig
99e346ef15
ail: rename twiddled -> gpu tiled
...
got the names flipped >_<
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33743 >
2025-02-26 00:03:52 +00:00
Xaver Hugl
4b663d561b
vulkan/wsi: implement support for VK_EXT_hdr_metadata on Wayland
...
Signed-off-by: Xaver Hugl <xaver.hugl@kde.org>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Reviewed-by: Sebastian Wick <sebastian.wick@redhat.com>
Acked-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32038 >
2025-02-25 21:24:11 +00:00
Alyssa Rosenzweig
2504e7951b
treewide: use nir_shader_tex_pass
...
Adapted the Coccinelle rules from the nir_shader_intrinsics_pass commit a while
ago, which was buggy then and buggy now, so then I fixed stuff up manually
(including formatting).
Via Coccinelle patch:
@def@
typedef bool;
typedef nir_builder;
typedef nir_instr;
typedef nir_def;
identifier fn, instr, intr, x, builder, data;
@@
static fn(nir_builder* builder,
-nir_instr *instr,
+nir_tex_instr *intr,
...)
{
(
- if (instr->type != nir_instr_type_tex)
- return false;
- nir_tex_instr *intr = nir_instr_as_tex(instr);
|
- nir_tex_instr *intr = nir_instr_as_tex(instr);
- if (instr->type != nir_instr_type_tex)
- return false;
)
<...
(
-instr->x
+intr->instr.x
|
-instr
+&intr->instr
)
...>
}
@pass depends on def@
identifier def.fn;
expression shader, progress;
@@
(
-nir_shader_instructions_pass(shader, fn,
+nir_shader_tex_pass(shader, fn,
...)
|
-NIR_PASS_V(shader, nir_shader_instructions_pass, fn,
+NIR_PASS_V(shader, nir_shader_tex_pass, fn,
...)
|
-NIR_PASS(progress, shader, nir_shader_instructions_pass, fn,
+NIR_PASS(progress, shader, nir_shader_tex_pass, fn,
...)
)
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com> [v3d]
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33672 >
2025-02-24 19:33:26 +00:00
Timur Kristóf
2ebb3c3e37
hk: Don't use deprecated NIR_PASS_V macro anymore.
...
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33609 >
2025-02-22 08:54:39 +01:00
Alyssa Rosenzweig
e34443205f
asahi: support sparse in virtgpu
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:29 +00:00
Alyssa Rosenzweig
175b3bd4b1
agx: handle sparse buffer images
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:29 +00:00
Alyssa Rosenzweig
3f1082877a
hk: ban sparse RGB32
...
dumb corner.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:29 +00:00
Alyssa Rosenzweig
583978a8ee
agx: handle rgb32 residency queries
...
so silly.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:29 +00:00
Alyssa Rosenzweig
839b01bd2d
hk: fake min/max filtering for proton
...
this gets us to fl12_0.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:29 +00:00
Alyssa Rosenzweig
383a3065b8
asahi: fix null deref in error path
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:29 +00:00
Alyssa Rosenzweig
580aff179c
libagx: use 64-bit multiply for image atomic calculation
...
lets use the hw address mode. oops!
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:29 +00:00
Alyssa Rosenzweig
5a122768b7
hk: do not clamp txf for copy shaders
...
save a few instrs.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:29 +00:00
Alyssa Rosenzweig
0a43be6d4f
agx: fix botched address fuses
...
identified in
dEQP-VK.robustness.robustness2.push.notemplate.rgba32f.unroll.nonvolatile.sampled_image.no_fmt_qual.img.samples_1.2d.comp.
owwie.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:29 +00:00
Alyssa Rosenzweig
b589285468
agx: assert shift bounds
...
would've saved me a lot of dbg trouble..
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:29 +00:00
Alyssa Rosenzweig
de424846f0
asahi: drop trivial depends
...
meson can infer since these are inputs.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:29 +00:00
Alyssa Rosenzweig
5d1f69e250
asahi,libagx,hk: don't set custom_target names
...
Per meson docs:
This posarg is optional since 0.60.0. It defaults to the basename of the first output.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:29 +00:00
Alyssa Rosenzweig
7f5271e42d
hk: perf debug sparse binding
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:29 +00:00
Alyssa Rosenzweig
e84c5b3a07
libagx: vectorize tess level loads
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:29 +00:00
Alyssa Rosenzweig
5046dd48b6
libagx: fix ia_primitives with tessellation
...
fixes new CTS
dEQP-VK.query_pool.statistics_query*input_assembly_primitives.*_patch_list_*
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:29 +00:00
Alyssa Rosenzweig
2eb5040ca8
hk: pass cmdbuf to perf_debug
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:29 +00:00
Alyssa Rosenzweig
debdb26167
hk: accelerate buffer copies with CL
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:29 +00:00
Alyssa Rosenzweig
be18473d33
hk: assert more
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:29 +00:00
Alyssa Rosenzweig
dc111c128c
hk: pass cmdbuf, not control stream, into precomp dispatch
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:29 +00:00
Alyssa Rosenzweig
29d80221db
hk: ensure space with the dispatch
...
cleaner.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:29 +00:00
Alyssa Rosenzweig
ed7d11e389
agx: fix uniform atomic opts
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:29 +00:00
Alyssa Rosenzweig
6c3d7a2821
asahi: drop cargo culted disk cache disable
...
we don't have a disk cache to disable with clc.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:29 +00:00
Alyssa Rosenzweig
678134add5
hk: implement sparse
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:28 +00:00
Alyssa Rosenzweig
3e7297a297
hk: ban sparse host-image-copy
...
WTF?
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:28 +00:00
Alyssa Rosenzweig
739807944d
agx: implement sparse residency queries
...
hw matches NIR well - just an extra destination on the texture instruction.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:28 +00:00
Alyssa Rosenzweig
93bccc0914
asahi: support unbinding VA in agx_va_free
...
useful for more sparse-y things.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:28 +00:00
Alyssa Rosenzweig
c02235124f
asahi: assert page alignment in vm_bind
...
kernel should check but it's easier to debug on the userspace side.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:28 +00:00
Alyssa Rosenzweig
d0a7bff906
ail: unit test ail_get_twiddled_block_B
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:28 +00:00
Alyssa Rosenzweig
b842a7732d
ail: add ail_get_twiddled_block_B helper
...
this is useful for sparse updates.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:28 +00:00
Alyssa Rosenzweig
78ca483940
ail: add ail_bytes_to_pages helper
...
this happens a bunch with sparse
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:28 +00:00
Alyssa Rosenzweig
56cd20ddea
ail: expose ail_get_max_tile_size
...
useful for sparse block size calculation
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:28 +00:00
Alyssa Rosenzweig
8e20875651
ail: extract a blocksize helper
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:28 +00:00
Alyssa Rosenzweig
aebecb2886
ail: move helpers to layout.h for sharing
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:28 +00:00
Alyssa Rosenzweig
7d27fd84d5
ail: report miptail stride
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:28 +00:00
Alyssa Rosenzweig
2cac211946
ail: report mip_tail_first_lod for sparse
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:28 +00:00
Alyssa Rosenzweig
09cd1bf000
ail: unit test sparse_table_size_B
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:28 +00:00
Alyssa Rosenzweig
bc448fe88b
ail: model sparse page tables
...
see the docs previously added for the aux image layout described here.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:28 +00:00
Alyssa Rosenzweig
ca60908bf1
asahi: add sparse block XML
...
this xml (and the sparse page table structure itself) was r/e'd blackbox since
that was easier than writing tests, lol. but it seems to work.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:28 +00:00
Alyssa Rosenzweig
c7f7496da1
asahi: identify image mode enum
...
this controls sparse.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:28 +00:00
Alyssa Rosenzweig
2cc88430f1
asahi: rename Null layout
...
this isn't a Null layout only, it's also used with sparse. update the name to
reduce confusion. Unsure if we have a use case yet but maybe as an optimization
later?
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:28 +00:00
Alyssa Rosenzweig
7b717805bf
hk: enable bufferDeviceAddressCaptureReplay
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:28 +00:00
Alyssa Rosenzweig
f50edbd696
hk: fix buffer binding
...
clamp sizes to avoid kernel complaints, and check the return.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:28 +00:00
Alyssa Rosenzweig
1114fbcdb7
hk: unbind VAs
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33682 >
2025-02-22 02:24:28 +00:00