tbm_module: make tbm_module.h 44/260044/1 submit/tizen/20210618.025159
authorSooChan Lim <sc1.lim@samsung.com>
Fri, 18 Jun 2021 02:16:09 +0000 (11:16 +0900)
committerSooChan Lim <sc1.lim@samsung.com>
Fri, 18 Jun 2021 02:16:09 +0000 (11:16 +0900)
make tbm_module.h and move structures and symbols
form tbm_bufmgr_int.h to tbm_module.h

Change-Id: I3064ebb93c049daf36c834418e0b004761382191

src/tbm_bufmgr_int.h
src/tbm_module.h [new file with mode: 0644]

index b921fdc..22eae73 100644 (file)
@@ -59,6 +59,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #include <tbm_backend.h>
 #include <tbm_error.h>
 #include <hal/hal-tbm.h>
+#include "tbm_module.h"
 
 extern tbm_bufmgr gBufMgr;
 extern int b_dump_queue;
@@ -172,31 +173,6 @@ struct list_head {
        struct list_head *next;
 };
 
-typedef enum _tbm_module_type {
-       TBM_MODULE_TYPE_NONE,
-       TBM_MODULE_TYPE_HAL_TBM,
-       TBM_MODULE_TYPE_TBM_BACKEND,
-       TBM_MODULE_TYPE_BUFMGR_BACKEND,
-} tbm_module_type;
-
-typedef struct _tbm_module {
-       tbm_module_type type;
-
-       void *module_data;                         /* backend module */
-       tbm_bufmgr_backend   backend;              /* bufmgr backend (will be DEPRECATED) */
-
-       tbm_backend_module       *backend_module_data;  /* backend module data */
-       tbm_backend_bufmgr_data  *bufmgr_data;          /* backend data of the backend module */
-       tbm_backend_bufmgr_func  *bufmgr_func;          /* backend functions for bufmgr */
-       tbm_backend_bo_func      *bo_func;              /* backend functions for bo */
-
-       int use_hal_tbm;                                /* use hal-api-tbm */
-       int auth_wl_socket_created;                     /* create wayland socket for authenticated drm_fd */
-       int auth_fd;
-       hal_tbm_backend          *hal_backend;          /* hal-api-tbm backend */
-       hal_tbm_bufmgr           *hal_bufmgr;           /* hal-api-tbm bufmgr */
-} tbm_module;
-
 /**
  * @brief tbm_bo : buffer object of Tizen Buffer Manager
  */
