diff --git a/src/asahi/lib/cmdbuf.xml b/src/asahi/lib/cmdbuf.xml
index ef82ed15c69..e3fa7dabd1b 100644
--- a/src/asahi/lib/cmdbuf.xml
+++ b/src/asahi/lib/cmdbuf.xml
@@ -531,9 +531,10 @@
-
-
-
+
+
+
+
diff --git a/src/gallium/drivers/asahi/agx_state.c b/src/gallium/drivers/asahi/agx_state.c
index 5f4dc5b6ac7..6ec5dcb3fc3 100644
--- a/src/gallium/drivers/asahi/agx_state.c
+++ b/src/gallium/drivers/asahi/agx_state.c
@@ -1346,11 +1346,12 @@ agx_build_pipeline(struct agx_batch *batch, struct agx_compiled_shader *cs, enum
agx_usc_pack(&b, SHARED, cfg) {
if (stage == PIPE_SHADER_FRAGMENT) {
cfg.uses_shared_memory = true;
- cfg.shared_layout = AGX_SHARED_LAYOUT_32X32;
- cfg.pixel_stride_in_8_bytes = 1;
- cfg.shared_memory_per_threadgroup_in_256_bytes = 32;
+ cfg.layout = AGX_SHARED_LAYOUT_32X32;
+ cfg.sample_stride_in_8_bytes = 1;
+ cfg.bytes_per_threadgroup = 8 * 32 * 32;
+ cfg.sample_count = 1;
} else {
- cfg.shared_layout = AGX_SHARED_LAYOUT_VERTEX_COMPUTE;
+ cfg.layout = AGX_SHARED_LAYOUT_VERTEX_COMPUTE;
}
}
@@ -1400,9 +1401,9 @@ agx_build_clear_pipeline(struct agx_batch *batch, uint32_t code, uint64_t clear_
agx_usc_pack(&b, SHARED, cfg) {
cfg.uses_shared_memory = true;
- cfg.shared_layout = AGX_SHARED_LAYOUT_32X32;
- cfg.pixel_stride_in_8_bytes = 1;
- cfg.shared_memory_per_threadgroup_in_256_bytes = 32;
+ cfg.layout = AGX_SHARED_LAYOUT_32X32;
+ cfg.sample_stride_in_8_bytes = 1;
+ cfg.bytes_per_threadgroup = 32 * 256;
}
agx_usc_pack(&b, SHADER, cfg) {
@@ -1482,9 +1483,10 @@ agx_build_reload_pipeline(struct agx_batch *batch, uint32_t code, struct pipe_su
agx_usc_pack(&b, SHARED, cfg) {
cfg.uses_shared_memory = true;
- cfg.shared_layout = AGX_SHARED_LAYOUT_32X32;
- cfg.pixel_stride_in_8_bytes = 1;
- cfg.shared_memory_per_threadgroup_in_256_bytes = 32;
+ cfg.layout = AGX_SHARED_LAYOUT_32X32;
+ cfg.sample_stride_in_8_bytes = 1;
+ cfg.sample_count = 1;
+ cfg.bytes_per_threadgroup = 8 * 32 * 32;
}
agx_usc_pack(&b, SHADER, cfg) {
@@ -1520,9 +1522,9 @@ agx_build_store_pipeline(struct agx_batch *batch, uint32_t code,
agx_usc_pack(&b, SHARED, cfg) {
cfg.uses_shared_memory = true;
- cfg.shared_layout = AGX_SHARED_LAYOUT_32X32;
- cfg.pixel_stride_in_8_bytes = 1;
- cfg.shared_memory_per_threadgroup_in_256_bytes = 32;
+ cfg.layout = AGX_SHARED_LAYOUT_32X32;
+ cfg.sample_stride_in_8_bytes = 1;
+ cfg.bytes_per_threadgroup = 32 * 256;
}
agx_usc_pack(&b, SHADER, cfg) cfg.code = code;