xref: /aosp_15_r20/external/crosvm/rutabaga_gfx/src/gfxstream_stub.rs (revision bb4ee6a4ae7042d18b07a98463b9c8b875e44b39)
1 // Copyright 2022 The ChromiumOS Authors
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 //! Stub impplementation of the native interface of gfxstream_backend.so.
6 //!
7 //! This implementation is used to enable the gfxstream feature of crosvm to be compiled without
8 //! gfxstream_backend.so available. It is only used for testing purposes and not functional
9 //! at runtime.
10 
11 #![cfg(feature = "gfxstream_stub")]
12 
13 use std::os::raw::c_char;
14 use std::os::raw::c_int;
15 use std::os::raw::c_uint;
16 use std::os::raw::c_void;
17 
18 use crate::generated::virgl_renderer_bindings::iovec;
19 use crate::gfxstream::stream_renderer_box;
20 use crate::gfxstream::stream_renderer_command;
21 use crate::gfxstream::stream_renderer_create_blob;
22 use crate::gfxstream::stream_renderer_fence;
23 use crate::gfxstream::stream_renderer_handle;
24 use crate::gfxstream::stream_renderer_param;
25 use crate::gfxstream::stream_renderer_resource_create_args;
26 use crate::gfxstream::stream_renderer_vulkan_info;
27 
28 #[no_mangle]
stream_renderer_init( _stream_renderer_params: *mut stream_renderer_param, _num_params: u64, ) -> c_int29 extern "C" fn stream_renderer_init(
30     _stream_renderer_params: *mut stream_renderer_param,
31     _num_params: u64,
32 ) -> c_int {
33     unimplemented!();
34 }
35 
36 #[no_mangle]
stream_renderer_teardown()37 extern "C" fn stream_renderer_teardown() {
38     unimplemented!();
39 }
40 
41 #[no_mangle]
stream_renderer_resource_create( _args: *mut stream_renderer_resource_create_args, _iov: *mut iovec, _num_iovs: u32, ) -> c_int42 extern "C" fn stream_renderer_resource_create(
43     _args: *mut stream_renderer_resource_create_args,
44     _iov: *mut iovec,
45     _num_iovs: u32,
46 ) -> c_int {
47     unimplemented!();
48 }
49 
50 #[no_mangle]
stream_renderer_resource_unref(_res_handle: u32)51 extern "C" fn stream_renderer_resource_unref(_res_handle: u32) {
52     unimplemented!();
53 }
54 #[no_mangle]
stream_renderer_context_destroy(_handle: u32)55 extern "C" fn stream_renderer_context_destroy(_handle: u32) {
56     unimplemented!();
57 }
58 #[no_mangle]
stream_renderer_transfer_read_iov( _handle: u32, _ctx_id: u32, _level: u32, _stride: u32, _layer_stride: u32, _box_: *mut stream_renderer_box, _offset: u64, _iov: *mut iovec, _iovec_cnt: c_int, ) -> c_int59 extern "C" fn stream_renderer_transfer_read_iov(
60     _handle: u32,
61     _ctx_id: u32,
62     _level: u32,
63     _stride: u32,
64     _layer_stride: u32,
65     _box_: *mut stream_renderer_box,
66     _offset: u64,
67     _iov: *mut iovec,
68     _iovec_cnt: c_int,
69 ) -> c_int {
70     unimplemented!();
71 }
72 #[no_mangle]
stream_renderer_transfer_write_iov( _handle: u32, _ctx_id: u32, _level: c_int, _stride: u32, _layer_stride: u32, _box_: *mut stream_renderer_box, _offset: u64, _iovec: *mut iovec, _iovec_cnt: c_uint, ) -> c_int73 extern "C" fn stream_renderer_transfer_write_iov(
74     _handle: u32,
75     _ctx_id: u32,
76     _level: c_int,
77     _stride: u32,
78     _layer_stride: u32,
79     _box_: *mut stream_renderer_box,
80     _offset: u64,
81     _iovec: *mut iovec,
82     _iovec_cnt: c_uint,
83 ) -> c_int {
84     unimplemented!();
85 }
86 #[no_mangle]
stream_renderer_submit_cmd(_cmd: *const stream_renderer_command) -> c_int87 extern "C" fn stream_renderer_submit_cmd(_cmd: *const stream_renderer_command) -> c_int {
88     unimplemented!();
89 }
90 #[no_mangle]
stream_renderer_resource_attach_iov( _res_handle: c_int, _iov: *mut iovec, _num_iovs: c_int, ) -> c_int91 extern "C" fn stream_renderer_resource_attach_iov(
92     _res_handle: c_int,
93     _iov: *mut iovec,
94     _num_iovs: c_int,
95 ) -> c_int {
96     unimplemented!();
97 }
98 #[no_mangle]
stream_renderer_resource_detach_iov( _res_handle: c_int, _iov: *mut *mut iovec, _num_iovs: *mut c_int, )99 extern "C" fn stream_renderer_resource_detach_iov(
100     _res_handle: c_int,
101     _iov: *mut *mut iovec,
102     _num_iovs: *mut c_int,
103 ) {
104     unimplemented!();
105 }
106 #[no_mangle]
stream_renderer_ctx_attach_resource(_ctx_id: c_int, _res_handle: c_int)107 extern "C" fn stream_renderer_ctx_attach_resource(_ctx_id: c_int, _res_handle: c_int) {
108     unimplemented!();
109 }
110 #[no_mangle]
stream_renderer_ctx_detach_resource(_ctx_id: c_int, _res_handle: c_int)111 extern "C" fn stream_renderer_ctx_detach_resource(_ctx_id: c_int, _res_handle: c_int) {
112     unimplemented!();
113 }
114 #[no_mangle]
stream_renderer_get_cap_set(_set: u32, _max_ver: *mut u32, _max_size: *mut u32)115 extern "C" fn stream_renderer_get_cap_set(_set: u32, _max_ver: *mut u32, _max_size: *mut u32) {
116     unimplemented!();
117 }
118 #[no_mangle]
stream_renderer_fill_caps(_set: u32, _version: u32, _caps: *mut c_void)119 extern "C" fn stream_renderer_fill_caps(_set: u32, _version: u32, _caps: *mut c_void) {
120     unimplemented!();
121 }
122 
123 #[no_mangle]
stream_renderer_flush(_res_handle: u32)124 extern "C" fn stream_renderer_flush(_res_handle: u32) {
125     unimplemented!();
126 }
127 #[no_mangle]
stream_renderer_create_blob( _ctx_id: u32, _res_handle: u32, _create_blob: *const stream_renderer_create_blob, _iovecs: *const iovec, _num_iovs: u32, _handle: *const stream_renderer_handle, ) -> c_int128 extern "C" fn stream_renderer_create_blob(
129     _ctx_id: u32,
130     _res_handle: u32,
131     _create_blob: *const stream_renderer_create_blob,
132     _iovecs: *const iovec,
133     _num_iovs: u32,
134     _handle: *const stream_renderer_handle,
135 ) -> c_int {
136     unimplemented!();
137 }
138 
139 #[no_mangle]
stream_renderer_export_blob( _res_handle: u32, _handle: *mut stream_renderer_handle, ) -> c_int140 extern "C" fn stream_renderer_export_blob(
141     _res_handle: u32,
142     _handle: *mut stream_renderer_handle,
143 ) -> c_int {
144     unimplemented!();
145 }
146 #[no_mangle]
stream_renderer_resource_map( _res_handle: u32, _map: *mut *mut c_void, _out_size: *mut u64, ) -> c_int147 extern "C" fn stream_renderer_resource_map(
148     _res_handle: u32,
149     _map: *mut *mut c_void,
150     _out_size: *mut u64,
151 ) -> c_int {
152     unimplemented!();
153 }
154 #[no_mangle]
stream_renderer_resource_unmap(_res_handle: u32) -> c_int155 extern "C" fn stream_renderer_resource_unmap(_res_handle: u32) -> c_int {
156     unimplemented!();
157 }
158 #[no_mangle]
stream_renderer_resource_map_info(_res_handle: u32, _map_info: *mut u32) -> c_int159 extern "C" fn stream_renderer_resource_map_info(_res_handle: u32, _map_info: *mut u32) -> c_int {
160     unimplemented!();
161 }
162 #[no_mangle]
stream_renderer_vulkan_info( _res_handle: u32, _vulkan_info: *mut stream_renderer_vulkan_info, ) -> c_int163 extern "C" fn stream_renderer_vulkan_info(
164     _res_handle: u32,
165     _vulkan_info: *mut stream_renderer_vulkan_info,
166 ) -> c_int {
167     unimplemented!();
168 }
169 #[no_mangle]
stream_renderer_context_create( _handle: u32, _nlen: u32, _name: *const c_char, _context_init: u32, ) -> c_int170 extern "C" fn stream_renderer_context_create(
171     _handle: u32,
172     _nlen: u32,
173     _name: *const c_char,
174     _context_init: u32,
175 ) -> c_int {
176     unimplemented!();
177 }
178 #[no_mangle]
179 
stream_renderer_create_fence(_fence: *const stream_renderer_fence) -> c_int180 extern "C" fn stream_renderer_create_fence(_fence: *const stream_renderer_fence) -> c_int {
181     unimplemented!();
182 }
183 
184 #[cfg(gfxstream_unstable)]
185 #[no_mangle]
stream_renderer_suspend() -> c_int186 extern "C" fn stream_renderer_suspend() -> c_int {
187     unimplemented!();
188 }
189 
190 #[cfg(gfxstream_unstable)]
191 #[no_mangle]
stream_renderer_snapshot(dir: *const c_char) -> c_int192 extern "C" fn stream_renderer_snapshot(dir: *const c_char) -> c_int {
193     unimplemented!();
194 }
195 
196 #[cfg(gfxstream_unstable)]
197 #[no_mangle]
stream_renderer_restore(dir: *const c_char) -> c_int198 extern "C" fn stream_renderer_restore(dir: *const c_char) -> c_int {
199     unimplemented!();
200 }
201 
202 #[cfg(gfxstream_unstable)]
203 #[no_mangle]
stream_renderer_resume() -> c_int204 extern "C" fn stream_renderer_resume() -> c_int {
205     unimplemented!();
206 }
207