summaryrefslogtreecommitdiffstats
path: root/kernel/gsp_phys_gpu.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/gsp_phys_gpu.c')
-rw-r--r--kernel/gsp_phys_gpu.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/kernel/gsp_phys_gpu.c b/kernel/gsp_phys_gpu.c
index 91f7a77..94d6652 100644
--- a/kernel/gsp_phys_gpu.c
+++ b/kernel/gsp_phys_gpu.c
@@ -182,6 +182,25 @@ bool gsp_phys_srv_ctxbuf_value(void)
EXPORT_SYMBOL_GPL(gsp_phys_srv_ctxbuf_value);
/*
+ * Server-managed GR context client commit (default 1). On the
+ * gsp_phys_srv_ctxbuf path the ladder sends GPU_INITIALIZE_CTX + a PA-only
+ * GPU_PROMOTE_CTX for the server-reported MAIN context buffer. Set 0 to test
+ * the pure server-managed shape: the GSP-RM allocated/mapped/committed the
+ * context itself and no client control is sent.
+ */
+static bool gsp_phys_srv_ctxcommit_param = true;
+module_param_named(gsp_phys_rmcall_srv_ctxcommit, gsp_phys_srv_ctxcommit_param,
+ bool, 0644);
+MODULE_PARM_DESC(gsp_phys_rmcall_srv_ctxcommit,
+ "On the server-managed GR ctx path send GPU_INITIALIZE_CTX + PA-only GPU_PROMOTE_CTX for the server MAIN (default 1); 0 = pure server-managed, no client promote");
+
+bool gsp_phys_srv_ctxcommit_value(void)
+{
+ return gsp_phys_srv_ctxcommit_param;
+}
+EXPORT_SYMBOL_GPL(gsp_phys_srv_ctxcommit_value);
+
+/*
* P5 wave-1 shadow work forwarding (default 0). When set, the sema service
* requests one real CE copy on the debugfs ladder's channel for each decoded
* guest CE push, using only the ladder's module-owned buffers; the software