1 #ifndef _G_KERNEL_HEAD_NVOC_H_
2 #define _G_KERNEL_HEAD_NVOC_H_
3 #include "nvoc/runtime.h"
4 
5 #ifdef __cplusplus
6 extern "C" {
7 #endif
8 
9 /*
10  * SPDX-FileCopyrightText: Copyright (c) 2021-2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
11  * SPDX-License-Identifier: MIT
12  *
13  * Permission is hereby granted, free of charge, to any person obtaining a
14  * copy of this software and associated documentation files (the "Software"),
15  * to deal in the Software without restriction, including without limitation
16  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
17  * and/or sell copies of the Software, and to permit persons to whom the
18  * Software is furnished to do so, subject to the following conditions:
19  *
20  * The above copyright notice and this permission notice shall be included in
21  * all copies or substantial portions of the Software.
22  *
23  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
24  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
25  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
26  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
27  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
28  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
29  * DEALINGS IN THE SOFTWARE.
30  */
31 
32 /**************************** Kernelhead Routines **************************\
33 *                                                                          *
34 *         Kernel head object function Definitions.             *
35 *                                                                          *
36 \***************************************************************************/
37 
38 #include "g_kernel_head_nvoc.h"
39 
40 #ifndef KERNEL_HEAD_H
41 #define KERNEL_HEAD_H
42 
43 /* ------------------------ Includes --------------------------------------- */
44 #include "gpu/eng_state.h"
45 #include "gpu/disp/vblank_callback/vblank.h"
46 #include "gpu/gpu_halspec.h"
47 /* ------------------------ Types definitions ------------------------------ */
48 /* ------------------------ Macros & Defines ------------------------------- */
49 
50 
51 // Private field names are wrapped in PRIVATE_FIELD, which does nothing for
52 // the matching C source file, but causes diagnostics to be issued if another
53 // source file references the field.
54 #ifdef NVOC_KERNEL_HEAD_H_PRIVATE_ACCESS_ALLOWED
55 #define PRIVATE_FIELD(x) x
56 #else
57 #define PRIVATE_FIELD(x) NVOC_PRIVATE_FIELD(x)
58 #endif
59 
60 struct __nvoc_inner_struc_KernelHead_1__ {
61     struct {
62         NvU32 Total;
63         NvU32 LowLatency;
64         NvU32 NormLatency;
65     } Counters;
66     struct {
67         VBLANKCALLBACK *pListLL;
68         VBLANKCALLBACK *pListNL;
69         VBLANKCALLBACK CheckVblankCount;
70     } Callback;
71     NvU32 VblankCountTimeout;
72     NvU32 IntrState;
73 };
74 
75 
76 struct KernelHead {
77     const struct NVOC_RTTI *__nvoc_rtti;
78     struct Object __nvoc_base_Object;
79     struct Object *__nvoc_pbase_Object;
80     struct KernelHead *__nvoc_pbase_KernelHead;
81     NvBool (*__kheadReadVblankIntrEnable__)(struct OBJGPU *, struct KernelHead *);
82     NvBool (*__kheadGetDisplayInitialized__)(struct OBJGPU *, struct KernelHead *);
83     void (*__kheadWriteVblankIntrEnable__)(struct OBJGPU *, struct KernelHead *, NvBool);
84     void (*__kheadProcessVblankCallbacks__)(struct OBJGPU *, struct KernelHead *, NvU32);
85     void (*__kheadResetPendingVblank__)(struct OBJGPU *, struct KernelHead *, THREAD_STATE_NODE *);
86     NvBool (*__kheadReadPendingVblank__)(struct OBJGPU *, struct KernelHead *, NvU32 *, THREAD_STATE_NODE *);
87     NvU32 (*__kheadGetLoadVCounter__)(struct OBJGPU *, struct KernelHead *);
88     struct __nvoc_inner_struc_KernelHead_1__ Vblank;
89     NvU32 PublicId;
90 };
91 
92 #ifndef __NVOC_CLASS_KernelHead_TYPEDEF__
93 #define __NVOC_CLASS_KernelHead_TYPEDEF__
94 typedef struct KernelHead KernelHead;
95 #endif /* __NVOC_CLASS_KernelHead_TYPEDEF__ */
96 
97 #ifndef __nvoc_class_id_KernelHead
98 #define __nvoc_class_id_KernelHead 0x0145e6
99 #endif /* __nvoc_class_id_KernelHead */
100 
101 extern const struct NVOC_CLASS_DEF __nvoc_class_def_KernelHead;
102 
103 #define __staticCast_KernelHead(pThis) \
104     ((pThis)->__nvoc_pbase_KernelHead)
105 
106 #ifdef __nvoc_kernel_head_h_disabled
107 #define __dynamicCast_KernelHead(pThis) ((KernelHead*)NULL)
108 #else //__nvoc_kernel_head_h_disabled
109 #define __dynamicCast_KernelHead(pThis) \
110     ((KernelHead*)__nvoc_dynamicCast(staticCast((pThis), Dynamic), classInfo(KernelHead)))
111 #endif //__nvoc_kernel_head_h_disabled
112 
113 
114 NV_STATUS __nvoc_objCreateDynamic_KernelHead(KernelHead**, Dynamic*, NvU32, va_list);
115 
116 NV_STATUS __nvoc_objCreate_KernelHead(KernelHead**, Dynamic*, NvU32);
117 #define __objCreate_KernelHead(ppNewObj, pParent, createFlags) \
118     __nvoc_objCreate_KernelHead((ppNewObj), staticCast((pParent), Dynamic), (createFlags))
119 
120 #define kheadReadVblankIntrEnable(pGpu, pKernelHead) kheadReadVblankIntrEnable_DISPATCH(pGpu, pKernelHead)
121 #define kheadReadVblankIntrEnable_HAL(pGpu, pKernelHead) kheadReadVblankIntrEnable_DISPATCH(pGpu, pKernelHead)
122 #define kheadGetDisplayInitialized(pGpu, pKernelHead) kheadGetDisplayInitialized_DISPATCH(pGpu, pKernelHead)
123 #define kheadGetDisplayInitialized_HAL(pGpu, pKernelHead) kheadGetDisplayInitialized_DISPATCH(pGpu, pKernelHead)
124 #define kheadWriteVblankIntrEnable(pGpu, pKernelHead, arg0) kheadWriteVblankIntrEnable_DISPATCH(pGpu, pKernelHead, arg0)
125 #define kheadWriteVblankIntrEnable_HAL(pGpu, pKernelHead, arg0) kheadWriteVblankIntrEnable_DISPATCH(pGpu, pKernelHead, arg0)
126 #define kheadProcessVblankCallbacks(pGpu, pKernelHead, arg0) kheadProcessVblankCallbacks_DISPATCH(pGpu, pKernelHead, arg0)
127 #define kheadProcessVblankCallbacks_HAL(pGpu, pKernelHead, arg0) kheadProcessVblankCallbacks_DISPATCH(pGpu, pKernelHead, arg0)
128 #define kheadResetPendingVblank(pGpu, pKernelHead, arg0) kheadResetPendingVblank_DISPATCH(pGpu, pKernelHead, arg0)
129 #define kheadResetPendingVblank_HAL(pGpu, pKernelHead, arg0) kheadResetPendingVblank_DISPATCH(pGpu, pKernelHead, arg0)
130 #define kheadReadPendingVblank(pGpu, pKernelHead, pCachedIntr, pThreadState) kheadReadPendingVblank_DISPATCH(pGpu, pKernelHead, pCachedIntr, pThreadState)
131 #define kheadReadPendingVblank_HAL(pGpu, pKernelHead, pCachedIntr, pThreadState) kheadReadPendingVblank_DISPATCH(pGpu, pKernelHead, pCachedIntr, pThreadState)
132 #define kheadGetLoadVCounter(pGpu, pKernelHead) kheadGetLoadVCounter_DISPATCH(pGpu, pKernelHead)
133 #define kheadGetLoadVCounter_HAL(pGpu, pKernelHead) kheadGetLoadVCounter_DISPATCH(pGpu, pKernelHead)
134 NvU32 kheadGetVblankTotalCounter_IMPL(struct KernelHead *pKernelHead);
135 
136 
137 #ifdef __nvoc_kernel_head_h_disabled
kheadGetVblankTotalCounter(struct KernelHead * pKernelHead)138 static inline NvU32 kheadGetVblankTotalCounter(struct KernelHead *pKernelHead) {
139     NV_ASSERT_FAILED_PRECOMP("KernelHead was disabled!");
140     return 0;
141 }
142 #else //__nvoc_kernel_head_h_disabled
143 #define kheadGetVblankTotalCounter(pKernelHead) kheadGetVblankTotalCounter_IMPL(pKernelHead)
144 #endif //__nvoc_kernel_head_h_disabled
145 
146 #define kheadGetVblankTotalCounter_HAL(pKernelHead) kheadGetVblankTotalCounter(pKernelHead)
147 
148 void kheadSetVblankTotalCounter_IMPL(struct KernelHead *pKernelHead, NvU32 arg0);
149 
150 
151 #ifdef __nvoc_kernel_head_h_disabled
kheadSetVblankTotalCounter(struct KernelHead * pKernelHead,NvU32 arg0)152 static inline void kheadSetVblankTotalCounter(struct KernelHead *pKernelHead, NvU32 arg0) {
153     NV_ASSERT_FAILED_PRECOMP("KernelHead was disabled!");
154 }
155 #else //__nvoc_kernel_head_h_disabled
156 #define kheadSetVblankTotalCounter(pKernelHead, arg0) kheadSetVblankTotalCounter_IMPL(pKernelHead, arg0)
157 #endif //__nvoc_kernel_head_h_disabled
158 
159 #define kheadSetVblankTotalCounter_HAL(pKernelHead, arg0) kheadSetVblankTotalCounter(pKernelHead, arg0)
160 
161 NvU32 kheadGetVblankLowLatencyCounter_IMPL(struct KernelHead *pKernelHead);
162 
163 
164 #ifdef __nvoc_kernel_head_h_disabled
kheadGetVblankLowLatencyCounter(struct KernelHead * pKernelHead)165 static inline NvU32 kheadGetVblankLowLatencyCounter(struct KernelHead *pKernelHead) {
166     NV_ASSERT_FAILED_PRECOMP("KernelHead was disabled!");
167     return 0;
168 }
169 #else //__nvoc_kernel_head_h_disabled
170 #define kheadGetVblankLowLatencyCounter(pKernelHead) kheadGetVblankLowLatencyCounter_IMPL(pKernelHead)
171 #endif //__nvoc_kernel_head_h_disabled
172 
173 #define kheadGetVblankLowLatencyCounter_HAL(pKernelHead) kheadGetVblankLowLatencyCounter(pKernelHead)
174 
175 void kheadSetVblankLowLatencyCounter_IMPL(struct KernelHead *pKernelHead, NvU32 arg0);
176 
177 
178 #ifdef __nvoc_kernel_head_h_disabled
kheadSetVblankLowLatencyCounter(struct KernelHead * pKernelHead,NvU32 arg0)179 static inline void kheadSetVblankLowLatencyCounter(struct KernelHead *pKernelHead, NvU32 arg0) {
180     NV_ASSERT_FAILED_PRECOMP("KernelHead was disabled!");
181 }
182 #else //__nvoc_kernel_head_h_disabled
183 #define kheadSetVblankLowLatencyCounter(pKernelHead, arg0) kheadSetVblankLowLatencyCounter_IMPL(pKernelHead, arg0)
184 #endif //__nvoc_kernel_head_h_disabled
185 
186 #define kheadSetVblankLowLatencyCounter_HAL(pKernelHead, arg0) kheadSetVblankLowLatencyCounter(pKernelHead, arg0)
187 
kheadGetVblankNormLatencyCounter_46f6a7(struct KernelHead * pKernelHead)188 static inline NvU32 kheadGetVblankNormLatencyCounter_46f6a7(struct KernelHead *pKernelHead) {
189     return NV_ERR_NOT_SUPPORTED;
190 }
191 
192 
193 #ifdef __nvoc_kernel_head_h_disabled
kheadGetVblankNormLatencyCounter(struct KernelHead * pKernelHead)194 static inline NvU32 kheadGetVblankNormLatencyCounter(struct KernelHead *pKernelHead) {
195     NV_ASSERT_FAILED_PRECOMP("KernelHead was disabled!");
196     return 0;
197 }
198 #else //__nvoc_kernel_head_h_disabled
199 #define kheadGetVblankNormLatencyCounter(pKernelHead) kheadGetVblankNormLatencyCounter_46f6a7(pKernelHead)
200 #endif //__nvoc_kernel_head_h_disabled
201 
202 #define kheadGetVblankNormLatencyCounter_HAL(pKernelHead) kheadGetVblankNormLatencyCounter(pKernelHead)
203 
kheadSetVblankNormLatencyCounter_b3696a(struct KernelHead * pKernelHead,NvU32 arg0)204 static inline void kheadSetVblankNormLatencyCounter_b3696a(struct KernelHead *pKernelHead, NvU32 arg0) {
205     return;
206 }
207 
208 
209 #ifdef __nvoc_kernel_head_h_disabled
kheadSetVblankNormLatencyCounter(struct KernelHead * pKernelHead,NvU32 arg0)210 static inline void kheadSetVblankNormLatencyCounter(struct KernelHead *pKernelHead, NvU32 arg0) {
211     NV_ASSERT_FAILED_PRECOMP("KernelHead was disabled!");
212 }
213 #else //__nvoc_kernel_head_h_disabled
214 #define kheadSetVblankNormLatencyCounter(pKernelHead, arg0) kheadSetVblankNormLatencyCounter_b3696a(pKernelHead, arg0)
215 #endif //__nvoc_kernel_head_h_disabled
216 
217 #define kheadSetVblankNormLatencyCounter_HAL(pKernelHead, arg0) kheadSetVblankNormLatencyCounter(pKernelHead, arg0)
218 
219 NvBool kheadReadVblankIntrEnable_KERNEL(struct OBJGPU *pGpu, struct KernelHead *pKernelHead);
220 
kheadReadVblankIntrEnable_108313(struct OBJGPU * pGpu,struct KernelHead * pKernelHead)221 static inline NvBool kheadReadVblankIntrEnable_108313(struct OBJGPU *pGpu, struct KernelHead *pKernelHead) {
222     NV_ASSERT_OR_RETURN_PRECOMP(0, ((NvBool)(0 != 0)));
223 }
224 
225 NvBool kheadReadVblankIntrEnable_v03_00(struct OBJGPU *pGpu, struct KernelHead *pKernelHead);
226 
kheadReadVblankIntrEnable_ceaee8(struct OBJGPU * pGpu,struct KernelHead * pKernelHead)227 static inline NvBool kheadReadVblankIntrEnable_ceaee8(struct OBJGPU *pGpu, struct KernelHead *pKernelHead) {
228     NV_ASSERT_PRECOMP(0);
229     return ((NvBool)(0 != 0));
230 }
231 
kheadReadVblankIntrEnable_DISPATCH(struct OBJGPU * pGpu,struct KernelHead * pKernelHead)232 static inline NvBool kheadReadVblankIntrEnable_DISPATCH(struct OBJGPU *pGpu, struct KernelHead *pKernelHead) {
233     return pKernelHead->__kheadReadVblankIntrEnable__(pGpu, pKernelHead);
234 }
235 
236 NvBool kheadGetDisplayInitialized_KERNEL(struct OBJGPU *pGpu, struct KernelHead *pKernelHead);
237 
kheadGetDisplayInitialized_108313(struct OBJGPU * pGpu,struct KernelHead * pKernelHead)238 static inline NvBool kheadGetDisplayInitialized_108313(struct OBJGPU *pGpu, struct KernelHead *pKernelHead) {
239     NV_ASSERT_OR_RETURN_PRECOMP(0, ((NvBool)(0 != 0)));
240 }
241 
kheadGetDisplayInitialized_DISPATCH(struct OBJGPU * pGpu,struct KernelHead * pKernelHead)242 static inline NvBool kheadGetDisplayInitialized_DISPATCH(struct OBJGPU *pGpu, struct KernelHead *pKernelHead) {
243     return pKernelHead->__kheadGetDisplayInitialized__(pGpu, pKernelHead);
244 }
245 
246 void kheadWriteVblankIntrEnable_KERNEL(struct OBJGPU *pGpu, struct KernelHead *pKernelHead, NvBool arg0);
247 
kheadWriteVblankIntrEnable_e426af(struct OBJGPU * pGpu,struct KernelHead * pKernelHead,NvBool arg0)248 static inline void kheadWriteVblankIntrEnable_e426af(struct OBJGPU *pGpu, struct KernelHead *pKernelHead, NvBool arg0) {
249     NV_ASSERT_PRECOMP(0);
250     return;
251 }
252 
253 void kheadWriteVblankIntrEnable_v03_00(struct OBJGPU *pGpu, struct KernelHead *pKernelHead, NvBool arg0);
254 
kheadWriteVblankIntrEnable_DISPATCH(struct OBJGPU * pGpu,struct KernelHead * pKernelHead,NvBool arg0)255 static inline void kheadWriteVblankIntrEnable_DISPATCH(struct OBJGPU *pGpu, struct KernelHead *pKernelHead, NvBool arg0) {
256     pKernelHead->__kheadWriteVblankIntrEnable__(pGpu, pKernelHead, arg0);
257 }
258 
259 void kheadProcessVblankCallbacks_IMPL(struct OBJGPU *pGpu, struct KernelHead *pKernelHead, NvU32 arg0);
260 
kheadProcessVblankCallbacks_e426af(struct OBJGPU * pGpu,struct KernelHead * pKernelHead,NvU32 arg0)261 static inline void kheadProcessVblankCallbacks_e426af(struct OBJGPU *pGpu, struct KernelHead *pKernelHead, NvU32 arg0) {
262     NV_ASSERT_PRECOMP(0);
263     return;
264 }
265 
kheadProcessVblankCallbacks_DISPATCH(struct OBJGPU * pGpu,struct KernelHead * pKernelHead,NvU32 arg0)266 static inline void kheadProcessVblankCallbacks_DISPATCH(struct OBJGPU *pGpu, struct KernelHead *pKernelHead, NvU32 arg0) {
267     pKernelHead->__kheadProcessVblankCallbacks__(pGpu, pKernelHead, arg0);
268 }
269 
270 void kheadResetPendingVblank_KERNEL(struct OBJGPU *pGpu, struct KernelHead *pKernelHead, THREAD_STATE_NODE *arg0);
271 
kheadResetPendingVblank_e426af(struct OBJGPU * pGpu,struct KernelHead * pKernelHead,THREAD_STATE_NODE * arg0)272 static inline void kheadResetPendingVblank_e426af(struct OBJGPU *pGpu, struct KernelHead *pKernelHead, THREAD_STATE_NODE *arg0) {
273     NV_ASSERT_PRECOMP(0);
274     return;
275 }
276 
277 void kheadResetPendingVblank_v03_00(struct OBJGPU *pGpu, struct KernelHead *pKernelHead, THREAD_STATE_NODE *arg0);
278 
279 void kheadResetPendingVblank_v04_01(struct OBJGPU *pGpu, struct KernelHead *pKernelHead, THREAD_STATE_NODE *arg0);
280 
kheadResetPendingVblank_f2d351(struct OBJGPU * pGpu,struct KernelHead * pKernelHead,THREAD_STATE_NODE * arg0)281 static inline void kheadResetPendingVblank_f2d351(struct OBJGPU *pGpu, struct KernelHead *pKernelHead, THREAD_STATE_NODE *arg0) {
282     NV_ASSERT_PRECOMP(0);
283 }
284 
kheadResetPendingVblank_DISPATCH(struct OBJGPU * pGpu,struct KernelHead * pKernelHead,THREAD_STATE_NODE * arg0)285 static inline void kheadResetPendingVblank_DISPATCH(struct OBJGPU *pGpu, struct KernelHead *pKernelHead, THREAD_STATE_NODE *arg0) {
286     pKernelHead->__kheadResetPendingVblank__(pGpu, pKernelHead, arg0);
287 }
288 
289 NvBool kheadReadPendingVblank_KERNEL(struct OBJGPU *pGpu, struct KernelHead *pKernelHead, NvU32 *pCachedIntr, THREAD_STATE_NODE *pThreadState);
290 
kheadReadPendingVblank_108313(struct OBJGPU * pGpu,struct KernelHead * pKernelHead,NvU32 * pCachedIntr,THREAD_STATE_NODE * pThreadState)291 static inline NvBool kheadReadPendingVblank_108313(struct OBJGPU *pGpu, struct KernelHead *pKernelHead, NvU32 *pCachedIntr, THREAD_STATE_NODE *pThreadState) {
292     NV_ASSERT_OR_RETURN_PRECOMP(0, ((NvBool)(0 != 0)));
293 }
294 
295 NvBool kheadReadPendingVblank_v03_00(struct OBJGPU *pGpu, struct KernelHead *pKernelHead, NvU32 *pCachedIntr, THREAD_STATE_NODE *pThreadState);
296 
kheadReadPendingVblank_ceaee8(struct OBJGPU * pGpu,struct KernelHead * pKernelHead,NvU32 * pCachedIntr,THREAD_STATE_NODE * pThreadState)297 static inline NvBool kheadReadPendingVblank_ceaee8(struct OBJGPU *pGpu, struct KernelHead *pKernelHead, NvU32 *pCachedIntr, THREAD_STATE_NODE *pThreadState) {
298     NV_ASSERT_PRECOMP(0);
299     return ((NvBool)(0 != 0));
300 }
301 
kheadReadPendingVblank_DISPATCH(struct OBJGPU * pGpu,struct KernelHead * pKernelHead,NvU32 * pCachedIntr,THREAD_STATE_NODE * pThreadState)302 static inline NvBool kheadReadPendingVblank_DISPATCH(struct OBJGPU *pGpu, struct KernelHead *pKernelHead, NvU32 *pCachedIntr, THREAD_STATE_NODE *pThreadState) {
303     return pKernelHead->__kheadReadPendingVblank__(pGpu, pKernelHead, pCachedIntr, pThreadState);
304 }
305 
306 NvU32 kheadGetLoadVCounter_v03_00(struct OBJGPU *pGpu, struct KernelHead *pKernelHead);
307 
kheadGetLoadVCounter_4a4dee(struct OBJGPU * pGpu,struct KernelHead * pKernelHead)308 static inline NvU32 kheadGetLoadVCounter_4a4dee(struct OBJGPU *pGpu, struct KernelHead *pKernelHead) {
309     return 0;
310 }
311 
kheadGetLoadVCounter_DISPATCH(struct OBJGPU * pGpu,struct KernelHead * pKernelHead)312 static inline NvU32 kheadGetLoadVCounter_DISPATCH(struct OBJGPU *pGpu, struct KernelHead *pKernelHead) {
313     return pKernelHead->__kheadGetLoadVCounter__(pGpu, pKernelHead);
314 }
315 
316 NV_STATUS kheadConstruct_IMPL(struct KernelHead *arg_pKernelHead);
317 
318 #define __nvoc_kheadConstruct(arg_pKernelHead) kheadConstruct_IMPL(arg_pKernelHead)
319 void kheadAddVblankCallback_IMPL(struct OBJGPU *pGpu, struct KernelHead *pKernelHead, VBLANKCALLBACK *arg0);
320 
321 #ifdef __nvoc_kernel_head_h_disabled
kheadAddVblankCallback(struct OBJGPU * pGpu,struct KernelHead * pKernelHead,VBLANKCALLBACK * arg0)322 static inline void kheadAddVblankCallback(struct OBJGPU *pGpu, struct KernelHead *pKernelHead, VBLANKCALLBACK *arg0) {
323     NV_ASSERT_FAILED_PRECOMP("KernelHead was disabled!");
324 }
325 #else //__nvoc_kernel_head_h_disabled
326 #define kheadAddVblankCallback(pGpu, pKernelHead, arg0) kheadAddVblankCallback_IMPL(pGpu, pKernelHead, arg0)
327 #endif //__nvoc_kernel_head_h_disabled
328 
329 void kheadDeleteVblankCallback_IMPL(struct OBJGPU *pGpu, struct KernelHead *pKernelHead, VBLANKCALLBACK *arg0);
330 
331 #ifdef __nvoc_kernel_head_h_disabled
kheadDeleteVblankCallback(struct OBJGPU * pGpu,struct KernelHead * pKernelHead,VBLANKCALLBACK * arg0)332 static inline void kheadDeleteVblankCallback(struct OBJGPU *pGpu, struct KernelHead *pKernelHead, VBLANKCALLBACK *arg0) {
333     NV_ASSERT_FAILED_PRECOMP("KernelHead was disabled!");
334 }
335 #else //__nvoc_kernel_head_h_disabled
336 #define kheadDeleteVblankCallback(pGpu, pKernelHead, arg0) kheadDeleteVblankCallback_IMPL(pGpu, pKernelHead, arg0)
337 #endif //__nvoc_kernel_head_h_disabled
338 
339 void kheadPauseVblankCbNotifications_IMPL(struct OBJGPU *pGpu, struct KernelHead *pKernelHead, VBLANKCALLBACK *arg0);
340 
341 #ifdef __nvoc_kernel_head_h_disabled
kheadPauseVblankCbNotifications(struct OBJGPU * pGpu,struct KernelHead * pKernelHead,VBLANKCALLBACK * arg0)342 static inline void kheadPauseVblankCbNotifications(struct OBJGPU *pGpu, struct KernelHead *pKernelHead, VBLANKCALLBACK *arg0) {
343     NV_ASSERT_FAILED_PRECOMP("KernelHead was disabled!");
344 }
345 #else //__nvoc_kernel_head_h_disabled
346 #define kheadPauseVblankCbNotifications(pGpu, pKernelHead, arg0) kheadPauseVblankCbNotifications_IMPL(pGpu, pKernelHead, arg0)
347 #endif //__nvoc_kernel_head_h_disabled
348 
349 NvU32 kheadCheckVblankCallbacksQueued_IMPL(struct OBJGPU *pGpu, struct KernelHead *pKernelHead, NvU32 arg0, NvU32 *arg1);
350 
351 #ifdef __nvoc_kernel_head_h_disabled
kheadCheckVblankCallbacksQueued(struct OBJGPU * pGpu,struct KernelHead * pKernelHead,NvU32 arg0,NvU32 * arg1)352 static inline NvU32 kheadCheckVblankCallbacksQueued(struct OBJGPU *pGpu, struct KernelHead *pKernelHead, NvU32 arg0, NvU32 *arg1) {
353     NV_ASSERT_FAILED_PRECOMP("KernelHead was disabled!");
354     return 0;
355 }
356 #else //__nvoc_kernel_head_h_disabled
357 #define kheadCheckVblankCallbacksQueued(pGpu, pKernelHead, arg0, arg1) kheadCheckVblankCallbacksQueued_IMPL(pGpu, pKernelHead, arg0, arg1)
358 #endif //__nvoc_kernel_head_h_disabled
359 
360 NvU32 kheadReadVblankIntrState_IMPL(struct OBJGPU *pGpu, struct KernelHead *pKernelHead);
361 
362 #ifdef __nvoc_kernel_head_h_disabled
kheadReadVblankIntrState(struct OBJGPU * pGpu,struct KernelHead * pKernelHead)363 static inline NvU32 kheadReadVblankIntrState(struct OBJGPU *pGpu, struct KernelHead *pKernelHead) {
364     NV_ASSERT_FAILED_PRECOMP("KernelHead was disabled!");
365     return 0;
366 }
367 #else //__nvoc_kernel_head_h_disabled
368 #define kheadReadVblankIntrState(pGpu, pKernelHead) kheadReadVblankIntrState_IMPL(pGpu, pKernelHead)
369 #endif //__nvoc_kernel_head_h_disabled
370 
371 void kheadWriteVblankIntrState_IMPL(struct OBJGPU *pGpu, struct KernelHead *pKernelHead, NvU32 arg0);
372 
373 #ifdef __nvoc_kernel_head_h_disabled
kheadWriteVblankIntrState(struct OBJGPU * pGpu,struct KernelHead * pKernelHead,NvU32 arg0)374 static inline void kheadWriteVblankIntrState(struct OBJGPU *pGpu, struct KernelHead *pKernelHead, NvU32 arg0) {
375     NV_ASSERT_FAILED_PRECOMP("KernelHead was disabled!");
376 }
377 #else //__nvoc_kernel_head_h_disabled
378 #define kheadWriteVblankIntrState(pGpu, pKernelHead, arg0) kheadWriteVblankIntrState_IMPL(pGpu, pKernelHead, arg0)
379 #endif //__nvoc_kernel_head_h_disabled
380 
381 #undef PRIVATE_FIELD
382 
383 
384 #endif // KERNEL_HEAD_H
385 
386 #ifdef __cplusplus
387 } // extern "C"
388 #endif
389 
390 #endif // _G_KERNEL_HEAD_NVOC_H_
391