• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 
55 #[no_mangle]
stream_renderer_context_destroy(_handle: u32)56 extern "C" fn stream_renderer_context_destroy(_handle: u32) {
57     unimplemented!();
58 }
59 
60 #[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_int61 extern "C" fn stream_renderer_transfer_read_iov(
62     _handle: u32,
63     _ctx_id: u32,
64     _level: u32,
65     _stride: u32,
66     _layer_stride: u32,
67     _box_: *mut stream_renderer_box,
68     _offset: u64,
69     _iov: *mut iovec,
70     _iovec_cnt: c_int,
71 ) -> c_int {
72     unimplemented!();
73 }
74 
75 #[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_int76 extern "C" fn stream_renderer_transfer_write_iov(
77     _handle: u32,
78     _ctx_id: u32,
79     _level: c_int,
80     _stride: u32,
81     _layer_stride: u32,
82     _box_: *mut stream_renderer_box,
83     _offset: u64,
84     _iovec: *mut iovec,
85     _iovec_cnt: c_uint,
86 ) -> c_int {
87     unimplemented!();
88 }
89 
90 #[no_mangle]
stream_renderer_submit_cmd(_cmd: *const stream_renderer_command) -> c_int91 extern "C" fn stream_renderer_submit_cmd(_cmd: *const stream_renderer_command) -> c_int {
92     unimplemented!();
93 }
94 
95 #[no_mangle]
stream_renderer_resource_attach_iov( _res_handle: c_int, _iov: *mut iovec, _num_iovs: c_int, ) -> c_int96 extern "C" fn stream_renderer_resource_attach_iov(
97     _res_handle: c_int,
98     _iov: *mut iovec,
99     _num_iovs: c_int,
100 ) -> c_int {
101     unimplemented!();
102 }
103 
104 #[no_mangle]
stream_renderer_resource_detach_iov( _res_handle: c_int, _iov: *mut *mut iovec, _num_iovs: *mut c_int, )105 extern "C" fn stream_renderer_resource_detach_iov(
106     _res_handle: c_int,
107     _iov: *mut *mut iovec,
108     _num_iovs: *mut c_int,
109 ) {
110     unimplemented!();
111 }
112 
113 #[no_mangle]
stream_renderer_ctx_attach_resource(_ctx_id: c_int, _res_handle: c_int)114 extern "C" fn stream_renderer_ctx_attach_resource(_ctx_id: c_int, _res_handle: c_int) {
115     unimplemented!();
116 }
117 
118 #[no_mangle]
stream_renderer_ctx_detach_resource(_ctx_id: c_int, _res_handle: c_int)119 extern "C" fn stream_renderer_ctx_detach_resource(_ctx_id: c_int, _res_handle: c_int) {
120     unimplemented!();
121 }
122 
123 #[no_mangle]
stream_renderer_get_cap_set(_set: u32, _max_ver: *mut u32, _max_size: *mut u32)124 extern "C" fn stream_renderer_get_cap_set(_set: u32, _max_ver: *mut u32, _max_size: *mut u32) {
125     unimplemented!();
126 }
127 
128 #[no_mangle]
stream_renderer_fill_caps(_set: u32, _version: u32, _caps: *mut c_void)129 extern "C" fn stream_renderer_fill_caps(_set: u32, _version: u32, _caps: *mut c_void) {
130     unimplemented!();
131 }
132 
133 #[no_mangle]
stream_renderer_flush(_res_handle: u32)134 extern "C" fn stream_renderer_flush(_res_handle: u32) {
135     unimplemented!();
136 }
137 
138 #[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_int139 extern "C" fn stream_renderer_create_blob(
140     _ctx_id: u32,
141     _res_handle: u32,
142     _create_blob: *const stream_renderer_create_blob,
143     _iovecs: *const iovec,
144     _num_iovs: u32,
145     _handle: *const stream_renderer_handle,
146 ) -> c_int {
147     unimplemented!();
148 }
149 
150 #[no_mangle]
stream_renderer_export_blob( _res_handle: u32, _handle: *mut stream_renderer_handle, ) -> c_int151 extern "C" fn stream_renderer_export_blob(
152     _res_handle: u32,
153     _handle: *mut stream_renderer_handle,
154 ) -> c_int {
155     unimplemented!();
156 }
157 
158 #[no_mangle]
stream_renderer_resource_map( _res_handle: u32, _map: *mut *mut c_void, _out_size: *mut u64, ) -> c_int159 extern "C" fn stream_renderer_resource_map(
160     _res_handle: u32,
161     _map: *mut *mut c_void,
162     _out_size: *mut u64,
163 ) -> c_int {
164     unimplemented!();
165 }
166 
167 #[no_mangle]
stream_renderer_resource_unmap(_res_handle: u32) -> c_int168 extern "C" fn stream_renderer_resource_unmap(_res_handle: u32) -> c_int {
169     unimplemented!();
170 }
171 
172 #[no_mangle]
stream_renderer_resource_map_info(_res_handle: u32, _map_info: *mut u32) -> c_int173 extern "C" fn stream_renderer_resource_map_info(_res_handle: u32, _map_info: *mut u32) -> c_int {
174     unimplemented!();
175 }
176 
177 #[no_mangle]
stream_renderer_vulkan_info( _res_handle: u32, _vulkan_info: *mut stream_renderer_vulkan_info, ) -> c_int178 extern "C" fn stream_renderer_vulkan_info(
179     _res_handle: u32,
180     _vulkan_info: *mut stream_renderer_vulkan_info,
181 ) -> c_int {
182     unimplemented!();
183 }
184 
185 #[no_mangle]
stream_renderer_context_create( _handle: u32, _nlen: u32, _name: *const c_char, _context_init: u32, ) -> c_int186 extern "C" fn stream_renderer_context_create(
187     _handle: u32,
188     _nlen: u32,
189     _name: *const c_char,
190     _context_init: u32,
191 ) -> c_int {
192     unimplemented!();
193 }
194 
195 #[no_mangle]
stream_renderer_create_fence(_fence: *const stream_renderer_fence) -> c_int196 extern "C" fn stream_renderer_create_fence(_fence: *const stream_renderer_fence) -> c_int {
197     unimplemented!();
198 }
199 
200 #[cfg(gfxstream_unstable)]
201 #[no_mangle]
stream_renderer_suspend() -> c_int202 extern "C" fn stream_renderer_suspend() -> c_int {
203     unimplemented!();
204 }
205 
206 #[cfg(gfxstream_unstable)]
207 #[no_mangle]
stream_renderer_snapshot(dir: *const c_char) -> c_int208 extern "C" fn stream_renderer_snapshot(dir: *const c_char) -> c_int {
209     unimplemented!();
210 }
211 
212 #[cfg(gfxstream_unstable)]
213 #[no_mangle]
stream_renderer_restore(dir: *const c_char) -> c_int214 extern "C" fn stream_renderer_restore(dir: *const c_char) -> c_int {
215     unimplemented!();
216 }
217 
218 #[cfg(gfxstream_unstable)]
219 #[no_mangle]
stream_renderer_resume() -> c_int220 extern "C" fn stream_renderer_resume() -> c_int {
221     unimplemented!();
222 }
223