@@ -357,28 +333,4 @@ tbm_bo tbm_bufmgr_internal_alloc_bo_with_bo_data(tbm_bufmgr bufmgr, tbm_backend_
 tbm_bo tbm_bufmgr_internal_import_bo_with_key(tbm_bufmgr bufmgr, tbm_key key, tbm_error_e *error);
 tbm_bo tbm_bufmgr_internal_import_bo_with_fd(tbm_bufmgr bufmgr, tbm_fd fd, tbm_error_e *error);
 
-/* tbm_module functions */
-tbm_module *tbm_module_load(int fd);
-void        tbm_module_unload(tbm_module *module);
-
-int                  tbm_module_bufmgr_get_capabilities(tbm_module *module, tbm_error_e *error);
-tbm_error_e          tbm_module_bufmgr_bind_native_display(tbm_module *module, void *native_display);
-tbm_error_e          tbm_module_bufmgr_get_supported_formats(tbm_module *module, uint32_t **formats, uint32_t *num);
-tbm_error_e          tbm_module_bufmgr_get_plane_data(tbm_module *module, int format, int plane_idx, uint32_t w, uint32_t h, uint32_t *size, uint32_t *offset, uint32_t *pitch, int *bo_idx);
-tbm_backend_bo_data *tbm_module_bufmgr_alloc_bo(tbm_module *module, tbm_bo bo, int size, int flags, tbm_error_e *error);
-tbm_backend_bo_data *tbm_module_bufmgr_alloc_bo_with_format(tbm_module *module, int format, int bo_idx, int width, int height, int bpp, tbm_bo_memory_type flags, tbm_error_e *error);
-tbm_backend_bo_data *tbm_module_bufmgr_import_bo_with_fd(tbm_module *module, tbm_bo bo, tbm_fd fd, tbm_error_e *error);
-tbm_backend_bo_data *tbm_module_bufmgr_import_bo_with_key(tbm_module *module, tbm_bo bo, tbm_key key, tbm_error_e *error);
-
-void          tbm_module_bo_free(tbm_module *module, tbm_bo bo, tbm_backend_bo_data *bo_data, int get_from_hal_surface);
-int           tbm_module_bo_get_size(tbm_module *module, tbm_bo bo, tbm_backend_bo_data *bo_data, tbm_error_e *error);
-int           tbm_module_bo_get_memory_types(tbm_module *module, tbm_bo bo, tbm_backend_bo_data *bo_data, tbm_error_e *error);
-tbm_bo_handle tbm_module_bo_get_handle(tbm_module *module, tbm_bo bo, tbm_backend_bo_data *bo_data, int device, tbm_error_e *error);
-tbm_bo_handle tbm_module_bo_map(tbm_module *module, tbm_bo bo, tbm_backend_bo_data *bo_data, int device, int opt, tbm_error_e *error);
-tbm_error_e   tbm_module_bo_unmap(tbm_module *module, tbm_bo bo, tbm_backend_bo_data *bo_data);
-tbm_error_e   tbm_module_bo_lock(tbm_module *module, tbm_bo bo, tbm_backend_bo_data *bo_data, int device, int opt);
-tbm_error_e   tbm_module_bo_unlock(tbm_module *module, tbm_bo bo, tbm_backend_bo_data *bo_data);
-tbm_fd        tbm_module_bo_export_fd(tbm_module *module, tbm_bo bo, tbm_backend_bo_data *bo_data, tbm_error_e *error);
-tbm_key       tbm_module_bo_export_key(tbm_module *module, tbm_bo bo, tbm_backend_bo_data *bo_data, tbm_error_e *error);
-
 #endif /* _TBM_BUFMGR_INT_H_ */
diff --git a/src/tbm_module.h b/src/tbm_module.h
new file mode 100644 (file)
index 0000000..92ac305
--- /dev/null
@@ -0,0 +1,95 @@
+/**************************************************************************
+
+libtbm
+
+Copyright 2012-2021 Samsung Electronics co., Ltd. All Rights Reserved.
+
+Contact: SooChan Lim <sc1.lim@samsung.com>
+         Changyeon Lee <cyeon.lee@samsung.com>
+
+Permission is hereby granted, free of charge, to any person obtaining a
+copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sub license, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice (including the
+next paragraph) shall be included in all copies or substantial portions
+of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
+IN NO EVENT SHALL PRECISION INSIGHT AND/OR ITS SUPPLIERS BE LIABLE FOR
+ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
+TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+**************************************************************************/
+
+#ifndef _TBM_MODULE_H_
+#define _TBM_MODULE_H_
+
+#include <tbm_bufmgr.h>
+#include <tbm_bo.h>
+#include <tbm_surface.h>
+#include <tbm_surface_internal.h>
+#include <tbm_surface_queue.h>
+#include <tbm_log.h>
+#include <tbm_bufmgr_backend.h>
+#include <tbm_backend.h>
+#include <tbm_error.h>
+#include <hal/hal-tbm.h>
+
+typedef enum _tbm_module_type {
+       TBM_MODULE_TYPE_NONE,
+       TBM_MODULE_TYPE_HAL_TBM,
+       TBM_MODULE_TYPE_TBM_BACKEND,
+       TBM_MODULE_TYPE_BUFMGR_BACKEND,
+} tbm_module_type;
+
+typedef struct _tbm_module {
+       tbm_module_type type;
+
+       void *module_data;                         /* backend module */
+       tbm_bufmgr_backend   backend;              /* bufmgr backend (will be DEPRECATED) */
+
+       tbm_backend_module       *backend_module_data;  /* backend module data */
+       tbm_backend_bufmgr_data  *bufmgr_data;          /* backend data of the backend module */
+       tbm_backend_bufmgr_func  *bufmgr_func;          /* backend functions for bufmgr */
+       tbm_backend_bo_func      *bo_func;              /* backend functions for bo */
+
+       int use_hal_tbm;                                /* use hal-api-tbm */
+       int auth_wl_socket_created;                     /* create wayland socket for authenticated drm_fd */
+       int auth_fd;
+       hal_tbm_backend          *hal_backend;          /* hal-api-tbm backend */
+       hal_tbm_bufmgr           *hal_bufmgr;           /* hal-api-tbm bufmgr */
+} tbm_module;
+
+/* tbm_module functions */
+tbm_module *tbm_module_load(int fd);
+void        tbm_module_unload(tbm_module *module);
+
+int                  tbm_module_bufmgr_get_capabilities(tbm_module *module, tbm_error_e *error);
+tbm_error_e          tbm_module_bufmgr_bind_native_display(tbm_module *module, void *native_display);
+tbm_error_e          tbm_module_bufmgr_get_supported_formats(tbm_module *module, uint32_t **formats, uint32_t *num);
+tbm_error_e          tbm_module_bufmgr_get_plane_data(tbm_module *module, int format, int plane_idx, uint32_t w, uint32_t h, uint32_t *size, uint32_t *offset, uint32_t *pitch, int *bo_idx);
+tbm_backend_bo_data *tbm_module_bufmgr_alloc_bo(tbm_module *module, tbm_bo bo, int size, int flags, tbm_error_e *error);
+tbm_backend_bo_data *tbm_module_bufmgr_alloc_bo_with_format(tbm_module *module, int format, int bo_idx, int width, int height, int bpp, tbm_bo_memory_type flags, tbm_error_e *error);
+tbm_backend_bo_data *tbm_module_bufmgr_import_bo_with_fd(tbm_module *module, tbm_bo bo, tbm_fd fd, tbm_error_e *error);
+tbm_backend_bo_data *tbm_module_bufmgr_import_bo_with_key(tbm_module *module, tbm_bo bo, tbm_key key, tbm_error_e *error);
+
+void          tbm_module_bo_free(tbm_module *module, tbm_bo bo, tbm_backend_bo_data *bo_data, int get_from_hal_surface);
+int           tbm_module_bo_get_size(tbm_module *module, tbm_bo bo, tbm_backend_bo_data *bo_data, tbm_error_e *error);
+int           tbm_module_bo_get_memory_types(tbm_module *module, tbm_bo bo, tbm_backend_bo_data *bo_data, tbm_error_e *error);
+tbm_bo_handle tbm_module_bo_get_handle(tbm_module *module, tbm_bo bo, tbm_backend_bo_data *bo_data, int device, tbm_error_e *error);
+tbm_bo_handle tbm_module_bo_map(tbm_module *module, tbm_bo bo, tbm_backend_bo_data *bo_data, int device, int opt, tbm_error_e *error);
+tbm_error_e   tbm_module_bo_unmap(tbm_module *module, tbm_bo bo, tbm_backend_bo_data *bo_data);
+tbm_error_e   tbm_module_bo_lock(tbm_module *module, tbm_bo bo, tbm_backend_bo_data *bo_data, int device, int opt);
+tbm_error_e   tbm_module_bo_unlock(tbm_module *module, tbm_bo bo, tbm_backend_bo_data *bo_data);
+tbm_fd        tbm_module_bo_export_fd(tbm_module *module, tbm_bo bo, tbm_backend_bo_data *bo_data, tbm_error_e *error);
+tbm_key       tbm_module_bo_export_key(tbm_module *module, tbm_bo bo, tbm_backend_bo_data *bo_data, tbm_error_e *error);
+
+#endif // _TBM_MODULE_H_
\ No newline at end of file