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
commit47127bd44d89eb0c44359cc93630317e671cf386 (patch)
tree166b88624117798fd682343921ce60829457675d /kernel
parent87d84d6f6c16d33f39290c7d0551fc38f24ed4b8 (diff)
downloadopen-iov-47127bd44d89eb0c44359cc93630317e671cf386.tar.gz
open-iov-47127bd44d89eb0c44359cc93630317e671cf386.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,