summaryrefslogtreecommitdiffstats
path: root/kernel/gsp_rm_emulation.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/gsp_rm_emulation.c')
-rw-r--r--kernel/gsp_rm_emulation.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/kernel/gsp_rm_emulation.c b/kernel/gsp_rm_emulation.c
index b928faf..d4390b9 100644
--- a/kernel/gsp_rm_emulation.c
+++ b/kernel/gsp_rm_emulation.c
@@ -3675,6 +3675,14 @@ static void gsp_rm_register_channel(struct gsp_emu_context *ctx, u32 h_client,
u64 userd_wire_base = 0;
/*
+ * eng40: a (re-)registration gives this channel a fresh engine
+ * context; the MME program it may have held is gone, so invalidate
+ * the per-channel pack-completion state (no-op unless the
+ * pack_keep_gen + golden_force knobs are on).
+ */
+ gsp_phys_gr_mme_chan_ctx_reset(h_object);
+
+ /*
* CONT.405: name the registration attempt for the direct-GL client's
* channel families. A "beef"/"bfef" handle that appears more than
* once is the client's alloc -> setup -> free -> retry loop; the