xref: /aosp_15_r20/external/virglrenderer/src/venus/vkr_renderer.h (revision bbecb9d118dfdb95f99bd754f8fa9be01f189df3)
1*bbecb9d1SAndroid Build Coastguard Worker /*
2*bbecb9d1SAndroid Build Coastguard Worker  * Copyright 2020 Google LLC
3*bbecb9d1SAndroid Build Coastguard Worker  * SPDX-License-Identifier: MIT
4*bbecb9d1SAndroid Build Coastguard Worker  */
5*bbecb9d1SAndroid Build Coastguard Worker 
6*bbecb9d1SAndroid Build Coastguard Worker #ifndef VKR_RENDERER_H
7*bbecb9d1SAndroid Build Coastguard Worker #define VKR_RENDERER_H
8*bbecb9d1SAndroid Build Coastguard Worker 
9*bbecb9d1SAndroid Build Coastguard Worker #include "config.h"
10*bbecb9d1SAndroid Build Coastguard Worker 
11*bbecb9d1SAndroid Build Coastguard Worker #include <stddef.h>
12*bbecb9d1SAndroid Build Coastguard Worker #include <stdint.h>
13*bbecb9d1SAndroid Build Coastguard Worker 
14*bbecb9d1SAndroid Build Coastguard Worker #include "util/os_misc.h"
15*bbecb9d1SAndroid Build Coastguard Worker #include "virgl_util.h"
16*bbecb9d1SAndroid Build Coastguard Worker 
17*bbecb9d1SAndroid Build Coastguard Worker #define VKR_RENDERER_THREAD_SYNC (1u << 0)
18*bbecb9d1SAndroid Build Coastguard Worker #define VKR_RENDERER_ASYNC_FENCE_CB (1u << 1)
19*bbecb9d1SAndroid Build Coastguard Worker #define VKR_RENDERER_RENDER_SERVER (1u << 2)
20*bbecb9d1SAndroid Build Coastguard Worker 
21*bbecb9d1SAndroid Build Coastguard Worker struct virgl_context;
22*bbecb9d1SAndroid Build Coastguard Worker 
23*bbecb9d1SAndroid Build Coastguard Worker #ifdef ENABLE_VENUS
24*bbecb9d1SAndroid Build Coastguard Worker 
25*bbecb9d1SAndroid Build Coastguard Worker int
26*bbecb9d1SAndroid Build Coastguard Worker vkr_renderer_init(uint32_t flags);
27*bbecb9d1SAndroid Build Coastguard Worker 
28*bbecb9d1SAndroid Build Coastguard Worker void
29*bbecb9d1SAndroid Build Coastguard Worker vkr_renderer_fini(void);
30*bbecb9d1SAndroid Build Coastguard Worker 
31*bbecb9d1SAndroid Build Coastguard Worker void
32*bbecb9d1SAndroid Build Coastguard Worker vkr_renderer_reset(void);
33*bbecb9d1SAndroid Build Coastguard Worker 
34*bbecb9d1SAndroid Build Coastguard Worker size_t
35*bbecb9d1SAndroid Build Coastguard Worker vkr_get_capset(void *capset);
36*bbecb9d1SAndroid Build Coastguard Worker 
37*bbecb9d1SAndroid Build Coastguard Worker struct virgl_context *
38*bbecb9d1SAndroid Build Coastguard Worker vkr_context_create(size_t debug_len, const char *debug_name);
39*bbecb9d1SAndroid Build Coastguard Worker 
40*bbecb9d1SAndroid Build Coastguard Worker #else /* ENABLE_VENUS */
41*bbecb9d1SAndroid Build Coastguard Worker 
42*bbecb9d1SAndroid Build Coastguard Worker #include <stdio.h>
43*bbecb9d1SAndroid Build Coastguard Worker 
44*bbecb9d1SAndroid Build Coastguard Worker static inline int
vkr_renderer_init(UNUSED uint32_t flags)45*bbecb9d1SAndroid Build Coastguard Worker vkr_renderer_init(UNUSED uint32_t flags)
46*bbecb9d1SAndroid Build Coastguard Worker {
47*bbecb9d1SAndroid Build Coastguard Worker    virgl_log("Vulkan support was not enabled in virglrenderer\n");
48*bbecb9d1SAndroid Build Coastguard Worker    return -1;
49*bbecb9d1SAndroid Build Coastguard Worker }
50*bbecb9d1SAndroid Build Coastguard Worker 
51*bbecb9d1SAndroid Build Coastguard Worker static inline void
vkr_renderer_fini(void)52*bbecb9d1SAndroid Build Coastguard Worker vkr_renderer_fini(void)
53*bbecb9d1SAndroid Build Coastguard Worker {
54*bbecb9d1SAndroid Build Coastguard Worker }
55*bbecb9d1SAndroid Build Coastguard Worker 
56*bbecb9d1SAndroid Build Coastguard Worker static inline void
vkr_renderer_reset(void)57*bbecb9d1SAndroid Build Coastguard Worker vkr_renderer_reset(void)
58*bbecb9d1SAndroid Build Coastguard Worker {
59*bbecb9d1SAndroid Build Coastguard Worker }
60*bbecb9d1SAndroid Build Coastguard Worker 
61*bbecb9d1SAndroid Build Coastguard Worker static inline size_t
vkr_get_capset(UNUSED void * capset)62*bbecb9d1SAndroid Build Coastguard Worker vkr_get_capset(UNUSED void *capset)
63*bbecb9d1SAndroid Build Coastguard Worker {
64*bbecb9d1SAndroid Build Coastguard Worker    return 0;
65*bbecb9d1SAndroid Build Coastguard Worker }
66*bbecb9d1SAndroid Build Coastguard Worker 
67*bbecb9d1SAndroid Build Coastguard Worker static inline struct virgl_context *
vkr_context_create(UNUSED size_t debug_len,UNUSED const char * debug_name)68*bbecb9d1SAndroid Build Coastguard Worker vkr_context_create(UNUSED size_t debug_len, UNUSED const char *debug_name)
69*bbecb9d1SAndroid Build Coastguard Worker {
70*bbecb9d1SAndroid Build Coastguard Worker    return NULL;
71*bbecb9d1SAndroid Build Coastguard Worker }
72*bbecb9d1SAndroid Build Coastguard Worker 
73*bbecb9d1SAndroid Build Coastguard Worker #endif /* ENABLE_VENUS */
74*bbecb9d1SAndroid Build Coastguard Worker 
75*bbecb9d1SAndroid Build Coastguard Worker #endif /* VKR_RENDERER_H */
76