summaryrefslogtreecommitdiffstats
path: root/kernel
diff options
context:
space:
mode:
authorArthur Hanson Rasmusson <arthur@vgpu.io>2026-10-06 21:04:59 -0400
committerArthur Hanson Rasmusson <arthur@vgpu.io>2026-10-06 21:04:59 -0400
commit8ac2e33819ddd40fcbe55636aebb80ea53798924 (patch)
tree3c9e9bcf567fc7bc3b6c7d21b62923f472ab3b66 /kernel
parent733eda6bbe9ec0c0a2ed50f615504759be98f081 (diff)
downloadopen-iov-8ac2e33819ddd40fcbe55636aebb80ea53798924.tar.gz
open-iov-8ac2e33819ddd40fcbe55636aebb80ea53798924.zip
vgsp: mode 35 m56 probe - add SKIP_SCRUBBER|SKIP_CTXBUFFER_ALLOC to V7 flags (V6-proven construct path while the share stays attached)
Diffstat (limited to 'kernel')
-rw-r--r--kernel/gsp_phys_booter.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/kernel/gsp_phys_booter.c b/kernel/gsp_phys_booter.c
index 5579f8f..b94a877 100644
--- a/kernel/gsp_phys_booter.c
+++ b/kernel/gsp_phys_booter.c
@@ -1197,10 +1197,16 @@ bool gsp_phys_boot_requested(void)
* consumption path; m14). Requesting D's exact tuple fails
* kfifoChidMgrAllocChid_IMPL with NV_ERR_NO_MEMORY (0x51), as m29 proved for
* GOLDEN9_SIBLING_A.
+ *
+ * m56 probe: SKIP_CTXBUFFER_ALLOC (bit 31) + SKIP_SCRUBBER (bit 23) are added
+ * on top of the captured word so the V6-proven construct path is taken while
+ * the share stays attached: the engine context + the class object then exist
+ * without the per-buffer ctx init the non-SKIP lane cannot complete (0x57).
*/
#define GSP_PHYS_RMCALL_CHANNEL_FLAG_USER_LANE \
(u32)(GSP_PHYS_RMCALL_CHANNEL_FLAG_PRIVILEGED | (4u << 8) | \
- (1u << 21))
+ (1u << 21) | GSP_PHYS_RMCALL_CHANNEL_FLAG_SKIP_SCRUBBER | \
+ GSP_PHYS_RMCALL_CHANNEL_FLAG_SKIP_CTXBUFFER_ALLOC)
/* Captured user-lane GPFIFO depth (#825: 1024 entries). */
#define GSP_PHYS_RMCALL_USER_LANE_GPFIFO_ENTRIES 1024u
#define GSP_PHYS_RMCALL_CHANNEL_INTERNALFLAGS_USER_LANE 0x1du