summaryrefslogtreecommitdiffstats
path: root/kernel/gsp_phys_booter.c
diff options
context:
space:
mode:
authorArthur Hanson Rasmusson <arthur@vgpu.io>2026-11-07 02:12:31 -0500
committerArthur Hanson Rasmusson <arthur@vgpu.io>2026-11-07 02:12:31 -0500
commite6a21a49f50929ed8010d52378a180afeb7eb39c (patch)
tree5c6b96a87138acd3b328d48c72a1b0bac7e5619d /kernel/gsp_phys_booter.c
parent56dadb41d6644c602b494059288410b1872b0fa6 (diff)
downloadopen-iov-e6a21a49f50929ed8010d52378a180afeb7eb39c.tar.gz
open-iov-e6a21a49f50929ed8010d52378a180afeb7eb39c.zip
vgsp-gl: author the PS/TCS stage images for the emitted mask slots
Diffstat (limited to 'kernel/gsp_phys_booter.c')
-rw-r--r--kernel/gsp_phys_booter.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/kernel/gsp_phys_booter.c b/kernel/gsp_phys_booter.c
index 43e4e11..733937c 100644
--- a/kernel/gsp_phys_booter.c
+++ b/kernel/gsp_phys_booter.c
@@ -19810,6 +19810,18 @@ bool gsp_phys_rmcall_gr_sph_bind_value(void)
}
/*
+ * SESSION 155 CONT 25: the synth slot mask must be readable by the sema
+ * service so it authors exactly the stage images the booter binds. With
+ * sema_gl_sph_bind=0 + sema_sph_bind_mask=0x35 the booter emits j0/j2/j5,
+ * but the service's PS/TCS authoring loop was gated on the all-slots bool,
+ * so the PS image could be left stale/zero at draw time (r1575).
+ */
+u32 gsp_phys_rmcall_gr_sph_bind_mask_value(void)
+{
+ return READ_ONCE(gsp_phys_rmcall_gr_sph_bind_mask);
+}
+
+/*
* SESSION 154c (viewport wall): the replayed 3D window carries no
* viewport family state - the colour target, raster enable, shader
* binds, attributes, index buffer and draws are present, but the