1 #define NVOC_KERNEL_CHANNEL_H_PRIVATE_ACCESS_ALLOWED
2 #include "nvoc/runtime.h"
3 #include "nvoc/rtti.h"
4 #include "nvtypes.h"
5 #include "nvport/nvport.h"
6 #include "nvport/inline/util_valist.h"
7 #include "utils/nvassert.h"
8 #include "g_kernel_channel_nvoc.h"
9 
10 #ifdef DEBUG
11 char __nvoc_class_id_uniqueness_check_0x5d8d70 = 1;
12 #endif
13 
14 extern const struct NVOC_CLASS_DEF __nvoc_class_def_KernelChannel;
15 
16 extern const struct NVOC_CLASS_DEF __nvoc_class_def_Object;
17 
18 extern const struct NVOC_CLASS_DEF __nvoc_class_def_RsResource;
19 
20 extern const struct NVOC_CLASS_DEF __nvoc_class_def_RmResourceCommon;
21 
22 extern const struct NVOC_CLASS_DEF __nvoc_class_def_RmResource;
23 
24 extern const struct NVOC_CLASS_DEF __nvoc_class_def_GpuResource;
25 
26 extern const struct NVOC_CLASS_DEF __nvoc_class_def_INotifier;
27 
28 extern const struct NVOC_CLASS_DEF __nvoc_class_def_Notifier;
29 
30 void __nvoc_init_KernelChannel(KernelChannel*, RmHalspecOwner* );
31 void __nvoc_init_funcTable_KernelChannel(KernelChannel*, RmHalspecOwner* );
32 NV_STATUS __nvoc_ctor_KernelChannel(KernelChannel*, RmHalspecOwner* , CALL_CONTEXT * arg_pCallContext, struct RS_RES_ALLOC_PARAMS_INTERNAL * arg_pParams);
33 void __nvoc_init_dataField_KernelChannel(KernelChannel*, RmHalspecOwner* );
34 void __nvoc_dtor_KernelChannel(KernelChannel*);
35 extern const struct NVOC_EXPORT_INFO __nvoc_export_info_KernelChannel;
36 
37 static const struct NVOC_RTTI __nvoc_rtti_KernelChannel_KernelChannel = {
38     /*pClassDef=*/          &__nvoc_class_def_KernelChannel,
39     /*dtor=*/               (NVOC_DYNAMIC_DTOR) &__nvoc_dtor_KernelChannel,
40     /*offset=*/             0,
41 };
42 
43 static const struct NVOC_RTTI __nvoc_rtti_KernelChannel_Object = {
44     /*pClassDef=*/          &__nvoc_class_def_Object,
45     /*dtor=*/               &__nvoc_destructFromBase,
46     /*offset=*/             NV_OFFSETOF(KernelChannel, __nvoc_base_GpuResource.__nvoc_base_RmResource.__nvoc_base_RsResource.__nvoc_base_Object),
47 };
48 
49 static const struct NVOC_RTTI __nvoc_rtti_KernelChannel_RsResource = {
50     /*pClassDef=*/          &__nvoc_class_def_RsResource,
51     /*dtor=*/               &__nvoc_destructFromBase,
52     /*offset=*/             NV_OFFSETOF(KernelChannel, __nvoc_base_GpuResource.__nvoc_base_RmResource.__nvoc_base_RsResource),
53 };
54 
55 static const struct NVOC_RTTI __nvoc_rtti_KernelChannel_RmResourceCommon = {
56     /*pClassDef=*/          &__nvoc_class_def_RmResourceCommon,
57     /*dtor=*/               &__nvoc_destructFromBase,
58     /*offset=*/             NV_OFFSETOF(KernelChannel, __nvoc_base_GpuResource.__nvoc_base_RmResource.__nvoc_base_RmResourceCommon),
59 };
60 
61 static const struct NVOC_RTTI __nvoc_rtti_KernelChannel_RmResource = {
62     /*pClassDef=*/          &__nvoc_class_def_RmResource,
63     /*dtor=*/               &__nvoc_destructFromBase,
64     /*offset=*/             NV_OFFSETOF(KernelChannel, __nvoc_base_GpuResource.__nvoc_base_RmResource),
65 };
66 
67 static const struct NVOC_RTTI __nvoc_rtti_KernelChannel_GpuResource = {
68     /*pClassDef=*/          &__nvoc_class_def_GpuResource,
69     /*dtor=*/               &__nvoc_destructFromBase,
70     /*offset=*/             NV_OFFSETOF(KernelChannel, __nvoc_base_GpuResource),
71 };
72 
73 static const struct NVOC_RTTI __nvoc_rtti_KernelChannel_INotifier = {
74     /*pClassDef=*/          &__nvoc_class_def_INotifier,
75     /*dtor=*/               &__nvoc_destructFromBase,
76     /*offset=*/             NV_OFFSETOF(KernelChannel, __nvoc_base_Notifier.__nvoc_base_INotifier),
77 };
78 
79 static const struct NVOC_RTTI __nvoc_rtti_KernelChannel_Notifier = {
80     /*pClassDef=*/          &__nvoc_class_def_Notifier,
81     /*dtor=*/               &__nvoc_destructFromBase,
82     /*offset=*/             NV_OFFSETOF(KernelChannel, __nvoc_base_Notifier),
83 };
84 
85 static const struct NVOC_CASTINFO __nvoc_castinfo_KernelChannel = {
86     /*numRelatives=*/       8,
87     /*relatives=*/ {
88         &__nvoc_rtti_KernelChannel_KernelChannel,
89         &__nvoc_rtti_KernelChannel_Notifier,
90         &__nvoc_rtti_KernelChannel_INotifier,
91         &__nvoc_rtti_KernelChannel_GpuResource,
92         &__nvoc_rtti_KernelChannel_RmResource,
93         &__nvoc_rtti_KernelChannel_RmResourceCommon,
94         &__nvoc_rtti_KernelChannel_RsResource,
95         &__nvoc_rtti_KernelChannel_Object,
96     },
97 };
98 
99 const struct NVOC_CLASS_DEF __nvoc_class_def_KernelChannel =
100 {
101     /*classInfo=*/ {
102         /*size=*/               sizeof(KernelChannel),
103         /*classId=*/            classId(KernelChannel),
104         /*providerId=*/         &__nvoc_rtti_provider,
105 #if NV_PRINTF_STRINGS_ALLOWED
106         /*name=*/               "KernelChannel",
107 #endif
108     },
109     /*objCreatefn=*/        (NVOC_DYNAMIC_OBJ_CREATE) &__nvoc_objCreateDynamic_KernelChannel,
110     /*pCastInfo=*/          &__nvoc_castinfo_KernelChannel,
111     /*pExportInfo=*/        &__nvoc_export_info_KernelChannel
112 };
113 
114 static NV_STATUS __nvoc_thunk_KernelChannel_gpuresMap(struct GpuResource *pKernelChannel, CALL_CONTEXT *pCallContext, struct RS_CPU_MAP_PARAMS *pParams, RsCpuMapping *pCpuMapping) {
115     return kchannelMap((struct KernelChannel *)(((unsigned char *)pKernelChannel) - __nvoc_rtti_KernelChannel_GpuResource.offset), pCallContext, pParams, pCpuMapping);
116 }
117 
118 static NV_STATUS __nvoc_thunk_KernelChannel_gpuresUnmap(struct GpuResource *pKernelChannel, CALL_CONTEXT *pCallContext, RsCpuMapping *pCpuMapping) {
119     return kchannelUnmap((struct KernelChannel *)(((unsigned char *)pKernelChannel) - __nvoc_rtti_KernelChannel_GpuResource.offset), pCallContext, pCpuMapping);
120 }
121 
122 static NV_STATUS __nvoc_thunk_KernelChannel_gpuresGetMapAddrSpace(struct GpuResource *pKernelChannel, CALL_CONTEXT *pCallContext, NvU32 mapFlags, NV_ADDRESS_SPACE *pAddrSpace) {
123     return kchannelGetMapAddrSpace((struct KernelChannel *)(((unsigned char *)pKernelChannel) - __nvoc_rtti_KernelChannel_GpuResource.offset), pCallContext, mapFlags, pAddrSpace);
124 }
125 
126 static NV_STATUS __nvoc_thunk_KernelChannel_rmresGetMemInterMapParams(struct RmResource *pKernelChannel, RMRES_MEM_INTER_MAP_PARAMS *pParams) {
127     return kchannelGetMemInterMapParams((struct KernelChannel *)(((unsigned char *)pKernelChannel) - __nvoc_rtti_KernelChannel_RmResource.offset), pParams);
128 }
129 
130 static NV_STATUS __nvoc_thunk_KernelChannel_rmresCheckMemInterUnmap(struct RmResource *pKernelChannel, NvBool bSubdeviceHandleProvided) {
131     return kchannelCheckMemInterUnmap((struct KernelChannel *)(((unsigned char *)pKernelChannel) - __nvoc_rtti_KernelChannel_RmResource.offset), bSubdeviceHandleProvided);
132 }
133 
134 static NvBool __nvoc_thunk_GpuResource_kchannelShareCallback(struct KernelChannel *pGpuResource, struct RsClient *pInvokingClient, struct RsResourceRef *pParentRef, RS_SHARE_POLICY *pSharePolicy) {
135     return gpuresShareCallback((struct GpuResource *)(((unsigned char *)pGpuResource) + __nvoc_rtti_KernelChannel_GpuResource.offset), pInvokingClient, pParentRef, pSharePolicy);
136 }
137 
138 static NV_STATUS __nvoc_thunk_Notifier_kchannelGetOrAllocNotifShare(struct KernelChannel *pNotifier, NvHandle hNotifierClient, NvHandle hNotifierResource, struct NotifShare **ppNotifShare) {
139     return notifyGetOrAllocNotifShare((struct Notifier *)(((unsigned char *)pNotifier) + __nvoc_rtti_KernelChannel_Notifier.offset), hNotifierClient, hNotifierResource, ppNotifShare);
140 }
141 
142 static NV_STATUS __nvoc_thunk_RsResource_kchannelMapTo(struct KernelChannel *pResource, RS_RES_MAP_TO_PARAMS *pParams) {
143     return resMapTo((struct RsResource *)(((unsigned char *)pResource) + __nvoc_rtti_KernelChannel_RsResource.offset), pParams);
144 }
145 
146 static void __nvoc_thunk_Notifier_kchannelSetNotificationShare(struct KernelChannel *pNotifier, struct NotifShare *pNotifShare) {
147     notifySetNotificationShare((struct Notifier *)(((unsigned char *)pNotifier) + __nvoc_rtti_KernelChannel_Notifier.offset), pNotifShare);
148 }
149 
150 static NvU32 __nvoc_thunk_RsResource_kchannelGetRefCount(struct KernelChannel *pResource) {
151     return resGetRefCount((struct RsResource *)(((unsigned char *)pResource) + __nvoc_rtti_KernelChannel_RsResource.offset));
152 }
153 
154 static void __nvoc_thunk_RsResource_kchannelAddAdditionalDependants(struct RsClient *pClient, struct KernelChannel *pResource, RsResourceRef *pReference) {
155     resAddAdditionalDependants(pClient, (struct RsResource *)(((unsigned char *)pResource) + __nvoc_rtti_KernelChannel_RsResource.offset), pReference);
156 }
157 
158 static NV_STATUS __nvoc_thunk_RmResource_kchannelControl_Prologue(struct KernelChannel *pResource, struct CALL_CONTEXT *pCallContext, struct RS_RES_CONTROL_PARAMS_INTERNAL *pParams) {
159     return rmresControl_Prologue((struct RmResource *)(((unsigned char *)pResource) + __nvoc_rtti_KernelChannel_RmResource.offset), pCallContext, pParams);
160 }
161 
162 static NV_STATUS __nvoc_thunk_GpuResource_kchannelGetRegBaseOffsetAndSize(struct KernelChannel *pGpuResource, struct OBJGPU *pGpu, NvU32 *pOffset, NvU32 *pSize) {
163     return gpuresGetRegBaseOffsetAndSize((struct GpuResource *)(((unsigned char *)pGpuResource) + __nvoc_rtti_KernelChannel_GpuResource.offset), pGpu, pOffset, pSize);
164 }
165 
166 static NV_STATUS __nvoc_thunk_GpuResource_kchannelInternalControlForward(struct KernelChannel *pGpuResource, NvU32 command, void *pParams, NvU32 size) {
167     return gpuresInternalControlForward((struct GpuResource *)(((unsigned char *)pGpuResource) + __nvoc_rtti_KernelChannel_GpuResource.offset), command, pParams, size);
168 }
169 
170 static NV_STATUS __nvoc_thunk_RsResource_kchannelUnmapFrom(struct KernelChannel *pResource, RS_RES_UNMAP_FROM_PARAMS *pParams) {
171     return resUnmapFrom((struct RsResource *)(((unsigned char *)pResource) + __nvoc_rtti_KernelChannel_RsResource.offset), pParams);
172 }
173 
174 static void __nvoc_thunk_RmResource_kchannelControl_Epilogue(struct KernelChannel *pResource, struct CALL_CONTEXT *pCallContext, struct RS_RES_CONTROL_PARAMS_INTERNAL *pParams) {
175     rmresControl_Epilogue((struct RmResource *)(((unsigned char *)pResource) + __nvoc_rtti_KernelChannel_RmResource.offset), pCallContext, pParams);
176 }
177 
178 static NV_STATUS __nvoc_thunk_RsResource_kchannelControlLookup(struct KernelChannel *pResource, struct RS_RES_CONTROL_PARAMS_INTERNAL *pParams, const struct NVOC_EXPORTED_METHOD_DEF **ppEntry) {
179     return resControlLookup((struct RsResource *)(((unsigned char *)pResource) + __nvoc_rtti_KernelChannel_RsResource.offset), pParams, ppEntry);
180 }
181 
182 static NvHandle __nvoc_thunk_GpuResource_kchannelGetInternalObjectHandle(struct KernelChannel *pGpuResource) {
183     return gpuresGetInternalObjectHandle((struct GpuResource *)(((unsigned char *)pGpuResource) + __nvoc_rtti_KernelChannel_GpuResource.offset));
184 }
185 
186 static NV_STATUS __nvoc_thunk_GpuResource_kchannelControl(struct KernelChannel *pGpuResource, struct CALL_CONTEXT *pCallContext, struct RS_RES_CONTROL_PARAMS_INTERNAL *pParams) {
187     return gpuresControl((struct GpuResource *)(((unsigned char *)pGpuResource) + __nvoc_rtti_KernelChannel_GpuResource.offset), pCallContext, pParams);
188 }
189 
190 static NV_STATUS __nvoc_thunk_RmResource_kchannelGetMemoryMappingDescriptor(struct KernelChannel *pRmResource, struct MEMORY_DESCRIPTOR **ppMemDesc) {
191     return rmresGetMemoryMappingDescriptor((struct RmResource *)(((unsigned char *)pRmResource) + __nvoc_rtti_KernelChannel_RmResource.offset), ppMemDesc);
192 }
193 
194 static NV_STATUS __nvoc_thunk_RsResource_kchannelControlFilter(struct KernelChannel *pResource, struct CALL_CONTEXT *pCallContext, struct RS_RES_CONTROL_PARAMS_INTERNAL *pParams) {
195     return resControlFilter((struct RsResource *)(((unsigned char *)pResource) + __nvoc_rtti_KernelChannel_RsResource.offset), pCallContext, pParams);
196 }
197 
198 static NV_STATUS __nvoc_thunk_Notifier_kchannelUnregisterEvent(struct KernelChannel *pNotifier, NvHandle hNotifierClient, NvHandle hNotifierResource, NvHandle hEventClient, NvHandle hEvent) {
199     return notifyUnregisterEvent((struct Notifier *)(((unsigned char *)pNotifier) + __nvoc_rtti_KernelChannel_Notifier.offset), hNotifierClient, hNotifierResource, hEventClient, hEvent);
200 }
201 
202 static NV_STATUS __nvoc_thunk_RmResource_kchannelControlSerialization_Prologue(struct KernelChannel *pResource, struct CALL_CONTEXT *pCallContext, struct RS_RES_CONTROL_PARAMS_INTERNAL *pParams) {
203     return rmresControlSerialization_Prologue((struct RmResource *)(((unsigned char *)pResource) + __nvoc_rtti_KernelChannel_RmResource.offset), pCallContext, pParams);
204 }
205 
206 static NvBool __nvoc_thunk_RsResource_kchannelCanCopy(struct KernelChannel *pResource) {
207     return resCanCopy((struct RsResource *)(((unsigned char *)pResource) + __nvoc_rtti_KernelChannel_RsResource.offset));
208 }
209 
210 static void __nvoc_thunk_RsResource_kchannelPreDestruct(struct KernelChannel *pResource) {
211     resPreDestruct((struct RsResource *)(((unsigned char *)pResource) + __nvoc_rtti_KernelChannel_RsResource.offset));
212 }
213 
214 static NV_STATUS __nvoc_thunk_RsResource_kchannelIsDuplicate(struct KernelChannel *pResource, NvHandle hMemory, NvBool *pDuplicate) {
215     return resIsDuplicate((struct RsResource *)(((unsigned char *)pResource) + __nvoc_rtti_KernelChannel_RsResource.offset), hMemory, pDuplicate);
216 }
217 
218 static void __nvoc_thunk_RmResource_kchannelControlSerialization_Epilogue(struct KernelChannel *pResource, struct CALL_CONTEXT *pCallContext, struct RS_RES_CONTROL_PARAMS_INTERNAL *pParams) {
219     rmresControlSerialization_Epilogue((struct RmResource *)(((unsigned char *)pResource) + __nvoc_rtti_KernelChannel_RmResource.offset), pCallContext, pParams);
220 }
221 
222 static PEVENTNOTIFICATION *__nvoc_thunk_Notifier_kchannelGetNotificationListPtr(struct KernelChannel *pNotifier) {
223     return notifyGetNotificationListPtr((struct Notifier *)(((unsigned char *)pNotifier) + __nvoc_rtti_KernelChannel_Notifier.offset));
224 }
225 
226 static struct NotifShare *__nvoc_thunk_Notifier_kchannelGetNotificationShare(struct KernelChannel *pNotifier) {
227     return notifyGetNotificationShare((struct Notifier *)(((unsigned char *)pNotifier) + __nvoc_rtti_KernelChannel_Notifier.offset));
228 }
229 
230 static NvBool __nvoc_thunk_RmResource_kchannelAccessCallback(struct KernelChannel *pResource, struct RsClient *pInvokingClient, void *pAllocParams, RsAccessRight accessRight) {
231     return rmresAccessCallback((struct RmResource *)(((unsigned char *)pResource) + __nvoc_rtti_KernelChannel_RmResource.offset), pInvokingClient, pAllocParams, accessRight);
232 }
233 
234 #if !defined(NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG)
235 #define NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(x)      (0)
236 #endif
237 
238 static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_KernelChannel[] =
239 {
240     {               /*  [0] */
241 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
242         /*pFunc=*/      (void (*)(void)) NULL,
243 #else
244         /*pFunc=*/      (void (*)(void)) kchannelCtrlSetTpcPartitionMode_a094e1,
245 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
246         /*flags=*/      0x10u,
247         /*accessRight=*/0x0u,
248         /*methodId=*/   0x900101u,
249         /*paramSize=*/  sizeof(NV0090_CTRL_TPC_PARTITION_MODE_PARAMS),
250         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
251 #if NV_PRINTF_STRINGS_ALLOWED
252         /*func=*/       "kchannelCtrlSetTpcPartitionMode"
253 #endif
254     },
255     {               /*  [1] */
256 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
257         /*pFunc=*/      (void (*)(void)) NULL,
258 #else
259         /*pFunc=*/      (void (*)(void)) kchannelCtrlGetTpcPartitionMode_a094e1,
260 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
261         /*flags=*/      0x10u,
262         /*accessRight=*/0x0u,
263         /*methodId=*/   0x900103u,
264         /*paramSize=*/  sizeof(NV0090_CTRL_TPC_PARTITION_MODE_PARAMS),
265         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
266 #if NV_PRINTF_STRINGS_ALLOWED
267         /*func=*/       "kchannelCtrlGetTpcPartitionMode"
268 #endif
269     },
270     {               /*  [2] */
271 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
272         /*pFunc=*/      (void (*)(void)) NULL,
273 #else
274         /*pFunc=*/      (void (*)(void)) kchannelCtrlGetMMUDebugMode_a094e1,
275 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
276         /*flags=*/      0x10u,
277         /*accessRight=*/0x0u,
278         /*methodId=*/   0x900105u,
279         /*paramSize=*/  sizeof(NV0090_CTRL_GET_MMU_DEBUG_MODE_PARAMS),
280         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
281 #if NV_PRINTF_STRINGS_ALLOWED
282         /*func=*/       "kchannelCtrlGetMMUDebugMode"
283 #endif
284     },
285     {               /*  [3] */
286 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
287         /*pFunc=*/      (void (*)(void)) NULL,
288 #else
289         /*pFunc=*/      (void (*)(void)) kchannelCtrlProgramVidmemPromote_a094e1,
290 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
291         /*flags=*/      0x10u,
292         /*accessRight=*/0x0u,
293         /*methodId=*/   0x900107u,
294         /*paramSize=*/  sizeof(NV0090_CTRL_PROGRAM_VIDMEM_PROMOTE_PARAMS),
295         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
296 #if NV_PRINTF_STRINGS_ALLOWED
297         /*func=*/       "kchannelCtrlProgramVidmemPromote"
298 #endif
299     },
300     {               /*  [4] */
301 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
302         /*pFunc=*/      (void (*)(void)) NULL,
303 #else
304         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdResetIsolatedChannel_IMPL,
305 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
306         /*flags=*/      0x2210u,
307         /*accessRight=*/0x0u,
308         /*methodId=*/   0x506f0105u,
309         /*paramSize=*/  sizeof(NV506F_CTRL_CMD_RESET_ISOLATED_CHANNEL_PARAMS),
310         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
311 #if NV_PRINTF_STRINGS_ALLOWED
312         /*func=*/       "kchannelCtrlCmdResetIsolatedChannel"
313 #endif
314     },
315     {               /*  [5] */
316 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
317         /*pFunc=*/      (void (*)(void)) NULL,
318 #else
319         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdGetClassEngineid_IMPL,
320 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
321         /*flags=*/      0x10u,
322         /*accessRight=*/0x0u,
323         /*methodId=*/   0x906f0101u,
324         /*paramSize=*/  sizeof(NV906F_CTRL_GET_CLASS_ENGINEID_PARAMS),
325         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
326 #if NV_PRINTF_STRINGS_ALLOWED
327         /*func=*/       "kchannelCtrlCmdGetClassEngineid"
328 #endif
329     },
330     {               /*  [6] */
331 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
332         /*pFunc=*/      (void (*)(void)) NULL,
333 #else
334         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdResetChannel_IMPL,
335 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
336         /*flags=*/      0x10u,
337         /*accessRight=*/0x0u,
338         /*methodId=*/   0x906f0102u,
339         /*paramSize=*/  sizeof(NV906F_CTRL_CMD_RESET_CHANNEL_PARAMS),
340         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
341 #if NV_PRINTF_STRINGS_ALLOWED
342         /*func=*/       "kchannelCtrlCmdResetChannel"
343 #endif
344     },
345     {               /*  [7] */
346 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
347         /*pFunc=*/      (void (*)(void)) NULL,
348 #else
349         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdGetDeferRCState_IMPL,
350 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
351         /*flags=*/      0x2210u,
352         /*accessRight=*/0x0u,
353         /*methodId=*/   0x906f0105u,
354         /*paramSize=*/  sizeof(NV906F_CTRL_CMD_GET_DEFER_RC_STATE_PARAMS),
355         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
356 #if NV_PRINTF_STRINGS_ALLOWED
357         /*func=*/       "kchannelCtrlCmdGetDeferRCState"
358 #endif
359     },
360     {               /*  [8] */
361 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
362         /*pFunc=*/      (void (*)(void)) NULL,
363 #else
364         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdGetMmuFaultInfo_IMPL,
365 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
366         /*flags=*/      0x2210u,
367         /*accessRight=*/0x0u,
368         /*methodId=*/   0x906f0106u,
369         /*paramSize=*/  sizeof(NV906F_CTRL_GET_MMU_FAULT_INFO_PARAMS),
370         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
371 #if NV_PRINTF_STRINGS_ALLOWED
372         /*func=*/       "kchannelCtrlCmdGetMmuFaultInfo"
373 #endif
374     },
375     {               /*  [9] */
376 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
377         /*pFunc=*/      (void (*)(void)) NULL,
378 #else
379         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdEventSetNotification_IMPL,
380 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
381         /*flags=*/      0x10u,
382         /*accessRight=*/0x0u,
383         /*methodId=*/   0x906f0203u,
384         /*paramSize=*/  sizeof(NV906F_CTRL_EVENT_SET_NOTIFICATION_PARAMS),
385         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
386 #if NV_PRINTF_STRINGS_ALLOWED
387         /*func=*/       "kchannelCtrlCmdEventSetNotification"
388 #endif
389     },
390     {               /*  [10] */
391 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
392         /*pFunc=*/      (void (*)(void)) NULL,
393 #else
394         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdGetClassEngineidA06F_6a9a13,
395 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
396         /*flags=*/      0x10u,
397         /*accessRight=*/0x0u,
398         /*methodId=*/   0xa06f0101u,
399         /*paramSize=*/  sizeof(NVA06F_CTRL_GET_CLASS_ENGINEID_PARAMS),
400         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
401 #if NV_PRINTF_STRINGS_ALLOWED
402         /*func=*/       "kchannelCtrlCmdGetClassEngineidA06F"
403 #endif
404     },
405     {               /*  [11] */
406 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
407         /*pFunc=*/      (void (*)(void)) NULL,
408 #else
409         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdResetChannelA06F_ef73a1,
410 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
411         /*flags=*/      0x10u,
412         /*accessRight=*/0x0u,
413         /*methodId=*/   0xa06f0102u,
414         /*paramSize=*/  sizeof(NVA06F_CTRL_CMD_RESET_CHANNEL_PARAMS),
415         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
416 #if NV_PRINTF_STRINGS_ALLOWED
417         /*func=*/       "kchannelCtrlCmdResetChannelA06F"
418 #endif
419     },
420     {               /*  [12] */
421 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
422         /*pFunc=*/      (void (*)(void)) NULL,
423 #else
424         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdGpFifoSchedule_IMPL,
425 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
426         /*flags=*/      0x10u,
427         /*accessRight=*/0x0u,
428         /*methodId=*/   0xa06f0103u,
429         /*paramSize=*/  sizeof(NVA06F_CTRL_GPFIFO_SCHEDULE_PARAMS),
430         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
431 #if NV_PRINTF_STRINGS_ALLOWED
432         /*func=*/       "kchannelCtrlCmdGpFifoSchedule"
433 #endif
434     },
435     {               /*  [13] */
436 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
437         /*pFunc=*/      (void (*)(void)) NULL,
438 #else
439         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdBind_IMPL,
440 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
441         /*flags=*/      0x10u,
442         /*accessRight=*/0x0u,
443         /*methodId=*/   0xa06f0104u,
444         /*paramSize=*/  sizeof(NVA06F_CTRL_BIND_PARAMS),
445         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
446 #if NV_PRINTF_STRINGS_ALLOWED
447         /*func=*/       "kchannelCtrlCmdBind"
448 #endif
449     },
450     {               /*  [14] */
451 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
452         /*pFunc=*/      (void (*)(void)) NULL,
453 #else
454         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdGetMmuFaultInfoA06F_a7f9ac,
455 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
456         /*flags=*/      0x2210u,
457         /*accessRight=*/0x0u,
458         /*methodId=*/   0xa06f0107u,
459         /*paramSize=*/  sizeof(NVA06F_CTRL_GET_MMU_FAULT_INFO_PARAMS),
460         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
461 #if NV_PRINTF_STRINGS_ALLOWED
462         /*func=*/       "kchannelCtrlCmdGetMmuFaultInfoA06F"
463 #endif
464     },
465     {               /*  [15] */
466 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
467         /*pFunc=*/      (void (*)(void)) NULL,
468 #else
469         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdSetErrorNotifier_IMPL,
470 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
471         /*flags=*/      0x10u,
472         /*accessRight=*/0x0u,
473         /*methodId=*/   0xa06f0108u,
474         /*paramSize=*/  sizeof(NVA06F_CTRL_SET_ERROR_NOTIFIER_PARAMS),
475         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
476 #if NV_PRINTF_STRINGS_ALLOWED
477         /*func=*/       "kchannelCtrlCmdSetErrorNotifier"
478 #endif
479     },
480     {               /*  [16] */
481 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x110u)
482         /*pFunc=*/      (void (*)(void)) NULL,
483 #else
484         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdSetInterleaveLevel_IMPL,
485 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x110u)
486         /*flags=*/      0x110u,
487         /*accessRight=*/0x2u,
488         /*methodId=*/   0xa06f0109u,
489         /*paramSize=*/  sizeof(NVA06F_CTRL_INTERLEAVE_LEVEL_PARAMS),
490         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
491 #if NV_PRINTF_STRINGS_ALLOWED
492         /*func=*/       "kchannelCtrlCmdSetInterleaveLevel"
493 #endif
494     },
495     {               /*  [17] */
496 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
497         /*pFunc=*/      (void (*)(void)) NULL,
498 #else
499         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdRestartRunlist_IMPL,
500 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
501         /*flags=*/      0x2210u,
502         /*accessRight=*/0x2u,
503         /*methodId=*/   0xa06f0111u,
504         /*paramSize=*/  sizeof(NVA06F_CTRL_RESTART_RUNLIST_PARAMS),
505         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
506 #if NV_PRINTF_STRINGS_ALLOWED
507         /*func=*/       "kchannelCtrlCmdRestartRunlist"
508 #endif
509     },
510     {               /*  [18] */
511 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
512         /*pFunc=*/      (void (*)(void)) NULL,
513 #else
514         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdStopChannel_IMPL,
515 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
516         /*flags=*/      0x10u,
517         /*accessRight=*/0x0u,
518         /*methodId=*/   0xa06f0112u,
519         /*paramSize=*/  sizeof(NVA06F_CTRL_STOP_CHANNEL_PARAMS),
520         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
521 #if NV_PRINTF_STRINGS_ALLOWED
522         /*func=*/       "kchannelCtrlCmdStopChannel"
523 #endif
524     },
525     {               /*  [19] */
526 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
527         /*pFunc=*/      (void (*)(void)) NULL,
528 #else
529         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdGetClassEngineidA16F_6a9a13,
530 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
531         /*flags=*/      0x10u,
532         /*accessRight=*/0x0u,
533         /*methodId=*/   0xa16f0101u,
534         /*paramSize=*/  sizeof(NVA16F_CTRL_GET_CLASS_ENGINEID_PARAMS),
535         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
536 #if NV_PRINTF_STRINGS_ALLOWED
537         /*func=*/       "kchannelCtrlCmdGetClassEngineidA16F"
538 #endif
539     },
540     {               /*  [20] */
541 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
542         /*pFunc=*/      (void (*)(void)) NULL,
543 #else
544         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdResetChannelA16F_ef73a1,
545 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
546         /*flags=*/      0x10u,
547         /*accessRight=*/0x0u,
548         /*methodId=*/   0xa16f0102u,
549         /*paramSize=*/  sizeof(NVA16F_CTRL_CMD_RESET_CHANNEL_PARAMS),
550         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
551 #if NV_PRINTF_STRINGS_ALLOWED
552         /*func=*/       "kchannelCtrlCmdResetChannelA16F"
553 #endif
554     },
555     {               /*  [21] */
556 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
557         /*pFunc=*/      (void (*)(void)) NULL,
558 #else
559         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdGpFifoScheduleA16F_6546a6,
560 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
561         /*flags=*/      0x10u,
562         /*accessRight=*/0x0u,
563         /*methodId=*/   0xa16f0103u,
564         /*paramSize=*/  sizeof(NVA16F_CTRL_GPFIFO_SCHEDULE_PARAMS),
565         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
566 #if NV_PRINTF_STRINGS_ALLOWED
567         /*func=*/       "kchannelCtrlCmdGpFifoScheduleA16F"
568 #endif
569     },
570     {               /*  [22] */
571 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
572         /*pFunc=*/      (void (*)(void)) NULL,
573 #else
574         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdGetClassEngineidA26F_6a9a13,
575 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
576         /*flags=*/      0x10u,
577         /*accessRight=*/0x0u,
578         /*methodId=*/   0xa26f0101u,
579         /*paramSize=*/  sizeof(NVA26F_CTRL_GET_CLASS_ENGINEID_PARAMS),
580         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
581 #if NV_PRINTF_STRINGS_ALLOWED
582         /*func=*/       "kchannelCtrlCmdGetClassEngineidA26F"
583 #endif
584     },
585     {               /*  [23] */
586 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
587         /*pFunc=*/      (void (*)(void)) NULL,
588 #else
589         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdResetChannelA26F_ef73a1,
590 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
591         /*flags=*/      0x10u,
592         /*accessRight=*/0x0u,
593         /*methodId=*/   0xa26f0102u,
594         /*paramSize=*/  sizeof(NVA26F_CTRL_CMD_RESET_CHANNEL_PARAMS),
595         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
596 #if NV_PRINTF_STRINGS_ALLOWED
597         /*func=*/       "kchannelCtrlCmdResetChannelA26F"
598 #endif
599     },
600     {               /*  [24] */
601 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
602         /*pFunc=*/      (void (*)(void)) NULL,
603 #else
604         /*pFunc=*/      (void (*)(void)) kchannelFCtrlCmdGpFifoScheduleA26F_6546a6,
605 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
606         /*flags=*/      0x10u,
607         /*accessRight=*/0x0u,
608         /*methodId=*/   0xa26f0103u,
609         /*paramSize=*/  sizeof(NVA26F_CTRL_GPFIFO_SCHEDULE_PARAMS),
610         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
611 #if NV_PRINTF_STRINGS_ALLOWED
612         /*func=*/       "kchannelFCtrlCmdGpFifoScheduleA26F"
613 #endif
614     },
615     {               /*  [25] */
616 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
617         /*pFunc=*/      (void (*)(void)) NULL,
618 #else
619         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdGetClassEngineidB06F_6a9a13,
620 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
621         /*flags=*/      0x10u,
622         /*accessRight=*/0x0u,
623         /*methodId=*/   0xb06f0101u,
624         /*paramSize=*/  sizeof(NVB06F_CTRL_GET_CLASS_ENGINEID_PARAMS),
625         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
626 #if NV_PRINTF_STRINGS_ALLOWED
627         /*func=*/       "kchannelCtrlCmdGetClassEngineidB06F"
628 #endif
629     },
630     {               /*  [26] */
631 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
632         /*pFunc=*/      (void (*)(void)) NULL,
633 #else
634         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdResetChannelB06F_ef73a1,
635 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
636         /*flags=*/      0x10u,
637         /*accessRight=*/0x0u,
638         /*methodId=*/   0xb06f0102u,
639         /*paramSize=*/  sizeof(NVB06F_CTRL_CMD_RESET_CHANNEL_PARAMS),
640         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
641 #if NV_PRINTF_STRINGS_ALLOWED
642         /*func=*/       "kchannelCtrlCmdResetChannelB06F"
643 #endif
644     },
645     {               /*  [27] */
646 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
647         /*pFunc=*/      (void (*)(void)) NULL,
648 #else
649         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdGpFifoScheduleB06F_6546a6,
650 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
651         /*flags=*/      0x10u,
652         /*accessRight=*/0x0u,
653         /*methodId=*/   0xb06f0103u,
654         /*paramSize=*/  sizeof(NVB06F_CTRL_GPFIFO_SCHEDULE_PARAMS),
655         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
656 #if NV_PRINTF_STRINGS_ALLOWED
657         /*func=*/       "kchannelCtrlCmdGpFifoScheduleB06F"
658 #endif
659     },
660     {               /*  [28] */
661 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
662         /*pFunc=*/      (void (*)(void)) NULL,
663 #else
664         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdBindB06F_2c1c21,
665 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
666         /*flags=*/      0x10u,
667         /*accessRight=*/0x0u,
668         /*methodId=*/   0xb06f0104u,
669         /*paramSize=*/  sizeof(NVB06F_CTRL_BIND_PARAMS),
670         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
671 #if NV_PRINTF_STRINGS_ALLOWED
672         /*func=*/       "kchannelCtrlCmdBindB06F"
673 #endif
674     },
675     {               /*  [29] */
676 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
677         /*pFunc=*/      (void (*)(void)) NULL,
678 #else
679         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdGetEngineCtxSize_IMPL,
680 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
681         /*flags=*/      0x2210u,
682         /*accessRight=*/0x0u,
683         /*methodId=*/   0xb06f010bu,
684         /*paramSize=*/  sizeof(NVB06F_CTRL_GET_ENGINE_CTX_SIZE_PARAMS),
685         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
686 #if NV_PRINTF_STRINGS_ALLOWED
687         /*func=*/       "kchannelCtrlCmdGetEngineCtxSize"
688 #endif
689     },
690     {               /*  [30] */
691 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
692         /*pFunc=*/      (void (*)(void)) NULL,
693 #else
694         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdGetEngineCtxData_IMPL,
695 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
696         /*flags=*/      0x2210u,
697         /*accessRight=*/0x0u,
698         /*methodId=*/   0xb06f010cu,
699         /*paramSize=*/  sizeof(NVB06F_CTRL_GET_ENGINE_CTX_DATA_PARAMS),
700         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
701 #if NV_PRINTF_STRINGS_ALLOWED
702         /*func=*/       "kchannelCtrlCmdGetEngineCtxData"
703 #endif
704     },
705     {               /*  [31] */
706 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x42204u)
707         /*pFunc=*/      (void (*)(void)) NULL,
708 #else
709         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdMigrateEngineCtxData_IMPL,
710 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x42204u)
711         /*flags=*/      0x42204u,
712         /*accessRight=*/0x0u,
713         /*methodId=*/   0xb06f010du,
714         /*paramSize=*/  sizeof(NVB06F_CTRL_MIGRATE_ENGINE_CTX_DATA_PARAMS),
715         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
716 #if NV_PRINTF_STRINGS_ALLOWED
717         /*func=*/       "kchannelCtrlCmdMigrateEngineCtxData"
718 #endif
719     },
720     {               /*  [32] */
721 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
722         /*pFunc=*/      (void (*)(void)) NULL,
723 #else
724         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdGetEngineCtxState_IMPL,
725 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
726         /*flags=*/      0x2210u,
727         /*accessRight=*/0x0u,
728         /*methodId=*/   0xb06f010eu,
729         /*paramSize=*/  sizeof(NVB06F_CTRL_GET_ENGINE_CTX_STATE_PARAMS),
730         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
731 #if NV_PRINTF_STRINGS_ALLOWED
732         /*func=*/       "kchannelCtrlCmdGetEngineCtxState"
733 #endif
734     },
735     {               /*  [33] */
736 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
737         /*pFunc=*/      (void (*)(void)) NULL,
738 #else
739         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdGetChannelHwState_IMPL,
740 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
741         /*flags=*/      0x2210u,
742         /*accessRight=*/0x0u,
743         /*methodId=*/   0xb06f010fu,
744         /*paramSize=*/  sizeof(NVB06F_CTRL_GET_CHANNEL_HW_STATE_PARAMS),
745         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
746 #if NV_PRINTF_STRINGS_ALLOWED
747         /*func=*/       "kchannelCtrlCmdGetChannelHwState"
748 #endif
749     },
750     {               /*  [34] */
751 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x142204u)
752         /*pFunc=*/      (void (*)(void)) NULL,
753 #else
754         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdSetChannelHwState_IMPL,
755 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x142204u)
756         /*flags=*/      0x142204u,
757         /*accessRight=*/0x0u,
758         /*methodId=*/   0xb06f0110u,
759         /*paramSize=*/  sizeof(NVB06F_CTRL_SET_CHANNEL_HW_STATE_PARAMS),
760         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
761 #if NV_PRINTF_STRINGS_ALLOWED
762         /*func=*/       "kchannelCtrlCmdSetChannelHwState"
763 #endif
764     },
765     {               /*  [35] */
766 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
767         /*pFunc=*/      (void (*)(void)) NULL,
768 #else
769         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdSaveEngineCtxData_IMPL,
770 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
771         /*flags=*/      0x2210u,
772         /*accessRight=*/0x0u,
773         /*methodId=*/   0xb06f0111u,
774         /*paramSize=*/  sizeof(NVB06F_CTRL_SAVE_ENGINE_CTX_DATA_PARAMS),
775         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
776 #if NV_PRINTF_STRINGS_ALLOWED
777         /*func=*/       "kchannelCtrlCmdSaveEngineCtxData"
778 #endif
779     },
780     {               /*  [36] */
781 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x142204u)
782         /*pFunc=*/      (void (*)(void)) NULL,
783 #else
784         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdRestoreEngineCtxData_IMPL,
785 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x142204u)
786         /*flags=*/      0x142204u,
787         /*accessRight=*/0x0u,
788         /*methodId=*/   0xb06f0112u,
789         /*paramSize=*/  sizeof(NVB06F_CTRL_RESTORE_ENGINE_CTX_DATA_PARAMS),
790         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
791 #if NV_PRINTF_STRINGS_ALLOWED
792         /*func=*/       "kchannelCtrlCmdRestoreEngineCtxData"
793 #endif
794     },
795     {               /*  [37] */
796 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
797         /*pFunc=*/      (void (*)(void)) NULL,
798 #else
799         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdGetClassEngineidC06F_6a9a13,
800 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
801         /*flags=*/      0x10u,
802         /*accessRight=*/0x0u,
803         /*methodId=*/   0xc06f0101u,
804         /*paramSize=*/  sizeof(NVC06F_CTRL_GET_CLASS_ENGINEID_PARAMS),
805         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
806 #if NV_PRINTF_STRINGS_ALLOWED
807         /*func=*/       "kchannelCtrlCmdGetClassEngineidC06F"
808 #endif
809     },
810     {               /*  [38] */
811 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
812         /*pFunc=*/      (void (*)(void)) NULL,
813 #else
814         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdResetChannelC06F_ef73a1,
815 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
816         /*flags=*/      0x10u,
817         /*accessRight=*/0x0u,
818         /*methodId=*/   0xc06f0102u,
819         /*paramSize=*/  sizeof(NVC06F_CTRL_CMD_RESET_CHANNEL_PARAMS),
820         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
821 #if NV_PRINTF_STRINGS_ALLOWED
822         /*func=*/       "kchannelCtrlCmdResetChannelC06F"
823 #endif
824     },
825     {               /*  [39] */
826 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
827         /*pFunc=*/      (void (*)(void)) NULL,
828 #else
829         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdGpFifoScheduleC06F_6546a6,
830 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
831         /*flags=*/      0x10u,
832         /*accessRight=*/0x0u,
833         /*methodId=*/   0xc06f0103u,
834         /*paramSize=*/  sizeof(NVC06F_CTRL_GPFIFO_SCHEDULE_PARAMS),
835         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
836 #if NV_PRINTF_STRINGS_ALLOWED
837         /*func=*/       "kchannelCtrlCmdGpFifoScheduleC06F"
838 #endif
839     },
840     {               /*  [40] */
841 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
842         /*pFunc=*/      (void (*)(void)) NULL,
843 #else
844         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdBindC06F_2c1c21,
845 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
846         /*flags=*/      0x10u,
847         /*accessRight=*/0x0u,
848         /*methodId=*/   0xc06f0104u,
849         /*paramSize=*/  sizeof(NVC06F_CTRL_BIND_PARAMS),
850         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
851 #if NV_PRINTF_STRINGS_ALLOWED
852         /*func=*/       "kchannelCtrlCmdBindC06F"
853 #endif
854     },
855     {               /*  [41] */
856 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
857         /*pFunc=*/      (void (*)(void)) NULL,
858 #else
859         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdGetClassEngineidC36F_6a9a13,
860 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
861         /*flags=*/      0x10u,
862         /*accessRight=*/0x0u,
863         /*methodId=*/   0xc36f0101u,
864         /*paramSize=*/  sizeof(NVC36F_CTRL_GET_CLASS_ENGINEID_PARAMS),
865         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
866 #if NV_PRINTF_STRINGS_ALLOWED
867         /*func=*/       "kchannelCtrlCmdGetClassEngineidC36F"
868 #endif
869     },
870     {               /*  [42] */
871 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
872         /*pFunc=*/      (void (*)(void)) NULL,
873 #else
874         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdResetChannelC36F_ef73a1,
875 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
876         /*flags=*/      0x10u,
877         /*accessRight=*/0x0u,
878         /*methodId=*/   0xc36f0102u,
879         /*paramSize=*/  sizeof(NVC36F_CTRL_CMD_RESET_CHANNEL_PARAMS),
880         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
881 #if NV_PRINTF_STRINGS_ALLOWED
882         /*func=*/       "kchannelCtrlCmdResetChannelC36F"
883 #endif
884     },
885     {               /*  [43] */
886 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
887         /*pFunc=*/      (void (*)(void)) NULL,
888 #else
889         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdGpFifoScheduleC36F_6546a6,
890 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
891         /*flags=*/      0x10u,
892         /*accessRight=*/0x0u,
893         /*methodId=*/   0xc36f0103u,
894         /*paramSize=*/  sizeof(NVC36F_CTRL_GPFIFO_SCHEDULE_PARAMS),
895         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
896 #if NV_PRINTF_STRINGS_ALLOWED
897         /*func=*/       "kchannelCtrlCmdGpFifoScheduleC36F"
898 #endif
899     },
900     {               /*  [44] */
901 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
902         /*pFunc=*/      (void (*)(void)) NULL,
903 #else
904         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdBindC36F_2c1c21,
905 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
906         /*flags=*/      0x10u,
907         /*accessRight=*/0x0u,
908         /*methodId=*/   0xc36f0104u,
909         /*paramSize=*/  sizeof(NVC36F_CTRL_BIND_PARAMS),
910         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
911 #if NV_PRINTF_STRINGS_ALLOWED
912         /*func=*/       "kchannelCtrlCmdBindC36F"
913 #endif
914     },
915     {               /*  [45] */
916 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
917         /*pFunc=*/      (void (*)(void)) NULL,
918 #else
919         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdGpfifoGetWorkSubmitToken_IMPL,
920 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
921         /*flags=*/      0x10u,
922         /*accessRight=*/0x0u,
923         /*methodId=*/   0xc36f0108u,
924         /*paramSize=*/  sizeof(NVC36F_CTRL_CMD_GPFIFO_GET_WORK_SUBMIT_TOKEN_PARAMS),
925         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
926 #if NV_PRINTF_STRINGS_ALLOWED
927         /*func=*/       "kchannelCtrlCmdGpfifoGetWorkSubmitToken"
928 #endif
929     },
930     {               /*  [46] */
931 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2204u)
932         /*pFunc=*/      (void (*)(void)) NULL,
933 #else
934         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdGpfifoUpdateFaultMethodBuffer_IMPL,
935 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2204u)
936         /*flags=*/      0x2204u,
937         /*accessRight=*/0x0u,
938         /*methodId=*/   0xc36f0109u,
939         /*paramSize=*/  sizeof(NVC36F_CTRL_GPFIFO_UPDATE_FAULT_METHOD_BUFFER_PARAMS),
940         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
941 #if NV_PRINTF_STRINGS_ALLOWED
942         /*func=*/       "kchannelCtrlCmdGpfifoUpdateFaultMethodBuffer"
943 #endif
944     },
945     {               /*  [47] */
946 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
947         /*pFunc=*/      (void (*)(void)) NULL,
948 #else
949         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdGpfifoSetWorkSubmitTokenNotifIndex_IMPL,
950 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
951         /*flags=*/      0x10u,
952         /*accessRight=*/0x0u,
953         /*methodId=*/   0xc36f010au,
954         /*paramSize=*/  sizeof(NVC36F_CTRL_GPFIFO_SET_WORK_SUBMIT_TOKEN_NOTIF_INDEX_PARAMS),
955         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
956 #if NV_PRINTF_STRINGS_ALLOWED
957         /*func=*/       "kchannelCtrlCmdGpfifoSetWorkSubmitTokenNotifIndex"
958 #endif
959     },
960     {               /*  [48] */
961 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
962         /*pFunc=*/      (void (*)(void)) NULL,
963 #else
964         /*pFunc=*/      (void (*)(void)) kchannelCtrlCmdGetKmb_IMPL,
965 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
966         /*flags=*/      0x2210u,
967         /*accessRight=*/0x0u,
968         /*methodId=*/   0xc56f010bu,
969         /*paramSize=*/  sizeof(NVC56F_CTRL_CMD_GET_KMB_PARAMS),
970         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
971 #if NV_PRINTF_STRINGS_ALLOWED
972         /*func=*/       "kchannelCtrlCmdGetKmb"
973 #endif
974     },
975     {               /*  [49] */
976 #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
977         /*pFunc=*/      (void (*)(void)) NULL,
978 #else
979         /*pFunc=*/      (void (*)(void)) kchannelCtrlRotateSecureChannelIv_IMPL,
980 #endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
981         /*flags=*/      0x2210u,
982         /*accessRight=*/0x0u,
983         /*methodId=*/   0xc56f010cu,
984         /*paramSize=*/  sizeof(NVC56F_CTRL_ROTATE_SECURE_CHANNEL_IV_PARAMS),
985         /*pClassInfo=*/ &(__nvoc_class_def_KernelChannel.classInfo),
986 #if NV_PRINTF_STRINGS_ALLOWED
987         /*func=*/       "kchannelCtrlRotateSecureChannelIv"
988 #endif
989     },
990 
991 };
992 
993 const struct NVOC_EXPORT_INFO __nvoc_export_info_KernelChannel =
994 {
995     /*numEntries=*/     50,
996     /*pExportEntries=*/ __nvoc_exported_method_def_KernelChannel
997 };
998 
999 void __nvoc_dtor_GpuResource(GpuResource*);
1000 void __nvoc_dtor_Notifier(Notifier*);
1001 void __nvoc_dtor_KernelChannel(KernelChannel *pThis) {
1002     __nvoc_kchannelDestruct(pThis);
1003     __nvoc_dtor_GpuResource(&pThis->__nvoc_base_GpuResource);
1004     __nvoc_dtor_Notifier(&pThis->__nvoc_base_Notifier);
1005     PORT_UNREFERENCED_VARIABLE(pThis);
1006 }
1007 
1008 void __nvoc_init_dataField_KernelChannel(KernelChannel *pThis, RmHalspecOwner *pRmhalspecowner) {
1009     RmVariantHal *rmVariantHal = &pRmhalspecowner->rmVariantHal;
1010     const unsigned long rmVariantHal_HalVarIdx = (unsigned long)rmVariantHal->__nvoc_HalVarIdx;
1011     ChipHal *chipHal = &pRmhalspecowner->chipHal;
1012     const unsigned long chipHal_HalVarIdx = (unsigned long)chipHal->__nvoc_HalVarIdx;
1013     PORT_UNREFERENCED_VARIABLE(pThis);
1014     PORT_UNREFERENCED_VARIABLE(pRmhalspecowner);
1015     PORT_UNREFERENCED_VARIABLE(rmVariantHal);
1016     PORT_UNREFERENCED_VARIABLE(rmVariantHal_HalVarIdx);
1017     PORT_UNREFERENCED_VARIABLE(chipHal);
1018     PORT_UNREFERENCED_VARIABLE(chipHal_HalVarIdx);
1019 }
1020 
1021 NV_STATUS __nvoc_ctor_GpuResource(GpuResource* , CALL_CONTEXT *, struct RS_RES_ALLOC_PARAMS_INTERNAL *);
1022 NV_STATUS __nvoc_ctor_Notifier(Notifier* , CALL_CONTEXT *);
1023 NV_STATUS __nvoc_ctor_KernelChannel(KernelChannel *pThis, RmHalspecOwner *pRmhalspecowner, CALL_CONTEXT * arg_pCallContext, struct RS_RES_ALLOC_PARAMS_INTERNAL * arg_pParams) {
1024     NV_STATUS status = NV_OK;
1025     status = __nvoc_ctor_GpuResource(&pThis->__nvoc_base_GpuResource, arg_pCallContext, arg_pParams);
1026     if (status != NV_OK) goto __nvoc_ctor_KernelChannel_fail_GpuResource;
1027     status = __nvoc_ctor_Notifier(&pThis->__nvoc_base_Notifier, arg_pCallContext);
1028     if (status != NV_OK) goto __nvoc_ctor_KernelChannel_fail_Notifier;
1029     __nvoc_init_dataField_KernelChannel(pThis, pRmhalspecowner);
1030 
1031     status = __nvoc_kchannelConstruct(pThis, arg_pCallContext, arg_pParams);
1032     if (status != NV_OK) goto __nvoc_ctor_KernelChannel_fail__init;
1033     goto __nvoc_ctor_KernelChannel_exit; // Success
1034 
1035 __nvoc_ctor_KernelChannel_fail__init:
1036     __nvoc_dtor_Notifier(&pThis->__nvoc_base_Notifier);
1037 __nvoc_ctor_KernelChannel_fail_Notifier:
1038     __nvoc_dtor_GpuResource(&pThis->__nvoc_base_GpuResource);
1039 __nvoc_ctor_KernelChannel_fail_GpuResource:
1040 __nvoc_ctor_KernelChannel_exit:
1041 
1042     return status;
1043 }
1044 
1045 static void __nvoc_init_funcTable_KernelChannel_1(KernelChannel *pThis, RmHalspecOwner *pRmhalspecowner) {
1046     RmVariantHal *rmVariantHal = &pRmhalspecowner->rmVariantHal;
1047     const unsigned long rmVariantHal_HalVarIdx = (unsigned long)rmVariantHal->__nvoc_HalVarIdx;
1048     ChipHal *chipHal = &pRmhalspecowner->chipHal;
1049     const unsigned long chipHal_HalVarIdx = (unsigned long)chipHal->__nvoc_HalVarIdx;
1050     PORT_UNREFERENCED_VARIABLE(pThis);
1051     PORT_UNREFERENCED_VARIABLE(pRmhalspecowner);
1052     PORT_UNREFERENCED_VARIABLE(rmVariantHal);
1053     PORT_UNREFERENCED_VARIABLE(rmVariantHal_HalVarIdx);
1054     PORT_UNREFERENCED_VARIABLE(chipHal);
1055     PORT_UNREFERENCED_VARIABLE(chipHal_HalVarIdx);
1056 
1057     pThis->__kchannelMap__ = &kchannelMap_IMPL;
1058 
1059     pThis->__kchannelUnmap__ = &kchannelUnmap_IMPL;
1060 
1061     pThis->__kchannelGetMapAddrSpace__ = &kchannelGetMapAddrSpace_IMPL;
1062 
1063     pThis->__kchannelGetMemInterMapParams__ = &kchannelGetMemInterMapParams_IMPL;
1064 
1065     pThis->__kchannelCheckMemInterUnmap__ = &kchannelCheckMemInterUnmap_IMPL;
1066 
1067     // Hal function -- kchannelCreateUserMemDesc
1068     if (( ((chipHal_HalVarIdx >> 5) == 1UL) && ((1UL << (chipHal_HalVarIdx & 0x1f)) & 0x10000000UL) )) /* ChipHal: GH100 */
1069     {
1070         pThis->__kchannelCreateUserMemDesc__ = &kchannelCreateUserMemDesc_GA10B;
1071     }
1072     else
1073     {
1074         pThis->__kchannelCreateUserMemDesc__ = &kchannelCreateUserMemDesc_GM107;
1075     }
1076 
1077     // Hal function -- kchannelIsUserdAddrSizeValid
1078     if (( ((chipHal_HalVarIdx >> 5) == 1UL) && ((1UL << (chipHal_HalVarIdx & 0x1f)) & 0x10000000UL) )) /* ChipHal: GH100 */
1079     {
1080         pThis->__kchannelIsUserdAddrSizeValid__ = &kchannelIsUserdAddrSizeValid_GH100;
1081     }
1082     else if (( ((chipHal_HalVarIdx >> 5) == 1UL) && ((1UL << (chipHal_HalVarIdx & 0x1f)) & 0x000003e0UL) )) /* ChipHal: TU102 | TU104 | TU106 | TU116 | TU117 */
1083     {
1084         pThis->__kchannelIsUserdAddrSizeValid__ = &kchannelIsUserdAddrSizeValid_GV100;
1085     }
1086     else
1087     {
1088         pThis->__kchannelIsUserdAddrSizeValid__ = &kchannelIsUserdAddrSizeValid_GA100;
1089     }
1090 
1091 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
1092     pThis->__kchannelCtrlCmdResetIsolatedChannel__ = &kchannelCtrlCmdResetIsolatedChannel_IMPL;
1093 #endif
1094 
1095 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1096     pThis->__kchannelCtrlCmdGetClassEngineid__ = &kchannelCtrlCmdGetClassEngineid_IMPL;
1097 #endif
1098 
1099 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1100     pThis->__kchannelCtrlCmdResetChannel__ = &kchannelCtrlCmdResetChannel_IMPL;
1101 #endif
1102 
1103 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
1104     pThis->__kchannelCtrlCmdGetDeferRCState__ = &kchannelCtrlCmdGetDeferRCState_IMPL;
1105 #endif
1106 
1107 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
1108     pThis->__kchannelCtrlCmdGetMmuFaultInfo__ = &kchannelCtrlCmdGetMmuFaultInfo_IMPL;
1109 #endif
1110 
1111 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1112     pThis->__kchannelCtrlCmdEventSetNotification__ = &kchannelCtrlCmdEventSetNotification_IMPL;
1113 #endif
1114 
1115 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1116     pThis->__kchannelCtrlCmdGetClassEngineidA06F__ = &kchannelCtrlCmdGetClassEngineidA06F_6a9a13;
1117 #endif
1118 
1119 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1120     pThis->__kchannelCtrlCmdResetChannelA06F__ = &kchannelCtrlCmdResetChannelA06F_ef73a1;
1121 #endif
1122 
1123 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1124     pThis->__kchannelCtrlCmdGpFifoSchedule__ = &kchannelCtrlCmdGpFifoSchedule_IMPL;
1125 #endif
1126 
1127 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1128     pThis->__kchannelCtrlCmdBind__ = &kchannelCtrlCmdBind_IMPL;
1129 #endif
1130 
1131 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
1132     pThis->__kchannelCtrlCmdGetMmuFaultInfoA06F__ = &kchannelCtrlCmdGetMmuFaultInfoA06F_a7f9ac;
1133 #endif
1134 
1135 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1136     pThis->__kchannelCtrlCmdSetErrorNotifier__ = &kchannelCtrlCmdSetErrorNotifier_IMPL;
1137 #endif
1138 
1139 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x110u)
1140     pThis->__kchannelCtrlCmdSetInterleaveLevel__ = &kchannelCtrlCmdSetInterleaveLevel_IMPL;
1141 #endif
1142 
1143 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
1144     pThis->__kchannelCtrlCmdRestartRunlist__ = &kchannelCtrlCmdRestartRunlist_IMPL;
1145 #endif
1146 
1147 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1148     pThis->__kchannelCtrlCmdGetClassEngineidA16F__ = &kchannelCtrlCmdGetClassEngineidA16F_6a9a13;
1149 #endif
1150 
1151 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1152     pThis->__kchannelCtrlCmdResetChannelA16F__ = &kchannelCtrlCmdResetChannelA16F_ef73a1;
1153 #endif
1154 
1155 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1156     pThis->__kchannelCtrlCmdGpFifoScheduleA16F__ = &kchannelCtrlCmdGpFifoScheduleA16F_6546a6;
1157 #endif
1158 
1159 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1160     pThis->__kchannelCtrlCmdGetClassEngineidA26F__ = &kchannelCtrlCmdGetClassEngineidA26F_6a9a13;
1161 #endif
1162 
1163 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1164     pThis->__kchannelCtrlCmdResetChannelA26F__ = &kchannelCtrlCmdResetChannelA26F_ef73a1;
1165 #endif
1166 
1167 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1168     pThis->__kchannelFCtrlCmdGpFifoScheduleA26F__ = &kchannelFCtrlCmdGpFifoScheduleA26F_6546a6;
1169 #endif
1170 
1171 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1172     pThis->__kchannelCtrlCmdGetClassEngineidB06F__ = &kchannelCtrlCmdGetClassEngineidB06F_6a9a13;
1173 #endif
1174 
1175 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1176     pThis->__kchannelCtrlCmdResetChannelB06F__ = &kchannelCtrlCmdResetChannelB06F_ef73a1;
1177 #endif
1178 
1179 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1180     pThis->__kchannelCtrlCmdGpFifoScheduleB06F__ = &kchannelCtrlCmdGpFifoScheduleB06F_6546a6;
1181 #endif
1182 
1183 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1184     pThis->__kchannelCtrlCmdBindB06F__ = &kchannelCtrlCmdBindB06F_2c1c21;
1185 #endif
1186 
1187 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
1188     pThis->__kchannelCtrlCmdGetEngineCtxSize__ = &kchannelCtrlCmdGetEngineCtxSize_IMPL;
1189 #endif
1190 
1191 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
1192     pThis->__kchannelCtrlCmdGetEngineCtxData__ = &kchannelCtrlCmdGetEngineCtxData_IMPL;
1193 #endif
1194 
1195 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x42204u)
1196     pThis->__kchannelCtrlCmdMigrateEngineCtxData__ = &kchannelCtrlCmdMigrateEngineCtxData_IMPL;
1197 #endif
1198 
1199 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
1200     pThis->__kchannelCtrlCmdGetEngineCtxState__ = &kchannelCtrlCmdGetEngineCtxState_IMPL;
1201 #endif
1202 
1203 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
1204     pThis->__kchannelCtrlCmdGetChannelHwState__ = &kchannelCtrlCmdGetChannelHwState_IMPL;
1205 #endif
1206 
1207 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x142204u)
1208     pThis->__kchannelCtrlCmdSetChannelHwState__ = &kchannelCtrlCmdSetChannelHwState_IMPL;
1209 #endif
1210 
1211 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
1212     pThis->__kchannelCtrlCmdSaveEngineCtxData__ = &kchannelCtrlCmdSaveEngineCtxData_IMPL;
1213 #endif
1214 
1215 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x142204u)
1216     pThis->__kchannelCtrlCmdRestoreEngineCtxData__ = &kchannelCtrlCmdRestoreEngineCtxData_IMPL;
1217 #endif
1218 
1219 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1220     pThis->__kchannelCtrlCmdGetClassEngineidC06F__ = &kchannelCtrlCmdGetClassEngineidC06F_6a9a13;
1221 #endif
1222 
1223 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1224     pThis->__kchannelCtrlCmdResetChannelC06F__ = &kchannelCtrlCmdResetChannelC06F_ef73a1;
1225 #endif
1226 
1227 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1228     pThis->__kchannelCtrlCmdGpFifoScheduleC06F__ = &kchannelCtrlCmdGpFifoScheduleC06F_6546a6;
1229 #endif
1230 
1231 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1232     pThis->__kchannelCtrlCmdBindC06F__ = &kchannelCtrlCmdBindC06F_2c1c21;
1233 #endif
1234 
1235 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1236     pThis->__kchannelCtrlCmdGetClassEngineidC36F__ = &kchannelCtrlCmdGetClassEngineidC36F_6a9a13;
1237 #endif
1238 
1239 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1240     pThis->__kchannelCtrlCmdResetChannelC36F__ = &kchannelCtrlCmdResetChannelC36F_ef73a1;
1241 #endif
1242 
1243 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1244     pThis->__kchannelCtrlCmdGpFifoScheduleC36F__ = &kchannelCtrlCmdGpFifoScheduleC36F_6546a6;
1245 #endif
1246 
1247 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1248     pThis->__kchannelCtrlCmdBindC36F__ = &kchannelCtrlCmdBindC36F_2c1c21;
1249 #endif
1250 
1251 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1252     pThis->__kchannelCtrlCmdGpfifoGetWorkSubmitToken__ = &kchannelCtrlCmdGpfifoGetWorkSubmitToken_IMPL;
1253 #endif
1254 
1255 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2204u)
1256     pThis->__kchannelCtrlCmdGpfifoUpdateFaultMethodBuffer__ = &kchannelCtrlCmdGpfifoUpdateFaultMethodBuffer_IMPL;
1257 #endif
1258 
1259 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1260     pThis->__kchannelCtrlCmdGpfifoSetWorkSubmitTokenNotifIndex__ = &kchannelCtrlCmdGpfifoSetWorkSubmitTokenNotifIndex_IMPL;
1261 #endif
1262 
1263 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1264     pThis->__kchannelCtrlCmdStopChannel__ = &kchannelCtrlCmdStopChannel_IMPL;
1265 #endif
1266 
1267 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
1268     pThis->__kchannelCtrlCmdGetKmb__ = &kchannelCtrlCmdGetKmb_IMPL;
1269 #endif
1270 
1271 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2210u)
1272     pThis->__kchannelCtrlRotateSecureChannelIv__ = &kchannelCtrlRotateSecureChannelIv_IMPL;
1273 #endif
1274 
1275 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1276     pThis->__kchannelCtrlGetTpcPartitionMode__ = &kchannelCtrlGetTpcPartitionMode_a094e1;
1277 #endif
1278 
1279 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1280     pThis->__kchannelCtrlSetTpcPartitionMode__ = &kchannelCtrlSetTpcPartitionMode_a094e1;
1281 #endif
1282 
1283 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1284     pThis->__kchannelCtrlGetMMUDebugMode__ = &kchannelCtrlGetMMUDebugMode_a094e1;
1285 #endif
1286 
1287 #if !NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10u)
1288     pThis->__kchannelCtrlProgramVidmemPromote__ = &kchannelCtrlProgramVidmemPromote_a094e1;
1289 #endif
1290 
1291     pThis->__nvoc_base_GpuResource.__gpuresMap__ = &__nvoc_thunk_KernelChannel_gpuresMap;
1292 
1293     pThis->__nvoc_base_GpuResource.__gpuresUnmap__ = &__nvoc_thunk_KernelChannel_gpuresUnmap;
1294 
1295     pThis->__nvoc_base_GpuResource.__gpuresGetMapAddrSpace__ = &__nvoc_thunk_KernelChannel_gpuresGetMapAddrSpace;
1296 
1297     pThis->__nvoc_base_GpuResource.__nvoc_base_RmResource.__rmresGetMemInterMapParams__ = &__nvoc_thunk_KernelChannel_rmresGetMemInterMapParams;
1298 
1299     pThis->__nvoc_base_GpuResource.__nvoc_base_RmResource.__rmresCheckMemInterUnmap__ = &__nvoc_thunk_KernelChannel_rmresCheckMemInterUnmap;
1300 
1301     pThis->__kchannelShareCallback__ = &__nvoc_thunk_GpuResource_kchannelShareCallback;
1302 
1303     pThis->__kchannelGetOrAllocNotifShare__ = &__nvoc_thunk_Notifier_kchannelGetOrAllocNotifShare;
1304 
1305     pThis->__kchannelMapTo__ = &__nvoc_thunk_RsResource_kchannelMapTo;
1306 
1307     pThis->__kchannelSetNotificationShare__ = &__nvoc_thunk_Notifier_kchannelSetNotificationShare;
1308 
1309     pThis->__kchannelGetRefCount__ = &__nvoc_thunk_RsResource_kchannelGetRefCount;
1310 
1311     pThis->__kchannelAddAdditionalDependants__ = &__nvoc_thunk_RsResource_kchannelAddAdditionalDependants;
1312 
1313     pThis->__kchannelControl_Prologue__ = &__nvoc_thunk_RmResource_kchannelControl_Prologue;
1314 
1315     pThis->__kchannelGetRegBaseOffsetAndSize__ = &__nvoc_thunk_GpuResource_kchannelGetRegBaseOffsetAndSize;
1316 
1317     pThis->__kchannelInternalControlForward__ = &__nvoc_thunk_GpuResource_kchannelInternalControlForward;
1318 
1319     pThis->__kchannelUnmapFrom__ = &__nvoc_thunk_RsResource_kchannelUnmapFrom;
1320 
1321     pThis->__kchannelControl_Epilogue__ = &__nvoc_thunk_RmResource_kchannelControl_Epilogue;
1322 
1323     pThis->__kchannelControlLookup__ = &__nvoc_thunk_RsResource_kchannelControlLookup;
1324 
1325     pThis->__kchannelGetInternalObjectHandle__ = &__nvoc_thunk_GpuResource_kchannelGetInternalObjectHandle;
1326 
1327     pThis->__kchannelControl__ = &__nvoc_thunk_GpuResource_kchannelControl;
1328 
1329     pThis->__kchannelGetMemoryMappingDescriptor__ = &__nvoc_thunk_RmResource_kchannelGetMemoryMappingDescriptor;
1330 
1331     pThis->__kchannelControlFilter__ = &__nvoc_thunk_RsResource_kchannelControlFilter;
1332 
1333     pThis->__kchannelUnregisterEvent__ = &__nvoc_thunk_Notifier_kchannelUnregisterEvent;
1334 
1335     pThis->__kchannelControlSerialization_Prologue__ = &__nvoc_thunk_RmResource_kchannelControlSerialization_Prologue;
1336 
1337     pThis->__kchannelCanCopy__ = &__nvoc_thunk_RsResource_kchannelCanCopy;
1338 
1339     pThis->__kchannelPreDestruct__ = &__nvoc_thunk_RsResource_kchannelPreDestruct;
1340 
1341     pThis->__kchannelIsDuplicate__ = &__nvoc_thunk_RsResource_kchannelIsDuplicate;
1342 
1343     pThis->__kchannelControlSerialization_Epilogue__ = &__nvoc_thunk_RmResource_kchannelControlSerialization_Epilogue;
1344 
1345     pThis->__kchannelGetNotificationListPtr__ = &__nvoc_thunk_Notifier_kchannelGetNotificationListPtr;
1346 
1347     pThis->__kchannelGetNotificationShare__ = &__nvoc_thunk_Notifier_kchannelGetNotificationShare;
1348 
1349     pThis->__kchannelAccessCallback__ = &__nvoc_thunk_RmResource_kchannelAccessCallback;
1350 }
1351 
1352 void __nvoc_init_funcTable_KernelChannel(KernelChannel *pThis, RmHalspecOwner *pRmhalspecowner) {
1353     __nvoc_init_funcTable_KernelChannel_1(pThis, pRmhalspecowner);
1354 }
1355 
1356 void __nvoc_init_GpuResource(GpuResource*);
1357 void __nvoc_init_Notifier(Notifier*);
1358 void __nvoc_init_KernelChannel(KernelChannel *pThis, RmHalspecOwner *pRmhalspecowner) {
1359     pThis->__nvoc_pbase_KernelChannel = pThis;
1360     pThis->__nvoc_pbase_Object = &pThis->__nvoc_base_GpuResource.__nvoc_base_RmResource.__nvoc_base_RsResource.__nvoc_base_Object;
1361     pThis->__nvoc_pbase_RsResource = &pThis->__nvoc_base_GpuResource.__nvoc_base_RmResource.__nvoc_base_RsResource;
1362     pThis->__nvoc_pbase_RmResourceCommon = &pThis->__nvoc_base_GpuResource.__nvoc_base_RmResource.__nvoc_base_RmResourceCommon;
1363     pThis->__nvoc_pbase_RmResource = &pThis->__nvoc_base_GpuResource.__nvoc_base_RmResource;
1364     pThis->__nvoc_pbase_GpuResource = &pThis->__nvoc_base_GpuResource;
1365     pThis->__nvoc_pbase_INotifier = &pThis->__nvoc_base_Notifier.__nvoc_base_INotifier;
1366     pThis->__nvoc_pbase_Notifier = &pThis->__nvoc_base_Notifier;
1367     __nvoc_init_GpuResource(&pThis->__nvoc_base_GpuResource);
1368     __nvoc_init_Notifier(&pThis->__nvoc_base_Notifier);
1369     __nvoc_init_funcTable_KernelChannel(pThis, pRmhalspecowner);
1370 }
1371 
1372 NV_STATUS __nvoc_objCreate_KernelChannel(KernelChannel **ppThis, Dynamic *pParent, NvU32 createFlags, CALL_CONTEXT * arg_pCallContext, struct RS_RES_ALLOC_PARAMS_INTERNAL * arg_pParams) {
1373     NV_STATUS status;
1374     Object *pParentObj;
1375     KernelChannel *pThis;
1376     RmHalspecOwner *pRmhalspecowner;
1377 
1378     status = __nvoc_handleObjCreateMemAlloc(createFlags, sizeof(KernelChannel), (void**)&pThis, (void**)ppThis);
1379     if (status != NV_OK)
1380         return status;
1381 
1382     portMemSet(pThis, 0, sizeof(KernelChannel));
1383 
1384     __nvoc_initRtti(staticCast(pThis, Dynamic), &__nvoc_class_def_KernelChannel);
1385 
1386     pThis->__nvoc_base_GpuResource.__nvoc_base_RmResource.__nvoc_base_RsResource.__nvoc_base_Object.createFlags = createFlags;
1387 
1388     if (pParent != NULL && !(createFlags & NVOC_OBJ_CREATE_FLAGS_PARENT_HALSPEC_ONLY))
1389     {
1390         pParentObj = dynamicCast(pParent, Object);
1391         objAddChild(pParentObj, &pThis->__nvoc_base_GpuResource.__nvoc_base_RmResource.__nvoc_base_RsResource.__nvoc_base_Object);
1392     }
1393     else
1394     {
1395         pThis->__nvoc_base_GpuResource.__nvoc_base_RmResource.__nvoc_base_RsResource.__nvoc_base_Object.pParent = NULL;
1396     }
1397 
1398     if ((pRmhalspecowner = dynamicCast(pParent, RmHalspecOwner)) == NULL)
1399         pRmhalspecowner = objFindAncestorOfType(RmHalspecOwner, pParent);
1400     NV_ASSERT_OR_RETURN(pRmhalspecowner != NULL, NV_ERR_INVALID_ARGUMENT);
1401 
1402     __nvoc_init_KernelChannel(pThis, pRmhalspecowner);
1403     status = __nvoc_ctor_KernelChannel(pThis, pRmhalspecowner, arg_pCallContext, arg_pParams);
1404     if (status != NV_OK) goto __nvoc_objCreate_KernelChannel_cleanup;
1405 
1406     *ppThis = pThis;
1407 
1408     return NV_OK;
1409 
1410 __nvoc_objCreate_KernelChannel_cleanup:
1411     // do not call destructors here since the constructor already called them
1412     if (createFlags & NVOC_OBJ_CREATE_FLAGS_IN_PLACE_CONSTRUCT)
1413         portMemSet(pThis, 0, sizeof(KernelChannel));
1414     else
1415         portMemFree(pThis);
1416 
1417     // coverity[leaked_storage:FALSE]
1418     return status;
1419 }
1420 
1421 NV_STATUS __nvoc_objCreateDynamic_KernelChannel(KernelChannel **ppThis, Dynamic *pParent, NvU32 createFlags, va_list args) {
1422     NV_STATUS status;
1423     CALL_CONTEXT * arg_pCallContext = va_arg(args, CALL_CONTEXT *);
1424     struct RS_RES_ALLOC_PARAMS_INTERNAL * arg_pParams = va_arg(args, struct RS_RES_ALLOC_PARAMS_INTERNAL *);
1425 
1426     status = __nvoc_objCreate_KernelChannel(ppThis, pParent, createFlags, arg_pCallContext, arg_pParams);
1427 
1428     return status;
1429 }
1430 
1431