1 
2 #ifndef _G_PROFILER_V2_NVOC_H_
3 #define _G_PROFILER_V2_NVOC_H_
4 #include "nvoc/runtime.h"
5 
6 // Version of generated metadata structures
7 #ifdef NVOC_METADATA_VERSION
8 #undef NVOC_METADATA_VERSION
9 #endif
10 #define NVOC_METADATA_VERSION 0
11 
12 #ifdef __cplusplus
13 extern "C" {
14 #endif
15 
16 /*
17  * SPDX-FileCopyrightText: Copyright (c) 2018-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
18  * SPDX-License-Identifier: MIT
19  *
20  * Permission is hereby granted, free of charge, to any person obtaining a
21  * copy of this software and associated documentation files (the "Software"),
22  * to deal in the Software without restriction, including without limitation
23  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
24  * and/or sell copies of the Software, and to permit persons to whom the
25  * Software is furnished to do so, subject to the following conditions:
26  *
27  * The above copyright notice and this permission notice shall be included in
28  * all copies or substantial portions of the Software.
29  *
30  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
31  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
32  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
33  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
34  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
35  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
36  * DEALINGS IN THE SOFTWARE.
37  */
38 
39 #pragma once
40 #include "g_profiler_v2_nvoc.h"
41 
42 #ifndef PROFILER_V2_H
43 #define PROFILER_V2_H
44 
45 #include "resserv/resserv.h"
46 #include "nvoc/prelude.h"
47 #include "resserv/rs_resource.h"
48 #include "gpu/gpu_resource.h"
49 #include "ctrl/ctrl2080/ctrl2080gpu.h"
50 #include "ctrl/ctrlb0cc.h"
51 #include "gpu/gpu_halspec.h"
52 #include "nvoc/utility.h"
53 #include "gpu/hwpm/kern_hwpm_common_defs.h"
54 
55 #include "class/clb2cc.h"   // MAXWELL_PROFILER_DEVICE
56 
57 typedef struct
58 {
59     NvBool bMemoryProfilingPermitted;
60     NvBool bAdminProfilingPermitted;
61     NvBool bDevProfilingPermitted;
62 } PROFILER_CLIENT_PERMISSIONS;
63 
64 
65 // Private field names are wrapped in PRIVATE_FIELD, which does nothing for
66 // the matching C source file, but causes diagnostics to be issued if another
67 // source file references the field.
68 #ifdef NVOC_PROFILER_V2_H_PRIVATE_ACCESS_ALLOWED
69 #define PRIVATE_FIELD(x) x
70 #else
71 #define PRIVATE_FIELD(x) NVOC_PRIVATE_FIELD(x)
72 #endif
73 
74 
75 struct ProfilerBase {
76 
77     // Metadata
78     const struct NVOC_RTTI *__nvoc_rtti;
79 
80     // Parent (i.e. superclass or base class) object pointers
81     struct GpuResource __nvoc_base_GpuResource;
82 
83     // Ancestor object pointers for `staticCast` feature
84     struct Object *__nvoc_pbase_Object;    // obj super^4
85     struct RsResource *__nvoc_pbase_RsResource;    // res super^3
86     struct RmResourceCommon *__nvoc_pbase_RmResourceCommon;    // rmrescmn super^3
87     struct RmResource *__nvoc_pbase_RmResource;    // rmres super^2
88     struct GpuResource *__nvoc_pbase_GpuResource;    // gpures super
89     struct ProfilerBase *__nvoc_pbase_ProfilerBase;    // profilerBase
90 
91     // Vtable with 59 per-object function pointers
92     NV_STATUS (*__profilerBaseConstructState__)(struct ProfilerBase * /*this*/, CALL_CONTEXT *, struct RS_RES_ALLOC_PARAMS_INTERNAL *);  // halified (2 hals) body
93     void (*__profilerBaseDestructState__)(struct ProfilerBase * /*this*/);  // halified (2 hals) body
94     NV_STATUS (*__profilerBaseCtrlCmdReserveHwpmLegacy__)(struct ProfilerBase * /*this*/, NVB0CC_CTRL_RESERVE_HWPM_LEGACY_PARAMS *);  // exported (id=0xb0cc0101)
95     NV_STATUS (*__profilerBaseCtrlCmdInternalReserveHwpmLegacy__)(struct ProfilerBase * /*this*/, NVB0CC_CTRL_INTERNAL_RESERVE_HWPM_LEGACY_PARAMS *);  // exported (id=0xb0cc020a)
96     NV_STATUS (*__profilerBaseCtrlCmdReleaseHwpmLegacy__)(struct ProfilerBase * /*this*/);  // exported (id=0xb0cc0102)
97     NV_STATUS (*__profilerBaseCtrlCmdReservePmAreaSmpc__)(struct ProfilerBase * /*this*/, NVB0CC_CTRL_RESERVE_PM_AREA_SMPC_PARAMS *);  // exported (id=0xb0cc0103)
98     NV_STATUS (*__profilerBaseCtrlCmdReleasePmAreaSmpc__)(struct ProfilerBase * /*this*/);  // exported (id=0xb0cc0104)
99     NV_STATUS (*__profilerBaseCtrlCmdAllocPmaStream__)(struct ProfilerBase * /*this*/, NVB0CC_CTRL_ALLOC_PMA_STREAM_PARAMS *);  // exported (id=0xb0cc0105)
100     NV_STATUS (*__profilerBaseCtrlCmdFreePmaStream__)(struct ProfilerBase * /*this*/, NVB0CC_CTRL_FREE_PMA_STREAM_PARAMS *);  // exported (id=0xb0cc0106)
101     NV_STATUS (*__profilerBaseCtrlCmdInternalFreePmaStream__)(struct ProfilerBase * /*this*/, NVB0CC_CTRL_INTERNAL_FREE_PMA_STREAM_PARAMS *);  // halified (2 hals) exported (id=0xb0cc0206) body
102     NV_STATUS (*__profilerBaseCtrlCmdInternalGetMaxPmas__)(struct ProfilerBase * /*this*/, NVB0CC_CTRL_INTERNAL_GET_MAX_PMAS_PARAMS *);  // exported (id=0xb0cc0207)
103     NV_STATUS (*__profilerBaseCtrlCmdBindPmResources__)(struct ProfilerBase * /*this*/);  // exported (id=0xb0cc0107)
104     NV_STATUS (*__profilerBaseCtrlCmdUnbindPmResources__)(struct ProfilerBase * /*this*/);  // halified (2 hals) exported (id=0xb0cc0108) body
105     NV_STATUS (*__profilerBaseCtrlCmdInternalBindPmResources__)(struct ProfilerBase * /*this*/);  // exported (id=0xb0cc0208)
106     NV_STATUS (*__profilerBaseCtrlCmdInternalUnbindPmResources__)(struct ProfilerBase * /*this*/);  // exported (id=0xb0cc0209)
107     NV_STATUS (*__profilerBaseCtrlCmdPmaStreamUpdateGetPut__)(struct ProfilerBase * /*this*/, NVB0CC_CTRL_PMA_STREAM_UPDATE_GET_PUT_PARAMS *);  // halified (2 hals) exported (id=0xb0cc0109) body
108     NV_STATUS (*__profilerBaseCtrlCmdExecRegops__)(struct ProfilerBase * /*this*/, NVB0CC_CTRL_EXEC_REG_OPS_PARAMS *);  // exported (id=0xb0cc010a)
109     NV_STATUS (*__profilerBaseCtrlCmdInternalAllocPmaStream__)(struct ProfilerBase * /*this*/, NVB0CC_CTRL_INTERNAL_ALLOC_PMA_STREAM_PARAMS *);  // halified (2 hals) exported (id=0xb0cc0204) body
110     NV_STATUS (*__profilerBaseCtrlCmdInternalQuiescePmaChannel__)(struct ProfilerBase * /*this*/, NVB0CC_CTRL_INTERNAL_QUIESCE_PMA_CHANNEL_PARAMS *);  // exported (id=0xb0cc0201)
111     NV_STATUS (*__profilerBaseCtrlCmdInternalSriovPromotePmaStream__)(struct ProfilerBase * /*this*/, NVB0CC_CTRL_INTERNAL_SRIOV_PROMOTE_PMA_STREAM_PARAMS *);  // halified (2 hals) exported (id=0xb0cc0202) body
112     NV_STATUS (*__profilerBaseCtrlCmdInternalPermissionsInit__)(struct ProfilerBase * /*this*/, NVB0CC_CTRL_INTERNAL_PERMISSIONS_INIT_PARAMS *);  // exported (id=0xb0cc0203)
113     NV_STATUS (*__profilerBaseCtrlCmdReservePmAreaPcSampler__)(struct ProfilerBase * /*this*/);  // exported (id=0xb0cc010b)
114     NV_STATUS (*__profilerBaseCtrlCmdReleasePmAreaPcSampler__)(struct ProfilerBase * /*this*/);  // exported (id=0xb0cc010c)
115     NV_STATUS (*__profilerBaseCtrlCmdGetTotalHsCredits__)(struct ProfilerBase * /*this*/, NVB0CC_CTRL_GET_TOTAL_HS_CREDITS_PARAMS *);  // exported (id=0xb0cc010d)
116     NV_STATUS (*__profilerBaseCtrlCmdGetChipletHsCredits__)(struct ProfilerBase * /*this*/, NVB0CC_CTRL_GET_CHIPLET_HS_CREDIT_POOL *);  // exported (id=0xb0cc0115)
117     NV_STATUS (*__profilerBaseCtrlCmdGetHsCreditsMapping__)(struct ProfilerBase * /*this*/, NVB0CC_CTRL_GET_HS_CREDITS_POOL_MAPPING_PARAMS *);  // exported (id=0xb0cc0116)
118     NV_STATUS (*__profilerBaseCtrlCmdGetHsCredits__)(struct ProfilerBase * /*this*/, NVB0CC_CTRL_GET_HS_CREDITS_PARAMS *);  // exported (id=0xb0cc010f)
119     NV_STATUS (*__profilerBaseCtrlCmdSetHsCredits__)(struct ProfilerBase * /*this*/, NVB0CC_CTRL_SET_HS_CREDITS_PARAMS *);  // exported (id=0xb0cc010e)
120     NV_STATUS (*__profilerBaseCtrlCmdReserveHes__)(struct ProfilerBase * /*this*/, NVB0CC_CTRL_RESERVE_HES_PARAMS *);  // exported (id=0xb0cc0113)
121     NV_STATUS (*__profilerBaseCtrlCmdReleaseHes__)(struct ProfilerBase * /*this*/, NVB0CC_CTRL_RELEASE_HES_PARAMS *);  // exported (id=0xb0cc0114)
122     NV_STATUS (*__profilerBaseCtrlCmdRequestCgControls__)(struct ProfilerBase * /*this*/, NVB0CC_CTRL_POWER_REQUEST_FEATURES_PARAMS *);  // halified (2 hals) exported (id=0xb0cc0301) body
123     NV_STATUS (*__profilerBaseCtrlCmdReleaseCgControls__)(struct ProfilerBase * /*this*/, NVB0CC_CTRL_POWER_RELEASE_FEATURES_PARAMS *);  // halified (2 hals) exported (id=0xb0cc0302) body
124     NV_STATUS (*__profilerBaseCtrlCmdDisableDynamicMMABoost__)(struct ProfilerBase * /*this*/, NVB0CC_CTRL_DISABLE_DYNAMIC_MMA_BOOST_PARAMS *);  // exported (id=0xb0cc0117)
125     NV_STATUS (*__profilerBaseCtrlCmdGetDynamicMMABoostStatus__)(struct ProfilerBase * /*this*/, NVB0CC_CTRL_GET_DYNAMIC_MMA_BOOST_STATUS_PARAMS *);  // exported (id=0xb0cc0118)
126     NV_STATUS (*__profilerBaseControl__)(struct ProfilerBase * /*this*/, struct CALL_CONTEXT *, struct RS_RES_CONTROL_PARAMS_INTERNAL *);  // virtual inherited (gpures) base (gpures)
127     NV_STATUS (*__profilerBaseMap__)(struct ProfilerBase * /*this*/, struct CALL_CONTEXT *, struct RS_CPU_MAP_PARAMS *, struct RsCpuMapping *);  // virtual inherited (gpures) base (gpures)
128     NV_STATUS (*__profilerBaseUnmap__)(struct ProfilerBase * /*this*/, struct CALL_CONTEXT *, struct RsCpuMapping *);  // virtual inherited (gpures) base (gpures)
129     NvBool (*__profilerBaseShareCallback__)(struct ProfilerBase * /*this*/, struct RsClient *, struct RsResourceRef *, RS_SHARE_POLICY *);  // virtual inherited (gpures) base (gpures)
130     NV_STATUS (*__profilerBaseGetRegBaseOffsetAndSize__)(struct ProfilerBase * /*this*/, struct OBJGPU *, NvU32 *, NvU32 *);  // virtual inherited (gpures) base (gpures)
131     NV_STATUS (*__profilerBaseGetMapAddrSpace__)(struct ProfilerBase * /*this*/, struct CALL_CONTEXT *, NvU32, NV_ADDRESS_SPACE *);  // virtual inherited (gpures) base (gpures)
132     NV_STATUS (*__profilerBaseInternalControlForward__)(struct ProfilerBase * /*this*/, NvU32, void *, NvU32);  // virtual inherited (gpures) base (gpures)
133     NvHandle (*__profilerBaseGetInternalObjectHandle__)(struct ProfilerBase * /*this*/);  // virtual inherited (gpures) base (gpures)
134     NvBool (*__profilerBaseAccessCallback__)(struct ProfilerBase * /*this*/, struct RsClient *, void *, RsAccessRight);  // virtual inherited (rmres) base (gpures)
135     NV_STATUS (*__profilerBaseGetMemInterMapParams__)(struct ProfilerBase * /*this*/, RMRES_MEM_INTER_MAP_PARAMS *);  // virtual inherited (rmres) base (gpures)
136     NV_STATUS (*__profilerBaseCheckMemInterUnmap__)(struct ProfilerBase * /*this*/, NvBool);  // virtual inherited (rmres) base (gpures)
137     NV_STATUS (*__profilerBaseGetMemoryMappingDescriptor__)(struct ProfilerBase * /*this*/, struct MEMORY_DESCRIPTOR **);  // virtual inherited (rmres) base (gpures)
138     NV_STATUS (*__profilerBaseControlSerialization_Prologue__)(struct ProfilerBase * /*this*/, struct CALL_CONTEXT *, struct RS_RES_CONTROL_PARAMS_INTERNAL *);  // virtual inherited (rmres) base (gpures)
139     void (*__profilerBaseControlSerialization_Epilogue__)(struct ProfilerBase * /*this*/, struct CALL_CONTEXT *, struct RS_RES_CONTROL_PARAMS_INTERNAL *);  // virtual inherited (rmres) base (gpures)
140     NV_STATUS (*__profilerBaseControl_Prologue__)(struct ProfilerBase * /*this*/, struct CALL_CONTEXT *, struct RS_RES_CONTROL_PARAMS_INTERNAL *);  // virtual inherited (rmres) base (gpures)
141     void (*__profilerBaseControl_Epilogue__)(struct ProfilerBase * /*this*/, struct CALL_CONTEXT *, struct RS_RES_CONTROL_PARAMS_INTERNAL *);  // virtual inherited (rmres) base (gpures)
142     NvBool (*__profilerBaseCanCopy__)(struct ProfilerBase * /*this*/);  // virtual inherited (res) base (gpures)
143     NV_STATUS (*__profilerBaseIsDuplicate__)(struct ProfilerBase * /*this*/, NvHandle, NvBool *);  // virtual inherited (res) base (gpures)
144     void (*__profilerBasePreDestruct__)(struct ProfilerBase * /*this*/);  // virtual inherited (res) base (gpures)
145     NV_STATUS (*__profilerBaseControlFilter__)(struct ProfilerBase * /*this*/, struct CALL_CONTEXT *, struct RS_RES_CONTROL_PARAMS_INTERNAL *);  // virtual inherited (res) base (gpures)
146     NvBool (*__profilerBaseIsPartialUnmapSupported__)(struct ProfilerBase * /*this*/);  // inline virtual inherited (res) base (gpures) body
147     NV_STATUS (*__profilerBaseMapTo__)(struct ProfilerBase * /*this*/, RS_RES_MAP_TO_PARAMS *);  // virtual inherited (res) base (gpures)
148     NV_STATUS (*__profilerBaseUnmapFrom__)(struct ProfilerBase * /*this*/, RS_RES_UNMAP_FROM_PARAMS *);  // virtual inherited (res) base (gpures)
149     NvU32 (*__profilerBaseGetRefCount__)(struct ProfilerBase * /*this*/);  // virtual inherited (res) base (gpures)
150     void (*__profilerBaseAddAdditionalDependants__)(struct RsClient *, struct ProfilerBase * /*this*/, RsResourceRef *);  // virtual inherited (res) base (gpures)
151 
152     // Data members
153     NvU32 maxPmaChannels;
154     NvU32 pmaVchIdx;
155     NvBool bLegacyHwpm;
156     struct RsResourceRef **ppBytesAvailable;
157     struct RsResourceRef **ppStreamBuffers;
158     struct RsResourceRef *pBoundCntBuf;
159     struct RsResourceRef *pBoundPmaBuf;
160     NvU64 profilerId;
161     HWPM_PMA_STREAM *pPmaStreamList;
162     NvBool *pBindPointAllocated;
163     NvBool bMmaBoostDisabled;
164     NvHandle hSubDevice;
165 };
166 
167 #ifndef __NVOC_CLASS_ProfilerBase_TYPEDEF__
168 #define __NVOC_CLASS_ProfilerBase_TYPEDEF__
169 typedef struct ProfilerBase ProfilerBase;
170 #endif /* __NVOC_CLASS_ProfilerBase_TYPEDEF__ */
171 
172 #ifndef __nvoc_class_id_ProfilerBase
173 #define __nvoc_class_id_ProfilerBase 0x4976fc
174 #endif /* __nvoc_class_id_ProfilerBase */
175 
176 // Casting support
177 extern const struct NVOC_CLASS_DEF __nvoc_class_def_ProfilerBase;
178 
179 #define __staticCast_ProfilerBase(pThis) \
180     ((pThis)->__nvoc_pbase_ProfilerBase)
181 
182 #ifdef __nvoc_profiler_v2_h_disabled
183 #define __dynamicCast_ProfilerBase(pThis) ((ProfilerBase*)NULL)
184 #else //__nvoc_profiler_v2_h_disabled
185 #define __dynamicCast_ProfilerBase(pThis) \
186     ((ProfilerBase*)__nvoc_dynamicCast(staticCast((pThis), Dynamic), classInfo(ProfilerBase)))
187 #endif //__nvoc_profiler_v2_h_disabled
188 
189 NV_STATUS __nvoc_objCreateDynamic_ProfilerBase(ProfilerBase**, Dynamic*, NvU32, va_list);
190 
191 NV_STATUS __nvoc_objCreate_ProfilerBase(ProfilerBase**, Dynamic*, NvU32, CALL_CONTEXT * arg_pCallContext, struct RS_RES_ALLOC_PARAMS_INTERNAL * arg_pParams);
192 #define __objCreate_ProfilerBase(ppNewObj, pParent, createFlags, arg_pCallContext, arg_pParams) \
193     __nvoc_objCreate_ProfilerBase((ppNewObj), staticCast((pParent), Dynamic), (createFlags), arg_pCallContext, arg_pParams)
194 
195 
196 // Wrapper macros
197 #define profilerBaseConstructState_FNPTR(pProf) pProf->__profilerBaseConstructState__
198 #define profilerBaseConstructState(pProf, pCallContext, pParams) profilerBaseConstructState_DISPATCH(pProf, pCallContext, pParams)
199 #define profilerBaseConstructState_HAL(pProf, pCallContext, pParams) profilerBaseConstructState_DISPATCH(pProf, pCallContext, pParams)
200 #define profilerBaseDestructState_FNPTR(pProf) pProf->__profilerBaseDestructState__
201 #define profilerBaseDestructState(pProf) profilerBaseDestructState_DISPATCH(pProf)
202 #define profilerBaseDestructState_HAL(pProf) profilerBaseDestructState_DISPATCH(pProf)
203 #define profilerBaseCtrlCmdReserveHwpmLegacy_FNPTR(pProfiler) pProfiler->__profilerBaseCtrlCmdReserveHwpmLegacy__
204 #define profilerBaseCtrlCmdReserveHwpmLegacy(pProfiler, pParams) profilerBaseCtrlCmdReserveHwpmLegacy_DISPATCH(pProfiler, pParams)
205 #define profilerBaseCtrlCmdInternalReserveHwpmLegacy_FNPTR(pProfiler) pProfiler->__profilerBaseCtrlCmdInternalReserveHwpmLegacy__
206 #define profilerBaseCtrlCmdInternalReserveHwpmLegacy(pProfiler, pParams) profilerBaseCtrlCmdInternalReserveHwpmLegacy_DISPATCH(pProfiler, pParams)
207 #define profilerBaseCtrlCmdReleaseHwpmLegacy_FNPTR(pProfiler) pProfiler->__profilerBaseCtrlCmdReleaseHwpmLegacy__
208 #define profilerBaseCtrlCmdReleaseHwpmLegacy(pProfiler) profilerBaseCtrlCmdReleaseHwpmLegacy_DISPATCH(pProfiler)
209 #define profilerBaseCtrlCmdReservePmAreaSmpc_FNPTR(pProfiler) pProfiler->__profilerBaseCtrlCmdReservePmAreaSmpc__
210 #define profilerBaseCtrlCmdReservePmAreaSmpc(pProfiler, pParams) profilerBaseCtrlCmdReservePmAreaSmpc_DISPATCH(pProfiler, pParams)
211 #define profilerBaseCtrlCmdReleasePmAreaSmpc_FNPTR(pProfiler) pProfiler->__profilerBaseCtrlCmdReleasePmAreaSmpc__
212 #define profilerBaseCtrlCmdReleasePmAreaSmpc(pProfiler) profilerBaseCtrlCmdReleasePmAreaSmpc_DISPATCH(pProfiler)
213 #define profilerBaseCtrlCmdAllocPmaStream_FNPTR(pProfiler) pProfiler->__profilerBaseCtrlCmdAllocPmaStream__
214 #define profilerBaseCtrlCmdAllocPmaStream(pProfiler, pParams) profilerBaseCtrlCmdAllocPmaStream_DISPATCH(pProfiler, pParams)
215 #define profilerBaseCtrlCmdFreePmaStream_FNPTR(pProfiler) pProfiler->__profilerBaseCtrlCmdFreePmaStream__
216 #define profilerBaseCtrlCmdFreePmaStream(pProfiler, pParams) profilerBaseCtrlCmdFreePmaStream_DISPATCH(pProfiler, pParams)
217 #define profilerBaseCtrlCmdInternalFreePmaStream_FNPTR(pProfiler) pProfiler->__profilerBaseCtrlCmdInternalFreePmaStream__
218 #define profilerBaseCtrlCmdInternalFreePmaStream(pProfiler, pParams) profilerBaseCtrlCmdInternalFreePmaStream_DISPATCH(pProfiler, pParams)
219 #define profilerBaseCtrlCmdInternalFreePmaStream_HAL(pProfiler, pParams) profilerBaseCtrlCmdInternalFreePmaStream_DISPATCH(pProfiler, pParams)
220 #define profilerBaseCtrlCmdInternalGetMaxPmas_FNPTR(pProfiler) pProfiler->__profilerBaseCtrlCmdInternalGetMaxPmas__
221 #define profilerBaseCtrlCmdInternalGetMaxPmas(pProfiler, pParams) profilerBaseCtrlCmdInternalGetMaxPmas_DISPATCH(pProfiler, pParams)
222 #define profilerBaseCtrlCmdBindPmResources_FNPTR(pProfiler) pProfiler->__profilerBaseCtrlCmdBindPmResources__
223 #define profilerBaseCtrlCmdBindPmResources(pProfiler) profilerBaseCtrlCmdBindPmResources_DISPATCH(pProfiler)
224 #define profilerBaseCtrlCmdUnbindPmResources_FNPTR(pProfiler) pProfiler->__profilerBaseCtrlCmdUnbindPmResources__
225 #define profilerBaseCtrlCmdUnbindPmResources(pProfiler) profilerBaseCtrlCmdUnbindPmResources_DISPATCH(pProfiler)
226 #define profilerBaseCtrlCmdUnbindPmResources_HAL(pProfiler) profilerBaseCtrlCmdUnbindPmResources_DISPATCH(pProfiler)
227 #define profilerBaseCtrlCmdInternalBindPmResources_FNPTR(pProfiler) pProfiler->__profilerBaseCtrlCmdInternalBindPmResources__
228 #define profilerBaseCtrlCmdInternalBindPmResources(pProfiler) profilerBaseCtrlCmdInternalBindPmResources_DISPATCH(pProfiler)
229 #define profilerBaseCtrlCmdInternalUnbindPmResources_FNPTR(pProfiler) pProfiler->__profilerBaseCtrlCmdInternalUnbindPmResources__
230 #define profilerBaseCtrlCmdInternalUnbindPmResources(pProfiler) profilerBaseCtrlCmdInternalUnbindPmResources_DISPATCH(pProfiler)
231 #define profilerBaseCtrlCmdPmaStreamUpdateGetPut_FNPTR(pProfiler) pProfiler->__profilerBaseCtrlCmdPmaStreamUpdateGetPut__
232 #define profilerBaseCtrlCmdPmaStreamUpdateGetPut(pProfiler, pParams) profilerBaseCtrlCmdPmaStreamUpdateGetPut_DISPATCH(pProfiler, pParams)
233 #define profilerBaseCtrlCmdPmaStreamUpdateGetPut_HAL(pProfiler, pParams) profilerBaseCtrlCmdPmaStreamUpdateGetPut_DISPATCH(pProfiler, pParams)
234 #define profilerBaseCtrlCmdExecRegops_FNPTR(pProfiler) pProfiler->__profilerBaseCtrlCmdExecRegops__
235 #define profilerBaseCtrlCmdExecRegops(pProfiler, pParams) profilerBaseCtrlCmdExecRegops_DISPATCH(pProfiler, pParams)
236 #define profilerBaseCtrlCmdInternalAllocPmaStream_FNPTR(pProfiler) pProfiler->__profilerBaseCtrlCmdInternalAllocPmaStream__
237 #define profilerBaseCtrlCmdInternalAllocPmaStream(pProfiler, pParams) profilerBaseCtrlCmdInternalAllocPmaStream_DISPATCH(pProfiler, pParams)
238 #define profilerBaseCtrlCmdInternalAllocPmaStream_HAL(pProfiler, pParams) profilerBaseCtrlCmdInternalAllocPmaStream_DISPATCH(pProfiler, pParams)
239 #define profilerBaseCtrlCmdInternalQuiescePmaChannel_FNPTR(pProfiler) pProfiler->__profilerBaseCtrlCmdInternalQuiescePmaChannel__
240 #define profilerBaseCtrlCmdInternalQuiescePmaChannel(pProfiler, pParams) profilerBaseCtrlCmdInternalQuiescePmaChannel_DISPATCH(pProfiler, pParams)
241 #define profilerBaseCtrlCmdInternalSriovPromotePmaStream_FNPTR(pProfiler) pProfiler->__profilerBaseCtrlCmdInternalSriovPromotePmaStream__
242 #define profilerBaseCtrlCmdInternalSriovPromotePmaStream(pProfiler, pParams) profilerBaseCtrlCmdInternalSriovPromotePmaStream_DISPATCH(pProfiler, pParams)
243 #define profilerBaseCtrlCmdInternalSriovPromotePmaStream_HAL(pProfiler, pParams) profilerBaseCtrlCmdInternalSriovPromotePmaStream_DISPATCH(pProfiler, pParams)
244 #define profilerBaseCtrlCmdInternalPermissionsInit_FNPTR(pProfiler) pProfiler->__profilerBaseCtrlCmdInternalPermissionsInit__
245 #define profilerBaseCtrlCmdInternalPermissionsInit(pProfiler, pParams) profilerBaseCtrlCmdInternalPermissionsInit_DISPATCH(pProfiler, pParams)
246 #define profilerBaseCtrlCmdReservePmAreaPcSampler_FNPTR(pProfiler) pProfiler->__profilerBaseCtrlCmdReservePmAreaPcSampler__
247 #define profilerBaseCtrlCmdReservePmAreaPcSampler(pProfiler) profilerBaseCtrlCmdReservePmAreaPcSampler_DISPATCH(pProfiler)
248 #define profilerBaseCtrlCmdReleasePmAreaPcSampler_FNPTR(pProfiler) pProfiler->__profilerBaseCtrlCmdReleasePmAreaPcSampler__
249 #define profilerBaseCtrlCmdReleasePmAreaPcSampler(pProfiler) profilerBaseCtrlCmdReleasePmAreaPcSampler_DISPATCH(pProfiler)
250 #define profilerBaseCtrlCmdGetTotalHsCredits_FNPTR(pProfiler) pProfiler->__profilerBaseCtrlCmdGetTotalHsCredits__
251 #define profilerBaseCtrlCmdGetTotalHsCredits(pProfiler, pParams) profilerBaseCtrlCmdGetTotalHsCredits_DISPATCH(pProfiler, pParams)
252 #define profilerBaseCtrlCmdGetChipletHsCredits_FNPTR(pProfiler) pProfiler->__profilerBaseCtrlCmdGetChipletHsCredits__
253 #define profilerBaseCtrlCmdGetChipletHsCredits(pProfiler, pParams) profilerBaseCtrlCmdGetChipletHsCredits_DISPATCH(pProfiler, pParams)
254 #define profilerBaseCtrlCmdGetHsCreditsMapping_FNPTR(pProfiler) pProfiler->__profilerBaseCtrlCmdGetHsCreditsMapping__
255 #define profilerBaseCtrlCmdGetHsCreditsMapping(pProfiler, pParams) profilerBaseCtrlCmdGetHsCreditsMapping_DISPATCH(pProfiler, pParams)
256 #define profilerBaseCtrlCmdGetHsCredits_FNPTR(pProfiler) pProfiler->__profilerBaseCtrlCmdGetHsCredits__
257 #define profilerBaseCtrlCmdGetHsCredits(pProfiler, pParams) profilerBaseCtrlCmdGetHsCredits_DISPATCH(pProfiler, pParams)
258 #define profilerBaseCtrlCmdSetHsCredits_FNPTR(pProfiler) pProfiler->__profilerBaseCtrlCmdSetHsCredits__
259 #define profilerBaseCtrlCmdSetHsCredits(pProfiler, pParams) profilerBaseCtrlCmdSetHsCredits_DISPATCH(pProfiler, pParams)
260 #define profilerBaseCtrlCmdReserveHes_FNPTR(pProfiler) pProfiler->__profilerBaseCtrlCmdReserveHes__
261 #define profilerBaseCtrlCmdReserveHes(pProfiler, pParams) profilerBaseCtrlCmdReserveHes_DISPATCH(pProfiler, pParams)
262 #define profilerBaseCtrlCmdReleaseHes_FNPTR(pProfiler) pProfiler->__profilerBaseCtrlCmdReleaseHes__
263 #define profilerBaseCtrlCmdReleaseHes(pProfiler, pParams) profilerBaseCtrlCmdReleaseHes_DISPATCH(pProfiler, pParams)
264 #define profilerBaseCtrlCmdRequestCgControls_FNPTR(pProfiler) pProfiler->__profilerBaseCtrlCmdRequestCgControls__
265 #define profilerBaseCtrlCmdRequestCgControls(pProfiler, pParams) profilerBaseCtrlCmdRequestCgControls_DISPATCH(pProfiler, pParams)
266 #define profilerBaseCtrlCmdRequestCgControls_HAL(pProfiler, pParams) profilerBaseCtrlCmdRequestCgControls_DISPATCH(pProfiler, pParams)
267 #define profilerBaseCtrlCmdReleaseCgControls_FNPTR(pProfiler) pProfiler->__profilerBaseCtrlCmdReleaseCgControls__
268 #define profilerBaseCtrlCmdReleaseCgControls(pProfiler, pParams) profilerBaseCtrlCmdReleaseCgControls_DISPATCH(pProfiler, pParams)
269 #define profilerBaseCtrlCmdReleaseCgControls_HAL(pProfiler, pParams) profilerBaseCtrlCmdReleaseCgControls_DISPATCH(pProfiler, pParams)
270 #define profilerBaseCtrlCmdDisableDynamicMMABoost_FNPTR(pProfiler) pProfiler->__profilerBaseCtrlCmdDisableDynamicMMABoost__
271 #define profilerBaseCtrlCmdDisableDynamicMMABoost(pProfiler, pParams) profilerBaseCtrlCmdDisableDynamicMMABoost_DISPATCH(pProfiler, pParams)
272 #define profilerBaseCtrlCmdGetDynamicMMABoostStatus_FNPTR(pProfiler) pProfiler->__profilerBaseCtrlCmdGetDynamicMMABoostStatus__
273 #define profilerBaseCtrlCmdGetDynamicMMABoostStatus(pProfiler, pParams) profilerBaseCtrlCmdGetDynamicMMABoostStatus_DISPATCH(pProfiler, pParams)
274 #define profilerBaseControl_FNPTR(pGpuResource) pGpuResource->__nvoc_base_GpuResource.__gpuresControl__
275 #define profilerBaseControl(pGpuResource, pCallContext, pParams) profilerBaseControl_DISPATCH(pGpuResource, pCallContext, pParams)
276 #define profilerBaseMap_FNPTR(pGpuResource) pGpuResource->__nvoc_base_GpuResource.__gpuresMap__
277 #define profilerBaseMap(pGpuResource, pCallContext, pParams, pCpuMapping) profilerBaseMap_DISPATCH(pGpuResource, pCallContext, pParams, pCpuMapping)
278 #define profilerBaseUnmap_FNPTR(pGpuResource) pGpuResource->__nvoc_base_GpuResource.__gpuresUnmap__
279 #define profilerBaseUnmap(pGpuResource, pCallContext, pCpuMapping) profilerBaseUnmap_DISPATCH(pGpuResource, pCallContext, pCpuMapping)
280 #define profilerBaseShareCallback_FNPTR(pGpuResource) pGpuResource->__nvoc_base_GpuResource.__gpuresShareCallback__
281 #define profilerBaseShareCallback(pGpuResource, pInvokingClient, pParentRef, pSharePolicy) profilerBaseShareCallback_DISPATCH(pGpuResource, pInvokingClient, pParentRef, pSharePolicy)
282 #define profilerBaseGetRegBaseOffsetAndSize_FNPTR(pGpuResource) pGpuResource->__nvoc_base_GpuResource.__gpuresGetRegBaseOffsetAndSize__
283 #define profilerBaseGetRegBaseOffsetAndSize(pGpuResource, pGpu, pOffset, pSize) profilerBaseGetRegBaseOffsetAndSize_DISPATCH(pGpuResource, pGpu, pOffset, pSize)
284 #define profilerBaseGetMapAddrSpace_FNPTR(pGpuResource) pGpuResource->__nvoc_base_GpuResource.__gpuresGetMapAddrSpace__
285 #define profilerBaseGetMapAddrSpace(pGpuResource, pCallContext, mapFlags, pAddrSpace) profilerBaseGetMapAddrSpace_DISPATCH(pGpuResource, pCallContext, mapFlags, pAddrSpace)
286 #define profilerBaseInternalControlForward_FNPTR(pGpuResource) pGpuResource->__nvoc_base_GpuResource.__gpuresInternalControlForward__
287 #define profilerBaseInternalControlForward(pGpuResource, command, pParams, size) profilerBaseInternalControlForward_DISPATCH(pGpuResource, command, pParams, size)
288 #define profilerBaseGetInternalObjectHandle_FNPTR(pGpuResource) pGpuResource->__nvoc_base_GpuResource.__gpuresGetInternalObjectHandle__
289 #define profilerBaseGetInternalObjectHandle(pGpuResource) profilerBaseGetInternalObjectHandle_DISPATCH(pGpuResource)
290 #define profilerBaseAccessCallback_FNPTR(pResource) pResource->__nvoc_base_GpuResource.__nvoc_base_RmResource.__rmresAccessCallback__
291 #define profilerBaseAccessCallback(pResource, pInvokingClient, pAllocParams, accessRight) profilerBaseAccessCallback_DISPATCH(pResource, pInvokingClient, pAllocParams, accessRight)
292 #define profilerBaseGetMemInterMapParams_FNPTR(pRmResource) pRmResource->__nvoc_base_GpuResource.__nvoc_base_RmResource.__rmresGetMemInterMapParams__
293 #define profilerBaseGetMemInterMapParams(pRmResource, pParams) profilerBaseGetMemInterMapParams_DISPATCH(pRmResource, pParams)
294 #define profilerBaseCheckMemInterUnmap_FNPTR(pRmResource) pRmResource->__nvoc_base_GpuResource.__nvoc_base_RmResource.__rmresCheckMemInterUnmap__
295 #define profilerBaseCheckMemInterUnmap(pRmResource, bSubdeviceHandleProvided) profilerBaseCheckMemInterUnmap_DISPATCH(pRmResource, bSubdeviceHandleProvided)
296 #define profilerBaseGetMemoryMappingDescriptor_FNPTR(pRmResource) pRmResource->__nvoc_base_GpuResource.__nvoc_base_RmResource.__rmresGetMemoryMappingDescriptor__
297 #define profilerBaseGetMemoryMappingDescriptor(pRmResource, ppMemDesc) profilerBaseGetMemoryMappingDescriptor_DISPATCH(pRmResource, ppMemDesc)
298 #define profilerBaseControlSerialization_Prologue_FNPTR(pResource) pResource->__nvoc_base_GpuResource.__nvoc_base_RmResource.__rmresControlSerialization_Prologue__
299 #define profilerBaseControlSerialization_Prologue(pResource, pCallContext, pParams) profilerBaseControlSerialization_Prologue_DISPATCH(pResource, pCallContext, pParams)
300 #define profilerBaseControlSerialization_Epilogue_FNPTR(pResource) pResource->__nvoc_base_GpuResource.__nvoc_base_RmResource.__rmresControlSerialization_Epilogue__
301 #define profilerBaseControlSerialization_Epilogue(pResource, pCallContext, pParams) profilerBaseControlSerialization_Epilogue_DISPATCH(pResource, pCallContext, pParams)
302 #define profilerBaseControl_Prologue_FNPTR(pResource) pResource->__nvoc_base_GpuResource.__nvoc_base_RmResource.__rmresControl_Prologue__
303 #define profilerBaseControl_Prologue(pResource, pCallContext, pParams) profilerBaseControl_Prologue_DISPATCH(pResource, pCallContext, pParams)
304 #define profilerBaseControl_Epilogue_FNPTR(pResource) pResource->__nvoc_base_GpuResource.__nvoc_base_RmResource.__rmresControl_Epilogue__
305 #define profilerBaseControl_Epilogue(pResource, pCallContext, pParams) profilerBaseControl_Epilogue_DISPATCH(pResource, pCallContext, pParams)
306 #define profilerBaseCanCopy_FNPTR(pResource) pResource->__nvoc_base_GpuResource.__nvoc_base_RmResource.__nvoc_base_RsResource.__resCanCopy__
307 #define profilerBaseCanCopy(pResource) profilerBaseCanCopy_DISPATCH(pResource)
308 #define profilerBaseIsDuplicate_FNPTR(pResource) pResource->__nvoc_base_GpuResource.__nvoc_base_RmResource.__nvoc_base_RsResource.__resIsDuplicate__
309 #define profilerBaseIsDuplicate(pResource, hMemory, pDuplicate) profilerBaseIsDuplicate_DISPATCH(pResource, hMemory, pDuplicate)
310 #define profilerBasePreDestruct_FNPTR(pResource) pResource->__nvoc_base_GpuResource.__nvoc_base_RmResource.__nvoc_base_RsResource.__resPreDestruct__
311 #define profilerBasePreDestruct(pResource) profilerBasePreDestruct_DISPATCH(pResource)
312 #define profilerBaseControlFilter_FNPTR(pResource) pResource->__nvoc_base_GpuResource.__nvoc_base_RmResource.__nvoc_base_RsResource.__resControlFilter__
313 #define profilerBaseControlFilter(pResource, pCallContext, pParams) profilerBaseControlFilter_DISPATCH(pResource, pCallContext, pParams)
314 #define profilerBaseIsPartialUnmapSupported_FNPTR(pResource) pResource->__nvoc_base_GpuResource.__nvoc_base_RmResource.__nvoc_base_RsResource.__resIsPartialUnmapSupported__
315 #define profilerBaseIsPartialUnmapSupported(pResource) profilerBaseIsPartialUnmapSupported_DISPATCH(pResource)
316 #define profilerBaseMapTo_FNPTR(pResource) pResource->__nvoc_base_GpuResource.__nvoc_base_RmResource.__nvoc_base_RsResource.__resMapTo__
317 #define profilerBaseMapTo(pResource, pParams) profilerBaseMapTo_DISPATCH(pResource, pParams)
318 #define profilerBaseUnmapFrom_FNPTR(pResource) pResource->__nvoc_base_GpuResource.__nvoc_base_RmResource.__nvoc_base_RsResource.__resUnmapFrom__
319 #define profilerBaseUnmapFrom(pResource, pParams) profilerBaseUnmapFrom_DISPATCH(pResource, pParams)
320 #define profilerBaseGetRefCount_FNPTR(pResource) pResource->__nvoc_base_GpuResource.__nvoc_base_RmResource.__nvoc_base_RsResource.__resGetRefCount__
321 #define profilerBaseGetRefCount(pResource) profilerBaseGetRefCount_DISPATCH(pResource)
322 #define profilerBaseAddAdditionalDependants_FNPTR(pResource) pResource->__nvoc_base_GpuResource.__nvoc_base_RmResource.__nvoc_base_RsResource.__resAddAdditionalDependants__
323 #define profilerBaseAddAdditionalDependants(pClient, pResource, pReference) profilerBaseAddAdditionalDependants_DISPATCH(pClient, pResource, pReference)
324 
325 // Dispatch functions
profilerBaseConstructState_DISPATCH(struct ProfilerBase * pProf,CALL_CONTEXT * pCallContext,struct RS_RES_ALLOC_PARAMS_INTERNAL * pParams)326 static inline NV_STATUS profilerBaseConstructState_DISPATCH(struct ProfilerBase *pProf, CALL_CONTEXT *pCallContext, struct RS_RES_ALLOC_PARAMS_INTERNAL *pParams) {
327     return pProf->__profilerBaseConstructState__(pProf, pCallContext, pParams);
328 }
329 
profilerBaseDestructState_DISPATCH(struct ProfilerBase * pProf)330 static inline void profilerBaseDestructState_DISPATCH(struct ProfilerBase *pProf) {
331     pProf->__profilerBaseDestructState__(pProf);
332 }
333 
profilerBaseCtrlCmdReserveHwpmLegacy_DISPATCH(struct ProfilerBase * pProfiler,NVB0CC_CTRL_RESERVE_HWPM_LEGACY_PARAMS * pParams)334 static inline NV_STATUS profilerBaseCtrlCmdReserveHwpmLegacy_DISPATCH(struct ProfilerBase *pProfiler, NVB0CC_CTRL_RESERVE_HWPM_LEGACY_PARAMS *pParams) {
335     return pProfiler->__profilerBaseCtrlCmdReserveHwpmLegacy__(pProfiler, pParams);
336 }
337 
profilerBaseCtrlCmdInternalReserveHwpmLegacy_DISPATCH(struct ProfilerBase * pProfiler,NVB0CC_CTRL_INTERNAL_RESERVE_HWPM_LEGACY_PARAMS * pParams)338 static inline NV_STATUS profilerBaseCtrlCmdInternalReserveHwpmLegacy_DISPATCH(struct ProfilerBase *pProfiler, NVB0CC_CTRL_INTERNAL_RESERVE_HWPM_LEGACY_PARAMS *pParams) {
339     return pProfiler->__profilerBaseCtrlCmdInternalReserveHwpmLegacy__(pProfiler, pParams);
340 }
341 
profilerBaseCtrlCmdReleaseHwpmLegacy_DISPATCH(struct ProfilerBase * pProfiler)342 static inline NV_STATUS profilerBaseCtrlCmdReleaseHwpmLegacy_DISPATCH(struct ProfilerBase *pProfiler) {
343     return pProfiler->__profilerBaseCtrlCmdReleaseHwpmLegacy__(pProfiler);
344 }
345 
profilerBaseCtrlCmdReservePmAreaSmpc_DISPATCH(struct ProfilerBase * pProfiler,NVB0CC_CTRL_RESERVE_PM_AREA_SMPC_PARAMS * pParams)346 static inline NV_STATUS profilerBaseCtrlCmdReservePmAreaSmpc_DISPATCH(struct ProfilerBase *pProfiler, NVB0CC_CTRL_RESERVE_PM_AREA_SMPC_PARAMS *pParams) {
347     return pProfiler->__profilerBaseCtrlCmdReservePmAreaSmpc__(pProfiler, pParams);
348 }
349 
profilerBaseCtrlCmdReleasePmAreaSmpc_DISPATCH(struct ProfilerBase * pProfiler)350 static inline NV_STATUS profilerBaseCtrlCmdReleasePmAreaSmpc_DISPATCH(struct ProfilerBase *pProfiler) {
351     return pProfiler->__profilerBaseCtrlCmdReleasePmAreaSmpc__(pProfiler);
352 }
353 
profilerBaseCtrlCmdAllocPmaStream_DISPATCH(struct ProfilerBase * pProfiler,NVB0CC_CTRL_ALLOC_PMA_STREAM_PARAMS * pParams)354 static inline NV_STATUS profilerBaseCtrlCmdAllocPmaStream_DISPATCH(struct ProfilerBase *pProfiler, NVB0CC_CTRL_ALLOC_PMA_STREAM_PARAMS *pParams) {
355     return pProfiler->__profilerBaseCtrlCmdAllocPmaStream__(pProfiler, pParams);
356 }
357 
profilerBaseCtrlCmdFreePmaStream_DISPATCH(struct ProfilerBase * pProfiler,NVB0CC_CTRL_FREE_PMA_STREAM_PARAMS * pParams)358 static inline NV_STATUS profilerBaseCtrlCmdFreePmaStream_DISPATCH(struct ProfilerBase *pProfiler, NVB0CC_CTRL_FREE_PMA_STREAM_PARAMS *pParams) {
359     return pProfiler->__profilerBaseCtrlCmdFreePmaStream__(pProfiler, pParams);
360 }
361 
profilerBaseCtrlCmdInternalFreePmaStream_DISPATCH(struct ProfilerBase * pProfiler,NVB0CC_CTRL_INTERNAL_FREE_PMA_STREAM_PARAMS * pParams)362 static inline NV_STATUS profilerBaseCtrlCmdInternalFreePmaStream_DISPATCH(struct ProfilerBase *pProfiler, NVB0CC_CTRL_INTERNAL_FREE_PMA_STREAM_PARAMS *pParams) {
363     return pProfiler->__profilerBaseCtrlCmdInternalFreePmaStream__(pProfiler, pParams);
364 }
365 
profilerBaseCtrlCmdInternalGetMaxPmas_DISPATCH(struct ProfilerBase * pProfiler,NVB0CC_CTRL_INTERNAL_GET_MAX_PMAS_PARAMS * pParams)366 static inline NV_STATUS profilerBaseCtrlCmdInternalGetMaxPmas_DISPATCH(struct ProfilerBase *pProfiler, NVB0CC_CTRL_INTERNAL_GET_MAX_PMAS_PARAMS *pParams) {
367     return pProfiler->__profilerBaseCtrlCmdInternalGetMaxPmas__(pProfiler, pParams);
368 }
369 
profilerBaseCtrlCmdBindPmResources_DISPATCH(struct ProfilerBase * pProfiler)370 static inline NV_STATUS profilerBaseCtrlCmdBindPmResources_DISPATCH(struct ProfilerBase *pProfiler) {
371     return pProfiler->__profilerBaseCtrlCmdBindPmResources__(pProfiler);
372 }
373 
profilerBaseCtrlCmdUnbindPmResources_DISPATCH(struct ProfilerBase * pProfiler)374 static inline NV_STATUS profilerBaseCtrlCmdUnbindPmResources_DISPATCH(struct ProfilerBase *pProfiler) {
375     return pProfiler->__profilerBaseCtrlCmdUnbindPmResources__(pProfiler);
376 }
377 
profilerBaseCtrlCmdInternalBindPmResources_DISPATCH(struct ProfilerBase * pProfiler)378 static inline NV_STATUS profilerBaseCtrlCmdInternalBindPmResources_DISPATCH(struct ProfilerBase *pProfiler) {
379     return pProfiler->__profilerBaseCtrlCmdInternalBindPmResources__(pProfiler);
380 }
381 
profilerBaseCtrlCmdInternalUnbindPmResources_DISPATCH(struct ProfilerBase * pProfiler)382 static inline NV_STATUS profilerBaseCtrlCmdInternalUnbindPmResources_DISPATCH(struct ProfilerBase *pProfiler) {
383     return pProfiler->__profilerBaseCtrlCmdInternalUnbindPmResources__(pProfiler);
384 }
385 
profilerBaseCtrlCmdPmaStreamUpdateGetPut_DISPATCH(struct ProfilerBase * pProfiler,NVB0CC_CTRL_PMA_STREAM_UPDATE_GET_PUT_PARAMS * pParams)386 static inline NV_STATUS profilerBaseCtrlCmdPmaStreamUpdateGetPut_DISPATCH(struct ProfilerBase *pProfiler, NVB0CC_CTRL_PMA_STREAM_UPDATE_GET_PUT_PARAMS *pParams) {
387     return pProfiler->__profilerBaseCtrlCmdPmaStreamUpdateGetPut__(pProfiler, pParams);
388 }
389 
profilerBaseCtrlCmdExecRegops_DISPATCH(struct ProfilerBase * pProfiler,NVB0CC_CTRL_EXEC_REG_OPS_PARAMS * pParams)390 static inline NV_STATUS profilerBaseCtrlCmdExecRegops_DISPATCH(struct ProfilerBase *pProfiler, NVB0CC_CTRL_EXEC_REG_OPS_PARAMS *pParams) {
391     return pProfiler->__profilerBaseCtrlCmdExecRegops__(pProfiler, pParams);
392 }
393 
profilerBaseCtrlCmdInternalAllocPmaStream_DISPATCH(struct ProfilerBase * pProfiler,NVB0CC_CTRL_INTERNAL_ALLOC_PMA_STREAM_PARAMS * pParams)394 static inline NV_STATUS profilerBaseCtrlCmdInternalAllocPmaStream_DISPATCH(struct ProfilerBase *pProfiler, NVB0CC_CTRL_INTERNAL_ALLOC_PMA_STREAM_PARAMS *pParams) {
395     return pProfiler->__profilerBaseCtrlCmdInternalAllocPmaStream__(pProfiler, pParams);
396 }
397 
profilerBaseCtrlCmdInternalQuiescePmaChannel_DISPATCH(struct ProfilerBase * pProfiler,NVB0CC_CTRL_INTERNAL_QUIESCE_PMA_CHANNEL_PARAMS * pParams)398 static inline NV_STATUS profilerBaseCtrlCmdInternalQuiescePmaChannel_DISPATCH(struct ProfilerBase *pProfiler, NVB0CC_CTRL_INTERNAL_QUIESCE_PMA_CHANNEL_PARAMS *pParams) {
399     return pProfiler->__profilerBaseCtrlCmdInternalQuiescePmaChannel__(pProfiler, pParams);
400 }
401 
profilerBaseCtrlCmdInternalSriovPromotePmaStream_DISPATCH(struct ProfilerBase * pProfiler,NVB0CC_CTRL_INTERNAL_SRIOV_PROMOTE_PMA_STREAM_PARAMS * pParams)402 static inline NV_STATUS profilerBaseCtrlCmdInternalSriovPromotePmaStream_DISPATCH(struct ProfilerBase *pProfiler, NVB0CC_CTRL_INTERNAL_SRIOV_PROMOTE_PMA_STREAM_PARAMS *pParams) {
403     return pProfiler->__profilerBaseCtrlCmdInternalSriovPromotePmaStream__(pProfiler, pParams);
404 }
405 
profilerBaseCtrlCmdInternalPermissionsInit_DISPATCH(struct ProfilerBase * pProfiler,NVB0CC_CTRL_INTERNAL_PERMISSIONS_INIT_PARAMS * pParams)406 static inline NV_STATUS profilerBaseCtrlCmdInternalPermissionsInit_DISPATCH(struct ProfilerBase *pProfiler, NVB0CC_CTRL_INTERNAL_PERMISSIONS_INIT_PARAMS *pParams) {
407     return pProfiler->__profilerBaseCtrlCmdInternalPermissionsInit__(pProfiler, pParams);
408 }
409 
profilerBaseCtrlCmdReservePmAreaPcSampler_DISPATCH(struct ProfilerBase * pProfiler)410 static inline NV_STATUS profilerBaseCtrlCmdReservePmAreaPcSampler_DISPATCH(struct ProfilerBase *pProfiler) {
411     return pProfiler->__profilerBaseCtrlCmdReservePmAreaPcSampler__(pProfiler);
412 }
413 
profilerBaseCtrlCmdReleasePmAreaPcSampler_DISPATCH(struct ProfilerBase * pProfiler)414 static inline NV_STATUS profilerBaseCtrlCmdReleasePmAreaPcSampler_DISPATCH(struct ProfilerBase *pProfiler) {
415     return pProfiler->__profilerBaseCtrlCmdReleasePmAreaPcSampler__(pProfiler);
416 }
417 
profilerBaseCtrlCmdGetTotalHsCredits_DISPATCH(struct ProfilerBase * pProfiler,NVB0CC_CTRL_GET_TOTAL_HS_CREDITS_PARAMS * pParams)418 static inline NV_STATUS profilerBaseCtrlCmdGetTotalHsCredits_DISPATCH(struct ProfilerBase *pProfiler, NVB0CC_CTRL_GET_TOTAL_HS_CREDITS_PARAMS *pParams) {
419     return pProfiler->__profilerBaseCtrlCmdGetTotalHsCredits__(pProfiler, pParams);
420 }
421 
profilerBaseCtrlCmdGetChipletHsCredits_DISPATCH(struct ProfilerBase * pProfiler,NVB0CC_CTRL_GET_CHIPLET_HS_CREDIT_POOL * pParams)422 static inline NV_STATUS profilerBaseCtrlCmdGetChipletHsCredits_DISPATCH(struct ProfilerBase *pProfiler, NVB0CC_CTRL_GET_CHIPLET_HS_CREDIT_POOL *pParams) {
423     return pProfiler->__profilerBaseCtrlCmdGetChipletHsCredits__(pProfiler, pParams);
424 }
425 
profilerBaseCtrlCmdGetHsCreditsMapping_DISPATCH(struct ProfilerBase * pProfiler,NVB0CC_CTRL_GET_HS_CREDITS_POOL_MAPPING_PARAMS * pParams)426 static inline NV_STATUS profilerBaseCtrlCmdGetHsCreditsMapping_DISPATCH(struct ProfilerBase *pProfiler, NVB0CC_CTRL_GET_HS_CREDITS_POOL_MAPPING_PARAMS *pParams) {
427     return pProfiler->__profilerBaseCtrlCmdGetHsCreditsMapping__(pProfiler, pParams);
428 }
429 
profilerBaseCtrlCmdGetHsCredits_DISPATCH(struct ProfilerBase * pProfiler,NVB0CC_CTRL_GET_HS_CREDITS_PARAMS * pParams)430 static inline NV_STATUS profilerBaseCtrlCmdGetHsCredits_DISPATCH(struct ProfilerBase *pProfiler, NVB0CC_CTRL_GET_HS_CREDITS_PARAMS *pParams) {
431     return pProfiler->__profilerBaseCtrlCmdGetHsCredits__(pProfiler, pParams);
432 }
433 
profilerBaseCtrlCmdSetHsCredits_DISPATCH(struct ProfilerBase * pProfiler,NVB0CC_CTRL_SET_HS_CREDITS_PARAMS * pParams)434 static inline NV_STATUS profilerBaseCtrlCmdSetHsCredits_DISPATCH(struct ProfilerBase *pProfiler, NVB0CC_CTRL_SET_HS_CREDITS_PARAMS *pParams) {
435     return pProfiler->__profilerBaseCtrlCmdSetHsCredits__(pProfiler, pParams);
436 }
437 
profilerBaseCtrlCmdReserveHes_DISPATCH(struct ProfilerBase * pProfiler,NVB0CC_CTRL_RESERVE_HES_PARAMS * pParams)438 static inline NV_STATUS profilerBaseCtrlCmdReserveHes_DISPATCH(struct ProfilerBase *pProfiler, NVB0CC_CTRL_RESERVE_HES_PARAMS *pParams) {
439     return pProfiler->__profilerBaseCtrlCmdReserveHes__(pProfiler, pParams);
440 }
441 
profilerBaseCtrlCmdReleaseHes_DISPATCH(struct ProfilerBase * pProfiler,NVB0CC_CTRL_RELEASE_HES_PARAMS * pParams)442 static inline NV_STATUS profilerBaseCtrlCmdReleaseHes_DISPATCH(struct ProfilerBase *pProfiler, NVB0CC_CTRL_RELEASE_HES_PARAMS *pParams) {
443     return pProfiler->__profilerBaseCtrlCmdReleaseHes__(pProfiler, pParams);
444 }
445 
profilerBaseCtrlCmdRequestCgControls_DISPATCH(struct ProfilerBase * pProfiler,NVB0CC_CTRL_POWER_REQUEST_FEATURES_PARAMS * pParams)446 static inline NV_STATUS profilerBaseCtrlCmdRequestCgControls_DISPATCH(struct ProfilerBase *pProfiler, NVB0CC_CTRL_POWER_REQUEST_FEATURES_PARAMS *pParams) {
447     return pProfiler->__profilerBaseCtrlCmdRequestCgControls__(pProfiler, pParams);
448 }
449 
profilerBaseCtrlCmdReleaseCgControls_DISPATCH(struct ProfilerBase * pProfiler,NVB0CC_CTRL_POWER_RELEASE_FEATURES_PARAMS * pParams)450 static inline NV_STATUS profilerBaseCtrlCmdReleaseCgControls_DISPATCH(struct ProfilerBase *pProfiler, NVB0CC_CTRL_POWER_RELEASE_FEATURES_PARAMS *pParams) {
451     return pProfiler->__profilerBaseCtrlCmdReleaseCgControls__(pProfiler, pParams);
452 }
453 
profilerBaseCtrlCmdDisableDynamicMMABoost_DISPATCH(struct ProfilerBase * pProfiler,NVB0CC_CTRL_DISABLE_DYNAMIC_MMA_BOOST_PARAMS * pParams)454 static inline NV_STATUS profilerBaseCtrlCmdDisableDynamicMMABoost_DISPATCH(struct ProfilerBase *pProfiler, NVB0CC_CTRL_DISABLE_DYNAMIC_MMA_BOOST_PARAMS *pParams) {
455     return pProfiler->__profilerBaseCtrlCmdDisableDynamicMMABoost__(pProfiler, pParams);
456 }
457 
profilerBaseCtrlCmdGetDynamicMMABoostStatus_DISPATCH(struct ProfilerBase * pProfiler,NVB0CC_CTRL_GET_DYNAMIC_MMA_BOOST_STATUS_PARAMS * pParams)458 static inline NV_STATUS profilerBaseCtrlCmdGetDynamicMMABoostStatus_DISPATCH(struct ProfilerBase *pProfiler, NVB0CC_CTRL_GET_DYNAMIC_MMA_BOOST_STATUS_PARAMS *pParams) {
459     return pProfiler->__profilerBaseCtrlCmdGetDynamicMMABoostStatus__(pProfiler, pParams);
460 }
461 
profilerBaseControl_DISPATCH(struct ProfilerBase * pGpuResource,struct CALL_CONTEXT * pCallContext,struct RS_RES_CONTROL_PARAMS_INTERNAL * pParams)462 static inline NV_STATUS profilerBaseControl_DISPATCH(struct ProfilerBase *pGpuResource, struct CALL_CONTEXT *pCallContext, struct RS_RES_CONTROL_PARAMS_INTERNAL *pParams) {
463     return pGpuResource->__profilerBaseControl__(pGpuResource, pCallContext, pParams);
464 }
465 
profilerBaseMap_DISPATCH(struct ProfilerBase * pGpuResource,struct CALL_CONTEXT * pCallContext,struct RS_CPU_MAP_PARAMS * pParams,struct RsCpuMapping * pCpuMapping)466 static inline NV_STATUS profilerBaseMap_DISPATCH(struct ProfilerBase *pGpuResource, struct CALL_CONTEXT *pCallContext, struct RS_CPU_MAP_PARAMS *pParams, struct RsCpuMapping *pCpuMapping) {
467     return pGpuResource->__profilerBaseMap__(pGpuResource, pCallContext, pParams, pCpuMapping);
468 }
469 
profilerBaseUnmap_DISPATCH(struct ProfilerBase * pGpuResource,struct CALL_CONTEXT * pCallContext,struct RsCpuMapping * pCpuMapping)470 static inline NV_STATUS profilerBaseUnmap_DISPATCH(struct ProfilerBase *pGpuResource, struct CALL_CONTEXT *pCallContext, struct RsCpuMapping *pCpuMapping) {
471     return pGpuResource->__profilerBaseUnmap__(pGpuResource, pCallContext, pCpuMapping);
472 }
473 
profilerBaseShareCallback_DISPATCH(struct ProfilerBase * pGpuResource,struct RsClient * pInvokingClient,struct RsResourceRef * pParentRef,RS_SHARE_POLICY * pSharePolicy)474 static inline NvBool profilerBaseShareCallback_DISPATCH(struct ProfilerBase *pGpuResource, struct RsClient *pInvokingClient, struct RsResourceRef *pParentRef, RS_SHARE_POLICY *pSharePolicy) {
475     return pGpuResource->__profilerBaseShareCallback__(pGpuResource, pInvokingClient, pParentRef, pSharePolicy);
476 }
477 
profilerBaseGetRegBaseOffsetAndSize_DISPATCH(struct ProfilerBase * pGpuResource,struct OBJGPU * pGpu,NvU32 * pOffset,NvU32 * pSize)478 static inline NV_STATUS profilerBaseGetRegBaseOffsetAndSize_DISPATCH(struct ProfilerBase *pGpuResource, struct OBJGPU *pGpu, NvU32 *pOffset, NvU32 *pSize) {
479     return pGpuResource->__profilerBaseGetRegBaseOffsetAndSize__(pGpuResource, pGpu, pOffset, pSize);
480 }
481 
profilerBaseGetMapAddrSpace_DISPATCH(struct ProfilerBase * pGpuResource,struct CALL_CONTEXT * pCallContext,NvU32 mapFlags,NV_ADDRESS_SPACE * pAddrSpace)482 static inline NV_STATUS profilerBaseGetMapAddrSpace_DISPATCH(struct ProfilerBase *pGpuResource, struct CALL_CONTEXT *pCallContext, NvU32 mapFlags, NV_ADDRESS_SPACE *pAddrSpace) {
483     return pGpuResource->__profilerBaseGetMapAddrSpace__(pGpuResource, pCallContext, mapFlags, pAddrSpace);
484 }
485 
profilerBaseInternalControlForward_DISPATCH(struct ProfilerBase * pGpuResource,NvU32 command,void * pParams,NvU32 size)486 static inline NV_STATUS profilerBaseInternalControlForward_DISPATCH(struct ProfilerBase *pGpuResource, NvU32 command, void *pParams, NvU32 size) {
487     return pGpuResource->__profilerBaseInternalControlForward__(pGpuResource, command, pParams, size);
488 }
489 
profilerBaseGetInternalObjectHandle_DISPATCH(struct ProfilerBase * pGpuResource)490 static inline NvHandle profilerBaseGetInternalObjectHandle_DISPATCH(struct ProfilerBase *pGpuResource) {
491     return pGpuResource->__profilerBaseGetInternalObjectHandle__(pGpuResource);
492 }
493 
profilerBaseAccessCallback_DISPATCH(struct ProfilerBase * pResource,struct RsClient * pInvokingClient,void * pAllocParams,RsAccessRight accessRight)494 static inline NvBool profilerBaseAccessCallback_DISPATCH(struct ProfilerBase *pResource, struct RsClient *pInvokingClient, void *pAllocParams, RsAccessRight accessRight) {
495     return pResource->__profilerBaseAccessCallback__(pResource, pInvokingClient, pAllocParams, accessRight);
496 }
497 
profilerBaseGetMemInterMapParams_DISPATCH(struct ProfilerBase * pRmResource,RMRES_MEM_INTER_MAP_PARAMS * pParams)498 static inline NV_STATUS profilerBaseGetMemInterMapParams_DISPATCH(struct ProfilerBase *pRmResource, RMRES_MEM_INTER_MAP_PARAMS *pParams) {
499     return pRmResource->__profilerBaseGetMemInterMapParams__(pRmResource, pParams);
500 }
501 
profilerBaseCheckMemInterUnmap_DISPATCH(struct ProfilerBase * pRmResource,NvBool bSubdeviceHandleProvided)502 static inline NV_STATUS profilerBaseCheckMemInterUnmap_DISPATCH(struct ProfilerBase *pRmResource, NvBool bSubdeviceHandleProvided) {
503     return pRmResource->__profilerBaseCheckMemInterUnmap__(pRmResource, bSubdeviceHandleProvided);
504 }
505 
profilerBaseGetMemoryMappingDescriptor_DISPATCH(struct ProfilerBase * pRmResource,struct MEMORY_DESCRIPTOR ** ppMemDesc)506 static inline NV_STATUS profilerBaseGetMemoryMappingDescriptor_DISPATCH(struct ProfilerBase *pRmResource, struct MEMORY_DESCRIPTOR **ppMemDesc) {
507     return pRmResource->__profilerBaseGetMemoryMappingDescriptor__(pRmResource, ppMemDesc);
508 }
509 
profilerBaseControlSerialization_Prologue_DISPATCH(struct ProfilerBase * pResource,struct CALL_CONTEXT * pCallContext,struct RS_RES_CONTROL_PARAMS_INTERNAL * pParams)510 static inline NV_STATUS profilerBaseControlSerialization_Prologue_DISPATCH(struct ProfilerBase *pResource, struct CALL_CONTEXT *pCallContext, struct RS_RES_CONTROL_PARAMS_INTERNAL *pParams) {
511     return pResource->__profilerBaseControlSerialization_Prologue__(pResource, pCallContext, pParams);
512 }
513 
profilerBaseControlSerialization_Epilogue_DISPATCH(struct ProfilerBase * pResource,struct CALL_CONTEXT * pCallContext,struct RS_RES_CONTROL_PARAMS_INTERNAL * pParams)514 static inline void profilerBaseControlSerialization_Epilogue_DISPATCH(struct ProfilerBase *pResource, struct CALL_CONTEXT *pCallContext, struct RS_RES_CONTROL_PARAMS_INTERNAL *pParams) {
515     pResource->__profilerBaseControlSerialization_Epilogue__(pResource, pCallContext, pParams);
516 }
517 
profilerBaseControl_Prologue_DISPATCH(struct ProfilerBase * pResource,struct CALL_CONTEXT * pCallContext,struct RS_RES_CONTROL_PARAMS_INTERNAL * pParams)518 static inline NV_STATUS profilerBaseControl_Prologue_DISPATCH(struct ProfilerBase *pResource, struct CALL_CONTEXT *pCallContext, struct RS_RES_CONTROL_PARAMS_INTERNAL *pParams) {
519     return pResource->__profilerBaseControl_Prologue__(pResource, pCallContext, pParams);
520 }
521 
profilerBaseControl_Epilogue_DISPATCH(struct ProfilerBase * pResource,struct CALL_CONTEXT * pCallContext,struct RS_RES_CONTROL_PARAMS_INTERNAL * pParams)522 static inline void profilerBaseControl_Epilogue_DISPATCH(struct ProfilerBase *pResource, struct CALL_CONTEXT *pCallContext, struct RS_RES_CONTROL_PARAMS_INTERNAL *pParams) {
523     pResource->__profilerBaseControl_Epilogue__(pResource, pCallContext, pParams);
524 }
525 
profilerBaseCanCopy_DISPATCH(struct ProfilerBase * pResource)526 static inline NvBool profilerBaseCanCopy_DISPATCH(struct ProfilerBase *pResource) {
527     return pResource->__profilerBaseCanCopy__(pResource);
528 }
529 
profilerBaseIsDuplicate_DISPATCH(struct ProfilerBase * pResource,NvHandle hMemory,NvBool * pDuplicate)530 static inline NV_STATUS profilerBaseIsDuplicate_DISPATCH(struct ProfilerBase *pResource, NvHandle hMemory, NvBool *pDuplicate) {
531     return pResource->__profilerBaseIsDuplicate__(pResource, hMemory, pDuplicate);
532 }
533 
profilerBasePreDestruct_DISPATCH(struct ProfilerBase * pResource)534 static inline void profilerBasePreDestruct_DISPATCH(struct ProfilerBase *pResource) {
535     pResource->__profilerBasePreDestruct__(pResource);
536 }
537 
profilerBaseControlFilter_DISPATCH(struct ProfilerBase * pResource,struct CALL_CONTEXT * pCallContext,struct RS_RES_CONTROL_PARAMS_INTERNAL * pParams)538 static inline NV_STATUS profilerBaseControlFilter_DISPATCH(struct ProfilerBase *pResource, struct CALL_CONTEXT *pCallContext, struct RS_RES_CONTROL_PARAMS_INTERNAL *pParams) {
539     return pResource->__profilerBaseControlFilter__(pResource, pCallContext, pParams);
540 }
541 
profilerBaseIsPartialUnmapSupported_DISPATCH(struct ProfilerBase * pResource)542 static inline NvBool profilerBaseIsPartialUnmapSupported_DISPATCH(struct ProfilerBase *pResource) {
543     return pResource->__profilerBaseIsPartialUnmapSupported__(pResource);
544 }
545 
profilerBaseMapTo_DISPATCH(struct ProfilerBase * pResource,RS_RES_MAP_TO_PARAMS * pParams)546 static inline NV_STATUS profilerBaseMapTo_DISPATCH(struct ProfilerBase *pResource, RS_RES_MAP_TO_PARAMS *pParams) {
547     return pResource->__profilerBaseMapTo__(pResource, pParams);
548 }
549 
profilerBaseUnmapFrom_DISPATCH(struct ProfilerBase * pResource,RS_RES_UNMAP_FROM_PARAMS * pParams)550 static inline NV_STATUS profilerBaseUnmapFrom_DISPATCH(struct ProfilerBase *pResource, RS_RES_UNMAP_FROM_PARAMS *pParams) {
551     return pResource->__profilerBaseUnmapFrom__(pResource, pParams);
552 }
553 
profilerBaseGetRefCount_DISPATCH(struct ProfilerBase * pResource)554 static inline NvU32 profilerBaseGetRefCount_DISPATCH(struct ProfilerBase *pResource) {
555     return pResource->__profilerBaseGetRefCount__(pResource);
556 }
557 
profilerBaseAddAdditionalDependants_DISPATCH(struct RsClient * pClient,struct ProfilerBase * pResource,RsResourceRef * pReference)558 static inline void profilerBaseAddAdditionalDependants_DISPATCH(struct RsClient *pClient, struct ProfilerBase *pResource, RsResourceRef *pReference) {
559     pResource->__profilerBaseAddAdditionalDependants__(pClient, pResource, pReference);
560 }
561 
profilerBaseConstructState_56cd7a(struct ProfilerBase * pProf,CALL_CONTEXT * pCallContext,struct RS_RES_ALLOC_PARAMS_INTERNAL * pParams)562 static inline NV_STATUS profilerBaseConstructState_56cd7a(struct ProfilerBase *pProf, CALL_CONTEXT *pCallContext, struct RS_RES_ALLOC_PARAMS_INTERNAL *pParams) {
563     return NV_OK;
564 }
565 
566 NV_STATUS profilerBaseConstructState_IMPL(struct ProfilerBase *pProf, CALL_CONTEXT *pCallContext, struct RS_RES_ALLOC_PARAMS_INTERNAL *pParams);
567 
568 void profilerBaseDestructState_VF(struct ProfilerBase *pProf);
569 
profilerBaseDestructState_b3696a(struct ProfilerBase * pProf)570 static inline void profilerBaseDestructState_b3696a(struct ProfilerBase *pProf) {
571     return;
572 }
573 
574 NV_STATUS profilerBaseCtrlCmdReserveHwpmLegacy_IMPL(struct ProfilerBase *pProfiler, NVB0CC_CTRL_RESERVE_HWPM_LEGACY_PARAMS *pParams);
575 
576 NV_STATUS profilerBaseCtrlCmdInternalReserveHwpmLegacy_IMPL(struct ProfilerBase *pProfiler, NVB0CC_CTRL_INTERNAL_RESERVE_HWPM_LEGACY_PARAMS *pParams);
577 
578 NV_STATUS profilerBaseCtrlCmdReleaseHwpmLegacy_IMPL(struct ProfilerBase *pProfiler);
579 
580 NV_STATUS profilerBaseCtrlCmdReservePmAreaSmpc_IMPL(struct ProfilerBase *pProfiler, NVB0CC_CTRL_RESERVE_PM_AREA_SMPC_PARAMS *pParams);
581 
582 NV_STATUS profilerBaseCtrlCmdReleasePmAreaSmpc_IMPL(struct ProfilerBase *pProfiler);
583 
584 NV_STATUS profilerBaseCtrlCmdAllocPmaStream_IMPL(struct ProfilerBase *pProfiler, NVB0CC_CTRL_ALLOC_PMA_STREAM_PARAMS *pParams);
585 
586 NV_STATUS profilerBaseCtrlCmdFreePmaStream_IMPL(struct ProfilerBase *pProfiler, NVB0CC_CTRL_FREE_PMA_STREAM_PARAMS *pParams);
587 
588 NV_STATUS profilerBaseCtrlCmdInternalFreePmaStream_VF(struct ProfilerBase *pProfiler, NVB0CC_CTRL_INTERNAL_FREE_PMA_STREAM_PARAMS *pParams);
589 
profilerBaseCtrlCmdInternalFreePmaStream_56cd7a(struct ProfilerBase * pProfiler,NVB0CC_CTRL_INTERNAL_FREE_PMA_STREAM_PARAMS * pParams)590 static inline NV_STATUS profilerBaseCtrlCmdInternalFreePmaStream_56cd7a(struct ProfilerBase *pProfiler, NVB0CC_CTRL_INTERNAL_FREE_PMA_STREAM_PARAMS *pParams) {
591     return NV_OK;
592 }
593 
594 NV_STATUS profilerBaseCtrlCmdInternalGetMaxPmas_IMPL(struct ProfilerBase *pProfiler, NVB0CC_CTRL_INTERNAL_GET_MAX_PMAS_PARAMS *pParams);
595 
596 NV_STATUS profilerBaseCtrlCmdBindPmResources_IMPL(struct ProfilerBase *pProfiler);
597 
profilerBaseCtrlCmdUnbindPmResources_46f6a7(struct ProfilerBase * pProfiler)598 static inline NV_STATUS profilerBaseCtrlCmdUnbindPmResources_46f6a7(struct ProfilerBase *pProfiler) {
599     return NV_ERR_NOT_SUPPORTED;
600 }
601 
602 NV_STATUS profilerBaseCtrlCmdUnbindPmResources_IMPL(struct ProfilerBase *pProfiler);
603 
604 NV_STATUS profilerBaseCtrlCmdInternalBindPmResources_IMPL(struct ProfilerBase *pProfiler);
605 
606 NV_STATUS profilerBaseCtrlCmdInternalUnbindPmResources_IMPL(struct ProfilerBase *pProfiler);
607 
608 NV_STATUS profilerBaseCtrlCmdPmaStreamUpdateGetPut_VF(struct ProfilerBase *pProfiler, NVB0CC_CTRL_PMA_STREAM_UPDATE_GET_PUT_PARAMS *pParams);
609 
profilerBaseCtrlCmdPmaStreamUpdateGetPut_56cd7a(struct ProfilerBase * pProfiler,NVB0CC_CTRL_PMA_STREAM_UPDATE_GET_PUT_PARAMS * pParams)610 static inline NV_STATUS profilerBaseCtrlCmdPmaStreamUpdateGetPut_56cd7a(struct ProfilerBase *pProfiler, NVB0CC_CTRL_PMA_STREAM_UPDATE_GET_PUT_PARAMS *pParams) {
611     return NV_OK;
612 }
613 
614 NV_STATUS profilerBaseCtrlCmdExecRegops_IMPL(struct ProfilerBase *pProfiler, NVB0CC_CTRL_EXEC_REG_OPS_PARAMS *pParams);
615 
616 NV_STATUS profilerBaseCtrlCmdInternalAllocPmaStream_VF(struct ProfilerBase *pProfiler, NVB0CC_CTRL_INTERNAL_ALLOC_PMA_STREAM_PARAMS *pParams);
617 
profilerBaseCtrlCmdInternalAllocPmaStream_56cd7a(struct ProfilerBase * pProfiler,NVB0CC_CTRL_INTERNAL_ALLOC_PMA_STREAM_PARAMS * pParams)618 static inline NV_STATUS profilerBaseCtrlCmdInternalAllocPmaStream_56cd7a(struct ProfilerBase *pProfiler, NVB0CC_CTRL_INTERNAL_ALLOC_PMA_STREAM_PARAMS *pParams) {
619     return NV_OK;
620 }
621 
622 NV_STATUS profilerBaseCtrlCmdInternalQuiescePmaChannel_IMPL(struct ProfilerBase *pProfiler, NVB0CC_CTRL_INTERNAL_QUIESCE_PMA_CHANNEL_PARAMS *pParams);
623 
profilerBaseCtrlCmdInternalSriovPromotePmaStream_108313(struct ProfilerBase * pProfiler,NVB0CC_CTRL_INTERNAL_SRIOV_PROMOTE_PMA_STREAM_PARAMS * pParams)624 static inline NV_STATUS profilerBaseCtrlCmdInternalSriovPromotePmaStream_108313(struct ProfilerBase *pProfiler, NVB0CC_CTRL_INTERNAL_SRIOV_PROMOTE_PMA_STREAM_PARAMS *pParams) {
625     NV_ASSERT_OR_RETURN_PRECOMP(0, ((NvBool)(0 != 0)));
626 }
627 
628 NV_STATUS profilerBaseCtrlCmdInternalSriovPromotePmaStream_VF(struct ProfilerBase *pProfiler, NVB0CC_CTRL_INTERNAL_SRIOV_PROMOTE_PMA_STREAM_PARAMS *pParams);
629 
630 NV_STATUS profilerBaseCtrlCmdInternalPermissionsInit_IMPL(struct ProfilerBase *pProfiler, NVB0CC_CTRL_INTERNAL_PERMISSIONS_INIT_PARAMS *pParams);
631 
632 NV_STATUS profilerBaseCtrlCmdReservePmAreaPcSampler_IMPL(struct ProfilerBase *pProfiler);
633 
634 NV_STATUS profilerBaseCtrlCmdReleasePmAreaPcSampler_IMPL(struct ProfilerBase *pProfiler);
635 
636 NV_STATUS profilerBaseCtrlCmdGetTotalHsCredits_IMPL(struct ProfilerBase *pProfiler, NVB0CC_CTRL_GET_TOTAL_HS_CREDITS_PARAMS *pParams);
637 
638 NV_STATUS profilerBaseCtrlCmdGetChipletHsCredits_IMPL(struct ProfilerBase *pProfiler, NVB0CC_CTRL_GET_CHIPLET_HS_CREDIT_POOL *pParams);
639 
640 NV_STATUS profilerBaseCtrlCmdGetHsCreditsMapping_IMPL(struct ProfilerBase *pProfiler, NVB0CC_CTRL_GET_HS_CREDITS_POOL_MAPPING_PARAMS *pParams);
641 
642 NV_STATUS profilerBaseCtrlCmdGetHsCredits_IMPL(struct ProfilerBase *pProfiler, NVB0CC_CTRL_GET_HS_CREDITS_PARAMS *pParams);
643 
644 NV_STATUS profilerBaseCtrlCmdSetHsCredits_IMPL(struct ProfilerBase *pProfiler, NVB0CC_CTRL_SET_HS_CREDITS_PARAMS *pParams);
645 
646 NV_STATUS profilerBaseCtrlCmdReserveHes_IMPL(struct ProfilerBase *pProfiler, NVB0CC_CTRL_RESERVE_HES_PARAMS *pParams);
647 
648 NV_STATUS profilerBaseCtrlCmdReleaseHes_IMPL(struct ProfilerBase *pProfiler, NVB0CC_CTRL_RELEASE_HES_PARAMS *pParams);
649 
650 NV_STATUS profilerBaseCtrlCmdRequestCgControls_VF(struct ProfilerBase *pProfiler, NVB0CC_CTRL_POWER_REQUEST_FEATURES_PARAMS *pParams);
651 
profilerBaseCtrlCmdRequestCgControls_92bfc3(struct ProfilerBase * pProfiler,NVB0CC_CTRL_POWER_REQUEST_FEATURES_PARAMS * pParams)652 static inline NV_STATUS profilerBaseCtrlCmdRequestCgControls_92bfc3(struct ProfilerBase *pProfiler, NVB0CC_CTRL_POWER_REQUEST_FEATURES_PARAMS *pParams) {
653     NV_ASSERT_PRECOMP(0);
654     return NV_ERR_NOT_SUPPORTED;
655 }
656 
profilerBaseCtrlCmdReleaseCgControls_56cd7a(struct ProfilerBase * pProfiler,NVB0CC_CTRL_POWER_RELEASE_FEATURES_PARAMS * pParams)657 static inline NV_STATUS profilerBaseCtrlCmdReleaseCgControls_56cd7a(struct ProfilerBase *pProfiler, NVB0CC_CTRL_POWER_RELEASE_FEATURES_PARAMS *pParams) {
658     return NV_OK;
659 }
660 
profilerBaseCtrlCmdReleaseCgControls_92bfc3(struct ProfilerBase * pProfiler,NVB0CC_CTRL_POWER_RELEASE_FEATURES_PARAMS * pParams)661 static inline NV_STATUS profilerBaseCtrlCmdReleaseCgControls_92bfc3(struct ProfilerBase *pProfiler, NVB0CC_CTRL_POWER_RELEASE_FEATURES_PARAMS *pParams) {
662     NV_ASSERT_PRECOMP(0);
663     return NV_ERR_NOT_SUPPORTED;
664 }
665 
666 NV_STATUS profilerBaseCtrlCmdDisableDynamicMMABoost_IMPL(struct ProfilerBase *pProfiler, NVB0CC_CTRL_DISABLE_DYNAMIC_MMA_BOOST_PARAMS *pParams);
667 
668 NV_STATUS profilerBaseCtrlCmdGetDynamicMMABoostStatus_IMPL(struct ProfilerBase *pProfiler, NVB0CC_CTRL_GET_DYNAMIC_MMA_BOOST_STATUS_PARAMS *pParams);
669 
670 NV_STATUS profilerBaseConstruct_IMPL(struct ProfilerBase *arg_pProf, CALL_CONTEXT *arg_pCallContext, struct RS_RES_ALLOC_PARAMS_INTERNAL *arg_pParams);
671 
672 #define __nvoc_profilerBaseConstruct(arg_pProf, arg_pCallContext, arg_pParams) profilerBaseConstruct_IMPL(arg_pProf, arg_pCallContext, arg_pParams)
673 void profilerBaseDestruct_IMPL(struct ProfilerBase *pProf);
674 
675 #define __nvoc_profilerBaseDestruct(pProf) profilerBaseDestruct_IMPL(pProf)
676 NV_STATUS profilerBaseQuiesceStreamout_IMPL(struct ProfilerBase *pProf, OBJGPU *pGpu, struct KernelHwpm *pKernelHwpm, NvU32 pmaChIdx);
677 
678 #ifdef __nvoc_profiler_v2_h_disabled
profilerBaseQuiesceStreamout(struct ProfilerBase * pProf,OBJGPU * pGpu,struct KernelHwpm * pKernelHwpm,NvU32 pmaChIdx)679 static inline NV_STATUS profilerBaseQuiesceStreamout(struct ProfilerBase *pProf, OBJGPU *pGpu, struct KernelHwpm *pKernelHwpm, NvU32 pmaChIdx) {
680     NV_ASSERT_FAILED_PRECOMP("ProfilerBase was disabled!");
681     return NV_ERR_NOT_SUPPORTED;
682 }
683 #else //__nvoc_profiler_v2_h_disabled
684 #define profilerBaseQuiesceStreamout(pProf, pGpu, pKernelHwpm, pmaChIdx) profilerBaseQuiesceStreamout_IMPL(pProf, pGpu, pKernelHwpm, pmaChIdx)
685 #endif //__nvoc_profiler_v2_h_disabled
686 
687 #undef PRIVATE_FIELD
688 
689 
690 // Private field names are wrapped in PRIVATE_FIELD, which does nothing for
691 // the matching C source file, but causes diagnostics to be issued if another
692 // source file references the field.
693 #ifdef NVOC_PROFILER_V2_H_PRIVATE_ACCESS_ALLOWED
694 #define PRIVATE_FIELD(x) x
695 #else
696 #define PRIVATE_FIELD(x) NVOC_PRIVATE_FIELD(x)
697 #endif
698 
699 
700 struct ProfilerDev {
701 
702     // Metadata
703     const struct NVOC_RTTI *__nvoc_rtti;
704 
705     // Parent (i.e. superclass or base class) object pointers
706     struct ProfilerBase __nvoc_base_ProfilerBase;
707 
708     // Ancestor object pointers for `staticCast` feature
709     struct Object *__nvoc_pbase_Object;    // obj super^5
710     struct RsResource *__nvoc_pbase_RsResource;    // res super^4
711     struct RmResourceCommon *__nvoc_pbase_RmResourceCommon;    // rmrescmn super^4
712     struct RmResource *__nvoc_pbase_RmResource;    // rmres super^3
713     struct GpuResource *__nvoc_pbase_GpuResource;    // gpures super^2
714     struct ProfilerBase *__nvoc_pbase_ProfilerBase;    // profilerBase super
715     struct ProfilerDev *__nvoc_pbase_ProfilerDev;    // profilerDev
716 
717     // Vtable with 30 per-object function pointers
718     NV_STATUS (*__profilerDevConstructState__)(struct ProfilerDev * /*this*/, CALL_CONTEXT *, struct RS_RES_ALLOC_PARAMS_INTERNAL *, PROFILER_CLIENT_PERMISSIONS);  // halified (2 hals) override (profilerBase) base (profilerBase)
719     NV_STATUS (*__profilerDevConstructStatePrologue__)(struct ProfilerDev * /*this*/, CALL_CONTEXT *, struct RS_RES_ALLOC_PARAMS_INTERNAL *);  // halified (2 hals) body
720     NV_STATUS (*__profilerDevConstructStateInterlude__)(struct ProfilerDev * /*this*/, CALL_CONTEXT *, struct RS_RES_ALLOC_PARAMS_INTERNAL *, PROFILER_CLIENT_PERMISSIONS);  // halified (2 hals) body
721     NV_STATUS (*__profilerDevConstructStateEpilogue__)(struct ProfilerDev * /*this*/, CALL_CONTEXT *, struct RS_RES_ALLOC_PARAMS_INTERNAL *);  // halified (2 hals) body
722     void (*__profilerDevDestructState__)(struct ProfilerDev * /*this*/);  // halified (2 hals) override (profilerBase) base (profilerBase) body
723     NV_STATUS (*__profilerDevControl__)(struct ProfilerDev * /*this*/, struct CALL_CONTEXT *, struct RS_RES_CONTROL_PARAMS_INTERNAL *);  // virtual inherited (gpures) base (profilerBase)
724     NV_STATUS (*__profilerDevMap__)(struct ProfilerDev * /*this*/, struct CALL_CONTEXT *, struct RS_CPU_MAP_PARAMS *, struct RsCpuMapping *);  // virtual inherited (gpures) base (profilerBase)
725     NV_STATUS (*__profilerDevUnmap__)(struct ProfilerDev * /*this*/, struct CALL_CONTEXT *, struct RsCpuMapping *);  // virtual inherited (gpures) base (profilerBase)
726     NvBool (*__profilerDevShareCallback__)(struct ProfilerDev * /*this*/, struct RsClient *, struct RsResourceRef *, RS_SHARE_POLICY *);  // virtual inherited (gpures) base (profilerBase)
727     NV_STATUS (*__profilerDevGetRegBaseOffsetAndSize__)(struct ProfilerDev * /*this*/, struct OBJGPU *, NvU32 *, NvU32 *);  // virtual inherited (gpures) base (profilerBase)
728     NV_STATUS (*__profilerDevGetMapAddrSpace__)(struct ProfilerDev * /*this*/, struct CALL_CONTEXT *, NvU32, NV_ADDRESS_SPACE *);  // virtual inherited (gpures) base (profilerBase)
729     NV_STATUS (*__profilerDevInternalControlForward__)(struct ProfilerDev * /*this*/, NvU32, void *, NvU32);  // virtual inherited (gpures) base (profilerBase)
730     NvHandle (*__profilerDevGetInternalObjectHandle__)(struct ProfilerDev * /*this*/);  // virtual inherited (gpures) base (profilerBase)
731     NvBool (*__profilerDevAccessCallback__)(struct ProfilerDev * /*this*/, struct RsClient *, void *, RsAccessRight);  // virtual inherited (rmres) base (profilerBase)
732     NV_STATUS (*__profilerDevGetMemInterMapParams__)(struct ProfilerDev * /*this*/, RMRES_MEM_INTER_MAP_PARAMS *);  // virtual inherited (rmres) base (profilerBase)
733     NV_STATUS (*__profilerDevCheckMemInterUnmap__)(struct ProfilerDev * /*this*/, NvBool);  // virtual inherited (rmres) base (profilerBase)
734     NV_STATUS (*__profilerDevGetMemoryMappingDescriptor__)(struct ProfilerDev * /*this*/, struct MEMORY_DESCRIPTOR **);  // virtual inherited (rmres) base (profilerBase)
735     NV_STATUS (*__profilerDevControlSerialization_Prologue__)(struct ProfilerDev * /*this*/, struct CALL_CONTEXT *, struct RS_RES_CONTROL_PARAMS_INTERNAL *);  // virtual inherited (rmres) base (profilerBase)
736     void (*__profilerDevControlSerialization_Epilogue__)(struct ProfilerDev * /*this*/, struct CALL_CONTEXT *, struct RS_RES_CONTROL_PARAMS_INTERNAL *);  // virtual inherited (rmres) base (profilerBase)
737     NV_STATUS (*__profilerDevControl_Prologue__)(struct ProfilerDev * /*this*/, struct CALL_CONTEXT *, struct RS_RES_CONTROL_PARAMS_INTERNAL *);  // virtual inherited (rmres) base (profilerBase)
738     void (*__profilerDevControl_Epilogue__)(struct ProfilerDev * /*this*/, struct CALL_CONTEXT *, struct RS_RES_CONTROL_PARAMS_INTERNAL *);  // virtual inherited (rmres) base (profilerBase)
739     NvBool (*__profilerDevCanCopy__)(struct ProfilerDev * /*this*/);  // virtual inherited (res) base (profilerBase)
740     NV_STATUS (*__profilerDevIsDuplicate__)(struct ProfilerDev * /*this*/, NvHandle, NvBool *);  // virtual inherited (res) base (profilerBase)
741     void (*__profilerDevPreDestruct__)(struct ProfilerDev * /*this*/);  // virtual inherited (res) base (profilerBase)
742     NV_STATUS (*__profilerDevControlFilter__)(struct ProfilerDev * /*this*/, struct CALL_CONTEXT *, struct RS_RES_CONTROL_PARAMS_INTERNAL *);  // virtual inherited (res) base (profilerBase)
743     NvBool (*__profilerDevIsPartialUnmapSupported__)(struct ProfilerDev * /*this*/);  // inline virtual inherited (res) base (profilerBase) body
744     NV_STATUS (*__profilerDevMapTo__)(struct ProfilerDev * /*this*/, RS_RES_MAP_TO_PARAMS *);  // virtual inherited (res) base (profilerBase)
745     NV_STATUS (*__profilerDevUnmapFrom__)(struct ProfilerDev * /*this*/, RS_RES_UNMAP_FROM_PARAMS *);  // virtual inherited (res) base (profilerBase)
746     NvU32 (*__profilerDevGetRefCount__)(struct ProfilerDev * /*this*/);  // virtual inherited (res) base (profilerBase)
747     void (*__profilerDevAddAdditionalDependants__)(struct RsClient *, struct ProfilerDev * /*this*/, RsResourceRef *);  // virtual inherited (res) base (profilerBase)
748 };
749 
750 #ifndef __NVOC_CLASS_ProfilerDev_TYPEDEF__
751 #define __NVOC_CLASS_ProfilerDev_TYPEDEF__
752 typedef struct ProfilerDev ProfilerDev;
753 #endif /* __NVOC_CLASS_ProfilerDev_TYPEDEF__ */
754 
755 #ifndef __nvoc_class_id_ProfilerDev
756 #define __nvoc_class_id_ProfilerDev 0x54d077
757 #endif /* __nvoc_class_id_ProfilerDev */
758 
759 // Casting support
760 extern const struct NVOC_CLASS_DEF __nvoc_class_def_ProfilerDev;
761 
762 #define __staticCast_ProfilerDev(pThis) \
763     ((pThis)->__nvoc_pbase_ProfilerDev)
764 
765 #ifdef __nvoc_profiler_v2_h_disabled
766 #define __dynamicCast_ProfilerDev(pThis) ((ProfilerDev*)NULL)
767 #else //__nvoc_profiler_v2_h_disabled
768 #define __dynamicCast_ProfilerDev(pThis) \
769     ((ProfilerDev*)__nvoc_dynamicCast(staticCast((pThis), Dynamic), classInfo(ProfilerDev)))
770 #endif //__nvoc_profiler_v2_h_disabled
771 
772 NV_STATUS __nvoc_objCreateDynamic_ProfilerDev(ProfilerDev**, Dynamic*, NvU32, va_list);
773 
774 NV_STATUS __nvoc_objCreate_ProfilerDev(ProfilerDev**, Dynamic*, NvU32, CALL_CONTEXT * arg_pCallContext, struct RS_RES_ALLOC_PARAMS_INTERNAL * arg_pParams);
775 #define __objCreate_ProfilerDev(ppNewObj, pParent, createFlags, arg_pCallContext, arg_pParams) \
776     __nvoc_objCreate_ProfilerDev((ppNewObj), staticCast((pParent), Dynamic), (createFlags), arg_pCallContext, arg_pParams)
777 
778 
779 // Wrapper macros
780 #define profilerDevConstructState_FNPTR(pResource) pResource->__profilerDevConstructState__
781 #define profilerDevConstructState(pResource, pCallContext, pParams, clientPermissions) profilerDevConstructState_DISPATCH(pResource, pCallContext, pParams, clientPermissions)
782 #define profilerDevConstructState_HAL(pResource, pCallContext, pParams, clientPermissions) profilerDevConstructState_DISPATCH(pResource, pCallContext, pParams, clientPermissions)
783 #define profilerDevConstructStatePrologue_FNPTR(pResource) pResource->__profilerDevConstructStatePrologue__
784 #define profilerDevConstructStatePrologue(pResource, pCallContext, pParams) profilerDevConstructStatePrologue_DISPATCH(pResource, pCallContext, pParams)
785 #define profilerDevConstructStatePrologue_HAL(pResource, pCallContext, pParams) profilerDevConstructStatePrologue_DISPATCH(pResource, pCallContext, pParams)
786 #define profilerDevConstructStateInterlude_FNPTR(pResource) pResource->__profilerDevConstructStateInterlude__
787 #define profilerDevConstructStateInterlude(pResource, pCallContext, pParams, clientPermissions) profilerDevConstructStateInterlude_DISPATCH(pResource, pCallContext, pParams, clientPermissions)
788 #define profilerDevConstructStateInterlude_HAL(pResource, pCallContext, pParams, clientPermissions) profilerDevConstructStateInterlude_DISPATCH(pResource, pCallContext, pParams, clientPermissions)
789 #define profilerDevConstructStateEpilogue_FNPTR(pResource) pResource->__profilerDevConstructStateEpilogue__
790 #define profilerDevConstructStateEpilogue(pResource, pCallContext, pParams) profilerDevConstructStateEpilogue_DISPATCH(pResource, pCallContext, pParams)
791 #define profilerDevConstructStateEpilogue_HAL(pResource, pCallContext, pParams) profilerDevConstructStateEpilogue_DISPATCH(pResource, pCallContext, pParams)
792 #define profilerDevDestructState_FNPTR(pResource) pResource->__profilerDevDestructState__
793 #define profilerDevDestructState(pResource) profilerDevDestructState_DISPATCH(pResource)
794 #define profilerDevDestructState_HAL(pResource) profilerDevDestructState_DISPATCH(pResource)
795 #define profilerDevControl_FNPTR(pGpuResource) pGpuResource->__nvoc_base_ProfilerBase.__nvoc_base_GpuResource.__gpuresControl__
796 #define profilerDevControl(pGpuResource, pCallContext, pParams) profilerDevControl_DISPATCH(pGpuResource, pCallContext, pParams)
797 #define profilerDevMap_FNPTR(pGpuResource) pGpuResource->__nvoc_base_ProfilerBase.__nvoc_base_GpuResource.__gpuresMap__
798 #define profilerDevMap(pGpuResource, pCallContext, pParams, pCpuMapping) profilerDevMap_DISPATCH(pGpuResource, pCallContext, pParams, pCpuMapping)
799 #define profilerDevUnmap_FNPTR(pGpuResource) pGpuResource->__nvoc_base_ProfilerBase.__nvoc_base_GpuResource.__gpuresUnmap__
800 #define profilerDevUnmap(pGpuResource, pCallContext, pCpuMapping) profilerDevUnmap_DISPATCH(pGpuResource, pCallContext, pCpuMapping)
801 #define profilerDevShareCallback_FNPTR(pGpuResource) pGpuResource->__nvoc_base_ProfilerBase.__nvoc_base_GpuResource.__gpuresShareCallback__
802 #define profilerDevShareCallback(pGpuResource, pInvokingClient, pParentRef, pSharePolicy) profilerDevShareCallback_DISPATCH(pGpuResource, pInvokingClient, pParentRef, pSharePolicy)
803 #define profilerDevGetRegBaseOffsetAndSize_FNPTR(pGpuResource) pGpuResource->__nvoc_base_ProfilerBase.__nvoc_base_GpuResource.__gpuresGetRegBaseOffsetAndSize__
804 #define profilerDevGetRegBaseOffsetAndSize(pGpuResource, pGpu, pOffset, pSize) profilerDevGetRegBaseOffsetAndSize_DISPATCH(pGpuResource, pGpu, pOffset, pSize)
805 #define profilerDevGetMapAddrSpace_FNPTR(pGpuResource) pGpuResource->__nvoc_base_ProfilerBase.__nvoc_base_GpuResource.__gpuresGetMapAddrSpace__
806 #define profilerDevGetMapAddrSpace(pGpuResource, pCallContext, mapFlags, pAddrSpace) profilerDevGetMapAddrSpace_DISPATCH(pGpuResource, pCallContext, mapFlags, pAddrSpace)
807 #define profilerDevInternalControlForward_FNPTR(pGpuResource) pGpuResource->__nvoc_base_ProfilerBase.__nvoc_base_GpuResource.__gpuresInternalControlForward__
808 #define profilerDevInternalControlForward(pGpuResource, command, pParams, size) profilerDevInternalControlForward_DISPATCH(pGpuResource, command, pParams, size)
809 #define profilerDevGetInternalObjectHandle_FNPTR(pGpuResource) pGpuResource->__nvoc_base_ProfilerBase.__nvoc_base_GpuResource.__gpuresGetInternalObjectHandle__
810 #define profilerDevGetInternalObjectHandle(pGpuResource) profilerDevGetInternalObjectHandle_DISPATCH(pGpuResource)
811 #define profilerDevAccessCallback_FNPTR(pResource) pResource->__nvoc_base_ProfilerBase.__nvoc_base_GpuResource.__nvoc_base_RmResource.__rmresAccessCallback__
812 #define profilerDevAccessCallback(pResource, pInvokingClient, pAllocParams, accessRight) profilerDevAccessCallback_DISPATCH(pResource, pInvokingClient, pAllocParams, accessRight)
813 #define profilerDevGetMemInterMapParams_FNPTR(pRmResource) pRmResource->__nvoc_base_ProfilerBase.__nvoc_base_GpuResource.__nvoc_base_RmResource.__rmresGetMemInterMapParams__
814 #define profilerDevGetMemInterMapParams(pRmResource, pParams) profilerDevGetMemInterMapParams_DISPATCH(pRmResource, pParams)
815 #define profilerDevCheckMemInterUnmap_FNPTR(pRmResource) pRmResource->__nvoc_base_ProfilerBase.__nvoc_base_GpuResource.__nvoc_base_RmResource.__rmresCheckMemInterUnmap__
816 #define profilerDevCheckMemInterUnmap(pRmResource, bSubdeviceHandleProvided) profilerDevCheckMemInterUnmap_DISPATCH(pRmResource, bSubdeviceHandleProvided)
817 #define profilerDevGetMemoryMappingDescriptor_FNPTR(pRmResource) pRmResource->__nvoc_base_ProfilerBase.__nvoc_base_GpuResource.__nvoc_base_RmResource.__rmresGetMemoryMappingDescriptor__
818 #define profilerDevGetMemoryMappingDescriptor(pRmResource, ppMemDesc) profilerDevGetMemoryMappingDescriptor_DISPATCH(pRmResource, ppMemDesc)
819 #define profilerDevControlSerialization_Prologue_FNPTR(pResource) pResource->__nvoc_base_ProfilerBase.__nvoc_base_GpuResource.__nvoc_base_RmResource.__rmresControlSerialization_Prologue__
820 #define profilerDevControlSerialization_Prologue(pResource, pCallContext, pParams) profilerDevControlSerialization_Prologue_DISPATCH(pResource, pCallContext, pParams)
821 #define profilerDevControlSerialization_Epilogue_FNPTR(pResource) pResource->__nvoc_base_ProfilerBase.__nvoc_base_GpuResource.__nvoc_base_RmResource.__rmresControlSerialization_Epilogue__
822 #define profilerDevControlSerialization_Epilogue(pResource, pCallContext, pParams) profilerDevControlSerialization_Epilogue_DISPATCH(pResource, pCallContext, pParams)
823 #define profilerDevControl_Prologue_FNPTR(pResource) pResource->__nvoc_base_ProfilerBase.__nvoc_base_GpuResource.__nvoc_base_RmResource.__rmresControl_Prologue__
824 #define profilerDevControl_Prologue(pResource, pCallContext, pParams) profilerDevControl_Prologue_DISPATCH(pResource, pCallContext, pParams)
825 #define profilerDevControl_Epilogue_FNPTR(pResource) pResource->__nvoc_base_ProfilerBase.__nvoc_base_GpuResource.__nvoc_base_RmResource.__rmresControl_Epilogue__
826 #define profilerDevControl_Epilogue(pResource, pCallContext, pParams) profilerDevControl_Epilogue_DISPATCH(pResource, pCallContext, pParams)
827 #define profilerDevCanCopy_FNPTR(pResource) pResource->__nvoc_base_ProfilerBase.__nvoc_base_GpuResource.__nvoc_base_RmResource.__nvoc_base_RsResource.__resCanCopy__
828 #define profilerDevCanCopy(pResource) profilerDevCanCopy_DISPATCH(pResource)
829 #define profilerDevIsDuplicate_FNPTR(pResource) pResource->__nvoc_base_ProfilerBase.__nvoc_base_GpuResource.__nvoc_base_RmResource.__nvoc_base_RsResource.__resIsDuplicate__
830 #define profilerDevIsDuplicate(pResource, hMemory, pDuplicate) profilerDevIsDuplicate_DISPATCH(pResource, hMemory, pDuplicate)
831 #define profilerDevPreDestruct_FNPTR(pResource) pResource->__nvoc_base_ProfilerBase.__nvoc_base_GpuResource.__nvoc_base_RmResource.__nvoc_base_RsResource.__resPreDestruct__
832 #define profilerDevPreDestruct(pResource) profilerDevPreDestruct_DISPATCH(pResource)
833 #define profilerDevControlFilter_FNPTR(pResource) pResource->__nvoc_base_ProfilerBase.__nvoc_base_GpuResource.__nvoc_base_RmResource.__nvoc_base_RsResource.__resControlFilter__
834 #define profilerDevControlFilter(pResource, pCallContext, pParams) profilerDevControlFilter_DISPATCH(pResource, pCallContext, pParams)
835 #define profilerDevIsPartialUnmapSupported_FNPTR(pResource) pResource->__nvoc_base_ProfilerBase.__nvoc_base_GpuResource.__nvoc_base_RmResource.__nvoc_base_RsResource.__resIsPartialUnmapSupported__
836 #define profilerDevIsPartialUnmapSupported(pResource) profilerDevIsPartialUnmapSupported_DISPATCH(pResource)
837 #define profilerDevMapTo_FNPTR(pResource) pResource->__nvoc_base_ProfilerBase.__nvoc_base_GpuResource.__nvoc_base_RmResource.__nvoc_base_RsResource.__resMapTo__
838 #define profilerDevMapTo(pResource, pParams) profilerDevMapTo_DISPATCH(pResource, pParams)
839 #define profilerDevUnmapFrom_FNPTR(pResource) pResource->__nvoc_base_ProfilerBase.__nvoc_base_GpuResource.__nvoc_base_RmResource.__nvoc_base_RsResource.__resUnmapFrom__
840 #define profilerDevUnmapFrom(pResource, pParams) profilerDevUnmapFrom_DISPATCH(pResource, pParams)
841 #define profilerDevGetRefCount_FNPTR(pResource) pResource->__nvoc_base_ProfilerBase.__nvoc_base_GpuResource.__nvoc_base_RmResource.__nvoc_base_RsResource.__resGetRefCount__
842 #define profilerDevGetRefCount(pResource) profilerDevGetRefCount_DISPATCH(pResource)
843 #define profilerDevAddAdditionalDependants_FNPTR(pResource) pResource->__nvoc_base_ProfilerBase.__nvoc_base_GpuResource.__nvoc_base_RmResource.__nvoc_base_RsResource.__resAddAdditionalDependants__
844 #define profilerDevAddAdditionalDependants(pClient, pResource, pReference) profilerDevAddAdditionalDependants_DISPATCH(pClient, pResource, pReference)
845 
846 // Dispatch functions
profilerDevConstructState_DISPATCH(struct ProfilerDev * pResource,CALL_CONTEXT * pCallContext,struct RS_RES_ALLOC_PARAMS_INTERNAL * pParams,PROFILER_CLIENT_PERMISSIONS clientPermissions)847 static inline NV_STATUS profilerDevConstructState_DISPATCH(struct ProfilerDev *pResource, CALL_CONTEXT *pCallContext, struct RS_RES_ALLOC_PARAMS_INTERNAL *pParams, PROFILER_CLIENT_PERMISSIONS clientPermissions) {
848     return pResource->__profilerDevConstructState__(pResource, pCallContext, pParams, clientPermissions);
849 }
850 
profilerDevConstructStatePrologue_DISPATCH(struct ProfilerDev * pResource,CALL_CONTEXT * pCallContext,struct RS_RES_ALLOC_PARAMS_INTERNAL * pParams)851 static inline NV_STATUS profilerDevConstructStatePrologue_DISPATCH(struct ProfilerDev *pResource, CALL_CONTEXT *pCallContext, struct RS_RES_ALLOC_PARAMS_INTERNAL *pParams) {
852     return pResource->__profilerDevConstructStatePrologue__(pResource, pCallContext, pParams);
853 }
854 
profilerDevConstructStateInterlude_DISPATCH(struct ProfilerDev * pResource,CALL_CONTEXT * pCallContext,struct RS_RES_ALLOC_PARAMS_INTERNAL * pParams,PROFILER_CLIENT_PERMISSIONS clientPermissions)855 static inline NV_STATUS profilerDevConstructStateInterlude_DISPATCH(struct ProfilerDev *pResource, CALL_CONTEXT *pCallContext, struct RS_RES_ALLOC_PARAMS_INTERNAL *pParams, PROFILER_CLIENT_PERMISSIONS clientPermissions) {
856     return pResource->__profilerDevConstructStateInterlude__(pResource, pCallContext, pParams, clientPermissions);
857 }
858 
profilerDevConstructStateEpilogue_DISPATCH(struct ProfilerDev * pResource,CALL_CONTEXT * pCallContext,struct RS_RES_ALLOC_PARAMS_INTERNAL * pParams)859 static inline NV_STATUS profilerDevConstructStateEpilogue_DISPATCH(struct ProfilerDev *pResource, CALL_CONTEXT *pCallContext, struct RS_RES_ALLOC_PARAMS_INTERNAL *pParams) {
860     return pResource->__profilerDevConstructStateEpilogue__(pResource, pCallContext, pParams);
861 }
862 
profilerDevDestructState_DISPATCH(struct ProfilerDev * pResource)863 static inline void profilerDevDestructState_DISPATCH(struct ProfilerDev *pResource) {
864     pResource->__profilerDevDestructState__(pResource);
865 }
866 
profilerDevControl_DISPATCH(struct ProfilerDev * pGpuResource,struct CALL_CONTEXT * pCallContext,struct RS_RES_CONTROL_PARAMS_INTERNAL * pParams)867 static inline NV_STATUS profilerDevControl_DISPATCH(struct ProfilerDev *pGpuResource, struct CALL_CONTEXT *pCallContext, struct RS_RES_CONTROL_PARAMS_INTERNAL *pParams) {
868     return pGpuResource->__profilerDevControl__(pGpuResource, pCallContext, pParams);
869 }
870 
profilerDevMap_DISPATCH(struct ProfilerDev * pGpuResource,struct CALL_CONTEXT * pCallContext,struct RS_CPU_MAP_PARAMS * pParams,struct RsCpuMapping * pCpuMapping)871 static inline NV_STATUS profilerDevMap_DISPATCH(struct ProfilerDev *pGpuResource, struct CALL_CONTEXT *pCallContext, struct RS_CPU_MAP_PARAMS *pParams, struct RsCpuMapping *pCpuMapping) {
872     return pGpuResource->__profilerDevMap__(pGpuResource, pCallContext, pParams, pCpuMapping);
873 }
874 
profilerDevUnmap_DISPATCH(struct ProfilerDev * pGpuResource,struct CALL_CONTEXT * pCallContext,struct RsCpuMapping * pCpuMapping)875 static inline NV_STATUS profilerDevUnmap_DISPATCH(struct ProfilerDev *pGpuResource, struct CALL_CONTEXT *pCallContext, struct RsCpuMapping *pCpuMapping) {
876     return pGpuResource->__profilerDevUnmap__(pGpuResource, pCallContext, pCpuMapping);
877 }
878 
profilerDevShareCallback_DISPATCH(struct ProfilerDev * pGpuResource,struct RsClient * pInvokingClient,struct RsResourceRef * pParentRef,RS_SHARE_POLICY * pSharePolicy)879 static inline NvBool profilerDevShareCallback_DISPATCH(struct ProfilerDev *pGpuResource, struct RsClient *pInvokingClient, struct RsResourceRef *pParentRef, RS_SHARE_POLICY *pSharePolicy) {
880     return pGpuResource->__profilerDevShareCallback__(pGpuResource, pInvokingClient, pParentRef, pSharePolicy);
881 }
882 
profilerDevGetRegBaseOffsetAndSize_DISPATCH(struct ProfilerDev * pGpuResource,struct OBJGPU * pGpu,NvU32 * pOffset,NvU32 * pSize)883 static inline NV_STATUS profilerDevGetRegBaseOffsetAndSize_DISPATCH(struct ProfilerDev *pGpuResource, struct OBJGPU *pGpu, NvU32 *pOffset, NvU32 *pSize) {
884     return pGpuResource->__profilerDevGetRegBaseOffsetAndSize__(pGpuResource, pGpu, pOffset, pSize);
885 }
886 
profilerDevGetMapAddrSpace_DISPATCH(struct ProfilerDev * pGpuResource,struct CALL_CONTEXT * pCallContext,NvU32 mapFlags,NV_ADDRESS_SPACE * pAddrSpace)887 static inline NV_STATUS profilerDevGetMapAddrSpace_DISPATCH(struct ProfilerDev *pGpuResource, struct CALL_CONTEXT *pCallContext, NvU32 mapFlags, NV_ADDRESS_SPACE *pAddrSpace) {
888     return pGpuResource->__profilerDevGetMapAddrSpace__(pGpuResource, pCallContext, mapFlags, pAddrSpace);
889 }
890 
profilerDevInternalControlForward_DISPATCH(struct ProfilerDev * pGpuResource,NvU32 command,void * pParams,NvU32 size)891 static inline NV_STATUS profilerDevInternalControlForward_DISPATCH(struct ProfilerDev *pGpuResource, NvU32 command, void *pParams, NvU32 size) {
892     return pGpuResource->__profilerDevInternalControlForward__(pGpuResource, command, pParams, size);
893 }
894 
profilerDevGetInternalObjectHandle_DISPATCH(struct ProfilerDev * pGpuResource)895 static inline NvHandle profilerDevGetInternalObjectHandle_DISPATCH(struct ProfilerDev *pGpuResource) {
896     return pGpuResource->__profilerDevGetInternalObjectHandle__(pGpuResource);
897 }
898 
profilerDevAccessCallback_DISPATCH(struct ProfilerDev * pResource,struct RsClient * pInvokingClient,void * pAllocParams,RsAccessRight accessRight)899 static inline NvBool profilerDevAccessCallback_DISPATCH(struct ProfilerDev *pResource, struct RsClient *pInvokingClient, void *pAllocParams, RsAccessRight accessRight) {
900     return pResource->__profilerDevAccessCallback__(pResource, pInvokingClient, pAllocParams, accessRight);
901 }
902 
profilerDevGetMemInterMapParams_DISPATCH(struct ProfilerDev * pRmResource,RMRES_MEM_INTER_MAP_PARAMS * pParams)903 static inline NV_STATUS profilerDevGetMemInterMapParams_DISPATCH(struct ProfilerDev *pRmResource, RMRES_MEM_INTER_MAP_PARAMS *pParams) {
904     return pRmResource->__profilerDevGetMemInterMapParams__(pRmResource, pParams);
905 }
906 
profilerDevCheckMemInterUnmap_DISPATCH(struct ProfilerDev * pRmResource,NvBool bSubdeviceHandleProvided)907 static inline NV_STATUS profilerDevCheckMemInterUnmap_DISPATCH(struct ProfilerDev *pRmResource, NvBool bSubdeviceHandleProvided) {
908     return pRmResource->__profilerDevCheckMemInterUnmap__(pRmResource, bSubdeviceHandleProvided);
909 }
910 
profilerDevGetMemoryMappingDescriptor_DISPATCH(struct ProfilerDev * pRmResource,struct MEMORY_DESCRIPTOR ** ppMemDesc)911 static inline NV_STATUS profilerDevGetMemoryMappingDescriptor_DISPATCH(struct ProfilerDev *pRmResource, struct MEMORY_DESCRIPTOR **ppMemDesc) {
912     return pRmResource->__profilerDevGetMemoryMappingDescriptor__(pRmResource, ppMemDesc);
913 }
914 
profilerDevControlSerialization_Prologue_DISPATCH(struct ProfilerDev * pResource,struct CALL_CONTEXT * pCallContext,struct RS_RES_CONTROL_PARAMS_INTERNAL * pParams)915 static inline NV_STATUS profilerDevControlSerialization_Prologue_DISPATCH(struct ProfilerDev *pResource, struct CALL_CONTEXT *pCallContext, struct RS_RES_CONTROL_PARAMS_INTERNAL *pParams) {
916     return pResource->__profilerDevControlSerialization_Prologue__(pResource, pCallContext, pParams);
917 }
918 
profilerDevControlSerialization_Epilogue_DISPATCH(struct ProfilerDev * pResource,struct CALL_CONTEXT * pCallContext,struct RS_RES_CONTROL_PARAMS_INTERNAL * pParams)919 static inline void profilerDevControlSerialization_Epilogue_DISPATCH(struct ProfilerDev *pResource, struct CALL_CONTEXT *pCallContext, struct RS_RES_CONTROL_PARAMS_INTERNAL *pParams) {
920     pResource->__profilerDevControlSerialization_Epilogue__(pResource, pCallContext, pParams);
921 }
922 
profilerDevControl_Prologue_DISPATCH(struct ProfilerDev * pResource,struct CALL_CONTEXT * pCallContext,struct RS_RES_CONTROL_PARAMS_INTERNAL * pParams)923 static inline NV_STATUS profilerDevControl_Prologue_DISPATCH(struct ProfilerDev *pResource, struct CALL_CONTEXT *pCallContext, struct RS_RES_CONTROL_PARAMS_INTERNAL *pParams) {
924     return pResource->__profilerDevControl_Prologue__(pResource, pCallContext, pParams);
925 }
926 
profilerDevControl_Epilogue_DISPATCH(struct ProfilerDev * pResource,struct CALL_CONTEXT * pCallContext,struct RS_RES_CONTROL_PARAMS_INTERNAL * pParams)927 static inline void profilerDevControl_Epilogue_DISPATCH(struct ProfilerDev *pResource, struct CALL_CONTEXT *pCallContext, struct RS_RES_CONTROL_PARAMS_INTERNAL *pParams) {
928     pResource->__profilerDevControl_Epilogue__(pResource, pCallContext, pParams);
929 }
930 
profilerDevCanCopy_DISPATCH(struct ProfilerDev * pResource)931 static inline NvBool profilerDevCanCopy_DISPATCH(struct ProfilerDev *pResource) {
932     return pResource->__profilerDevCanCopy__(pResource);
933 }
934 
profilerDevIsDuplicate_DISPATCH(struct ProfilerDev * pResource,NvHandle hMemory,NvBool * pDuplicate)935 static inline NV_STATUS profilerDevIsDuplicate_DISPATCH(struct ProfilerDev *pResource, NvHandle hMemory, NvBool *pDuplicate) {
936     return pResource->__profilerDevIsDuplicate__(pResource, hMemory, pDuplicate);
937 }
938 
profilerDevPreDestruct_DISPATCH(struct ProfilerDev * pResource)939 static inline void profilerDevPreDestruct_DISPATCH(struct ProfilerDev *pResource) {
940     pResource->__profilerDevPreDestruct__(pResource);
941 }
942 
profilerDevControlFilter_DISPATCH(struct ProfilerDev * pResource,struct CALL_CONTEXT * pCallContext,struct RS_RES_CONTROL_PARAMS_INTERNAL * pParams)943 static inline NV_STATUS profilerDevControlFilter_DISPATCH(struct ProfilerDev *pResource, struct CALL_CONTEXT *pCallContext, struct RS_RES_CONTROL_PARAMS_INTERNAL *pParams) {
944     return pResource->__profilerDevControlFilter__(pResource, pCallContext, pParams);
945 }
946 
profilerDevIsPartialUnmapSupported_DISPATCH(struct ProfilerDev * pResource)947 static inline NvBool profilerDevIsPartialUnmapSupported_DISPATCH(struct ProfilerDev *pResource) {
948     return pResource->__profilerDevIsPartialUnmapSupported__(pResource);
949 }
950 
profilerDevMapTo_DISPATCH(struct ProfilerDev * pResource,RS_RES_MAP_TO_PARAMS * pParams)951 static inline NV_STATUS profilerDevMapTo_DISPATCH(struct ProfilerDev *pResource, RS_RES_MAP_TO_PARAMS *pParams) {
952     return pResource->__profilerDevMapTo__(pResource, pParams);
953 }
954 
profilerDevUnmapFrom_DISPATCH(struct ProfilerDev * pResource,RS_RES_UNMAP_FROM_PARAMS * pParams)955 static inline NV_STATUS profilerDevUnmapFrom_DISPATCH(struct ProfilerDev *pResource, RS_RES_UNMAP_FROM_PARAMS *pParams) {
956     return pResource->__profilerDevUnmapFrom__(pResource, pParams);
957 }
958 
profilerDevGetRefCount_DISPATCH(struct ProfilerDev * pResource)959 static inline NvU32 profilerDevGetRefCount_DISPATCH(struct ProfilerDev *pResource) {
960     return pResource->__profilerDevGetRefCount__(pResource);
961 }
962 
profilerDevAddAdditionalDependants_DISPATCH(struct RsClient * pClient,struct ProfilerDev * pResource,RsResourceRef * pReference)963 static inline void profilerDevAddAdditionalDependants_DISPATCH(struct RsClient *pClient, struct ProfilerDev *pResource, RsResourceRef *pReference) {
964     pResource->__profilerDevAddAdditionalDependants__(pClient, pResource, pReference);
965 }
966 
967 NvBool profilerDevQueryCapabilities_IMPL(struct ProfilerDev *pResource, CALL_CONTEXT *pCallContext, struct RS_RES_ALLOC_PARAMS_INTERNAL *pParams, PROFILER_CLIENT_PERMISSIONS *pClientPermissions);
968 
969 
970 #ifdef __nvoc_profiler_v2_h_disabled
profilerDevQueryCapabilities(struct ProfilerDev * pResource,CALL_CONTEXT * pCallContext,struct RS_RES_ALLOC_PARAMS_INTERNAL * pParams,PROFILER_CLIENT_PERMISSIONS * pClientPermissions)971 static inline NvBool profilerDevQueryCapabilities(struct ProfilerDev *pResource, CALL_CONTEXT *pCallContext, struct RS_RES_ALLOC_PARAMS_INTERNAL *pParams, PROFILER_CLIENT_PERMISSIONS *pClientPermissions) {
972     NV_ASSERT_FAILED_PRECOMP("ProfilerDev was disabled!");
973     return NV_FALSE;
974 }
975 #else //__nvoc_profiler_v2_h_disabled
976 #define profilerDevQueryCapabilities(pResource, pCallContext, pParams, pClientPermissions) profilerDevQueryCapabilities_IMPL(pResource, pCallContext, pParams, pClientPermissions)
977 #endif //__nvoc_profiler_v2_h_disabled
978 
979 #define profilerDevQueryCapabilities_HAL(pResource, pCallContext, pParams, pClientPermissions) profilerDevQueryCapabilities(pResource, pCallContext, pParams, pClientPermissions)
980 
981 NV_STATUS profilerDevConstructState_VF(struct ProfilerDev *pResource, CALL_CONTEXT *pCallContext, struct RS_RES_ALLOC_PARAMS_INTERNAL *pParams, PROFILER_CLIENT_PERMISSIONS clientPermissions);
982 
983 NV_STATUS profilerDevConstructState_IMPL(struct ProfilerDev *pResource, CALL_CONTEXT *pCallContext, struct RS_RES_ALLOC_PARAMS_INTERNAL *pParams, PROFILER_CLIENT_PERMISSIONS clientPermissions);
984 
985 NV_STATUS profilerDevConstructStatePrologue_FWCLIENT(struct ProfilerDev *pResource, CALL_CONTEXT *pCallContext, struct RS_RES_ALLOC_PARAMS_INTERNAL *pParams);
986 
profilerDevConstructStatePrologue_92bfc3(struct ProfilerDev * pResource,CALL_CONTEXT * pCallContext,struct RS_RES_ALLOC_PARAMS_INTERNAL * pParams)987 static inline NV_STATUS profilerDevConstructStatePrologue_92bfc3(struct ProfilerDev *pResource, CALL_CONTEXT *pCallContext, struct RS_RES_ALLOC_PARAMS_INTERNAL *pParams) {
988     NV_ASSERT_PRECOMP(0);
989     return NV_ERR_NOT_SUPPORTED;
990 }
991 
992 NV_STATUS profilerDevConstructStateInterlude_IMPL(struct ProfilerDev *pResource, CALL_CONTEXT *pCallContext, struct RS_RES_ALLOC_PARAMS_INTERNAL *pParams, PROFILER_CLIENT_PERMISSIONS clientPermissions);
993 
profilerDevConstructStateInterlude_92bfc3(struct ProfilerDev * pResource,CALL_CONTEXT * pCallContext,struct RS_RES_ALLOC_PARAMS_INTERNAL * pParams,PROFILER_CLIENT_PERMISSIONS clientPermissions)994 static inline NV_STATUS profilerDevConstructStateInterlude_92bfc3(struct ProfilerDev *pResource, CALL_CONTEXT *pCallContext, struct RS_RES_ALLOC_PARAMS_INTERNAL *pParams, PROFILER_CLIENT_PERMISSIONS clientPermissions) {
995     NV_ASSERT_PRECOMP(0);
996     return NV_ERR_NOT_SUPPORTED;
997 }
998 
999 NV_STATUS profilerDevConstructStateEpilogue_FWCLIENT(struct ProfilerDev *pResource, CALL_CONTEXT *pCallContext, struct RS_RES_ALLOC_PARAMS_INTERNAL *pParams);
1000 
profilerDevConstructStateEpilogue_92bfc3(struct ProfilerDev * pResource,CALL_CONTEXT * pCallContext,struct RS_RES_ALLOC_PARAMS_INTERNAL * pParams)1001 static inline NV_STATUS profilerDevConstructStateEpilogue_92bfc3(struct ProfilerDev *pResource, CALL_CONTEXT *pCallContext, struct RS_RES_ALLOC_PARAMS_INTERNAL *pParams) {
1002     NV_ASSERT_PRECOMP(0);
1003     return NV_ERR_NOT_SUPPORTED;
1004 }
1005 
1006 void profilerDevDestructState_FWCLIENT(struct ProfilerDev *pResource);
1007 
profilerDevDestructState_b3696a(struct ProfilerDev * pResource)1008 static inline void profilerDevDestructState_b3696a(struct ProfilerDev *pResource) {
1009     return;
1010 }
1011 
1012 NV_STATUS profilerDevConstruct_IMPL(struct ProfilerDev *arg_pResource, CALL_CONTEXT *arg_pCallContext, struct RS_RES_ALLOC_PARAMS_INTERNAL *arg_pParams);
1013 
1014 #define __nvoc_profilerDevConstruct(arg_pResource, arg_pCallContext, arg_pParams) profilerDevConstruct_IMPL(arg_pResource, arg_pCallContext, arg_pParams)
1015 void profilerDevDestruct_IMPL(struct ProfilerDev *pResource);
1016 
1017 #define __nvoc_profilerDevDestruct(pResource) profilerDevDestruct_IMPL(pResource)
1018 #undef PRIVATE_FIELD
1019 
1020 #endif // PROFILER_V2_H
1021 
1022 #ifdef __cplusplus
1023 } // extern "C"
1024 #endif
1025 
1026 #endif // _G_PROFILER_V2_NVOC_H_
1027