1 /* 2 * Copyright (c) 2008-2024 Broadcom. All Rights Reserved. 3 * The term “Broadcom” refers to Broadcom Inc. 4 * and/or its subsidiaries. 5 * SPDX-License-Identifier: MIT 6 */ 7 8 #ifndef SVGA_BUFFER_UPLOAD_H 9 #define SVGA_BUFFER_UPLOAD_H 10 11 12 void 13 svga_buffer_upload_flush(struct svga_context *svga, 14 struct svga_buffer *sbuf); 15 16 void 17 svga_buffer_add_range(struct svga_buffer *sbuf, 18 unsigned start, 19 unsigned end); 20 21 enum pipe_error 22 svga_buffer_create_hw_storage(struct svga_screen *ss, 23 struct svga_buffer *sbuf, 24 unsigned bind_flags); 25 26 void 27 svga_buffer_destroy_hw_storage(struct svga_screen *ss, 28 struct svga_buffer *sbuf); 29 30 enum pipe_error 31 svga_buffer_create_host_surface(struct svga_screen *ss, 32 struct svga_buffer *sbuf, 33 unsigned bind_flags); 34 35 enum pipe_error 36 svga_buffer_recreate_host_surface(struct svga_context *svga, 37 struct svga_buffer *sbuf, 38 unsigned bind_flags); 39 40 struct svga_buffer_surface * 41 svga_buffer_add_host_surface(struct svga_buffer *sbuf, 42 struct svga_winsys_surface *handle, 43 struct svga_host_surface_cache_key *key, 44 unsigned bind_flags); 45 46 void 47 svga_buffer_bind_host_surface(struct svga_context *svga, 48 struct svga_buffer *sbuf, 49 struct svga_buffer_surface *bufsurf); 50 51 enum pipe_error 52 svga_buffer_validate_host_surface(struct svga_context *svga, 53 struct svga_buffer *sbuf, 54 unsigned bind_flags); 55 56 void 57 svga_buffer_destroy_host_surface(struct svga_screen *ss, 58 struct svga_buffer *sbuf); 59 60 61 62 63 #endif /* SVGA_BUFFER_H */ 64