summaryrefslogtreecommitdiffstats
path: root/kernel
diff options
context:
space:
mode:
authorArthur Hanson Rasmusson <arthur@vgpu.io>2026-10-06 21:21:35 -0400
committerArthur Hanson Rasmusson <arthur@vgpu.io>2026-10-06 21:21:35 -0400
commite0cb55ac2a23a31722881e54039a5967005000d3 (patch)
tree3d5881af90923a58a0ac13b5aa5475f1a7320314 /kernel
parent57871ebb5f0132e554b1b1f825096f8e9c112229 (diff)
downloadopen-iov-e0cb55ac2a23a31722881e54039a5967005000d3.tar.gz
open-iov-e0cb55ac2a23a31722881e54039a5967005000d3.zip
vgsp: ctxshare_force probe - keep the commit carrier A share-less (share on V6 only; m59 A+share promote rejected)
Diffstat (limited to 'kernel')
-rw-r--r--kernel/gsp_phys_booter.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/kernel/gsp_phys_booter.c b/kernel/gsp_phys_booter.c
index 4fc8b4f..5c124ef 100644
--- a/kernel/gsp_phys_booter.c
+++ b/kernel/gsp_phys_booter.c
@@ -10393,6 +10393,13 @@ static int gsp_phys_rmcall_golden_sibling_alloc(void __iomem *bar0)
cpu_to_le32(GSP_PHYS_RMCALL_GOLDEN_GPFIFO_ENTRIES);
ch.engine_type = cpu_to_le32(GSP_PHYS_RMCALL_ENGINE_GR0);
ch.flags = cpu_to_le32(GSP_PHYS_RMCALL_CHANNEL_FLAG_GOLDEN9_SIBLING_A);
+ /*
+ * ctxshare_force probe: only the execution channel V6 takes the share;
+ * the commit carrier A stays share-less so its mode-31 promote behaves
+ * exactly as the proven configuration (m59 showed A+share rejects).
+ */
+ if (gsp_phys_rmcall_ctxshare_force_value())
+ ch.h_context_share = cpu_to_le32(0);
ch.internal_flags = cpu_to_le32(
GSP_PHYS_RMCALL_CHANNEL_INTERNALFLAGS_PRIV_KERNEL);
ret = gsp_phys_rmcall_alloc_fb_mem(bar0,