From 0abc562e1124d7a3b93f710b8552ec18a1993941 Mon Sep 17 00:00:00 2001 From: Arthur Hanson Rasmusson Date: Fri, 25 Sep 2026 02:53:50 -0400 Subject: gsp_rm: implement missing RM_CONTROL handlers for 570.144 guest driver - Added TU104_CTRL_INTERNAL_MEMSYS_L2_INVALIDATE_EVICT (0x20800a6c) - Added TU104_CTRL_INTERNAL_GR_GET_FECS_TRACE_HW_ENABLE (0x20800a38) - Added TU104_CTRL_SYSTEM_MAP_SHARED_DATA (0x730151) - Fixed async RPCs (72 GSP_SET_SYSTEM_INFO, 73 SET_REGISTRY, 71 CONTINUATION_RECORD) to send SUCCESS replies instead of silent consume - Added explicit handlers for RPC 47 (UNLOADING_GUEST_DRIVER) and 70 (UPDATE_BAR_PDE) with proper reply semantics Guest driver was failing at GSP-RM level with unknown RPCs 47, 70, 72, 73. Channels registered then immediately unregistered. Now they should stay registered and complete initialization. --- kernel/gsp_rm_tu104.h | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'kernel/gsp_rm_tu104.h') diff --git a/kernel/gsp_rm_tu104.h b/kernel/gsp_rm_tu104.h index 3ac01b7..593dfb3 100644 --- a/kernel/gsp_rm_tu104.h +++ b/kernel/gsp_rm_tu104.h @@ -971,6 +971,13 @@ struct tu104_gr_static_info { * Driver computes numGpcs from floorsweepingMasks.gpcMask - zero kills * krcWatchdogInit ("numGpcs > 0" assert -> RmInitAdapter bails). */ #define TU104_CTRL_STATIC_KGR_GET_FLOORSWEEPING_MASKS 0x20800a26 + +/* Missing RM_CONTROL commands observed in guest driver (570.144) */ +#define TU104_CTRL_INTERNAL_MEMSYS_L2_INVALIDATE_EVICT 0x20800a6c +#define TU104_CTRL_INTERNAL_GR_GET_FECS_TRACE_HW_ENABLE 0x20800a38 + +/* NV0073 (SYSTEM) interface */ +#define TU104_CTRL_SYSTEM_MAP_SHARED_DATA 0x730151 #define TU104_GR_MAX_GPC 12 #define TU104_GR_MAX_TPC_PER_GPC_COUNT 10 -- cgit v1.2.3