tbm_bufmgr: use tbm_module 07/260307/1
authorSooChan Lim <sc1.lim@samsung.com>
Tue, 22 Jun 2021 03:25:31 +0000 (12:25 +0900)
committerSooChan Lim <sc1.lim@samsung.com>
Tue, 22 Jun 2021 03:25:31 +0000 (12:25 +0900)
The tbm_module has the information about the backend modules of libtbm.
The tbm_bufmgr does not access the backend module information directly
instead tbm_module has taken in charge of the managememt of the backend
module of libtbm.

Change-Id: I5422fa077f9924dc31afc4bf76c390c26d3dcaa2

haltests/tc_tbm_backend.cpp
src/tbm_bufmgr.c
src/tbm_bufmgr_int.h

index 4898456..060a366 100644 (file)
@@ -58,6 +58,9 @@ TEST_F(TBMBackend, BufmgrInitDeinit)
        tbm_bufmgr_deinit(bufmgr);
 }
 
+// TODO: Checking the mandatory symbols of the backend module has to be done
+//       at hal-tbm-api or at the tbm_module of libtbm.
+#if 0
 // backend symbol check
 TEST_F(TBMBackend, BufmgrCheckSymbols)
 {
@@ -120,6 +123,7 @@ TEST_F(TBMBackend, BufmgrCheckSymbols)
        tbm_bufmgr_deinit(bufmgr);
        ASSERT_TRUE(tbm_bufmgr_debug_get_ref_count() == 0);
 }
+#endif
 
 // bo_alloc, bo_free, bo_size test
 TEST_F(TBMBackend, BufmgrBindNativeDisplay)
index 9af309d..5d941d6 100644 (file)
@@ -195,42 +195,6 @@ _tbm_util_get_appname_from_pid(long pid, char *str)
        snprintf(str, sizeof(cmdline), "%s", cmdline);
 }
 
-static void
-_tbm_bufmgr_copy_module_data(tbm_bufmgr bufmgr, tbm_module *module)
-{
-       bufmgr->module_data = module->module_data;
-       bufmgr->backend = module->backend;
-
-       bufmgr->backend_module_data = module->backend_module_data;
-       bufmgr->bufmgr_data = module->bufmgr_data;
-       bufmgr->bufmgr_func = module->bufmgr_func;
-       bufmgr->bo_func = module->bo_func;
-
-       bufmgr->use_hal_tbm = module->use_hal_tbm;
-       bufmgr->auth_wl_socket_created = module->auth_wl_socket_created;
-       bufmgr->auth_fd = module->auth_fd;
-       bufmgr->hal_backend = module->hal_backend;
-       bufmgr->hal_bufmgr = module->hal_bufmgr;
-}
-
-static void
-_tbm_bufmgr_reset_modlue_data(tbm_bufmgr bufmgr)
-{
-       bufmgr->module_data = NULL;
-       bufmgr->backend = NULL;
-
-       bufmgr->backend_module_data = NULL;
-       bufmgr->bufmgr_data = NULL;
-       bufmgr->bufmgr_func = NULL;
-       bufmgr->bo_func = NULL;
-
-       bufmgr->use_hal_tbm = 0;
-       bufmgr->auth_wl_socket_created = 0;
-       bufmgr->auth_fd = -1;
-       bufmgr->hal_backend = NULL;
-       bufmgr->hal_bufmgr = NULL;
-}
-
 /* LCOV_EXCL_STOP */
 
 static tbm_bufmgr
@@ -309,9 +273,6 @@ _tbm_bufmgr_init(int fd, int server)
 
        }
 
-       // TODO: this is temporary. it will be removed after finishing refactoring the tbm_module.
-       _tbm_bufmgr_copy_module_data(gBufMgr, gBufMgr->module);
-
        /* check the essential capabilities of tbm_module */
        gBufMgr->capabilities = tbm_module_get_capabilities(gBufMgr->module, &error);
        if (gBufMgr->capabilities == TBM_BUFMGR_CAPABILITY_NONE) {
@@ -437,9 +398,6 @@ tbm_bufmgr_deinit(tbm_bufmgr bufmgr)
 
        tbm_module_unload(bufmgr->module);
 
-       // TODO: this is temporary. it will be removed after finishing refactoring the tbm_module.
-       _tbm_bufmgr_reset_modlue_data(bufmgr);
-
        if (bufmgr->fd > 0)
                close(bufmgr->fd);
 
index 70bc617..dffecc0 100644 (file)
@@ -208,23 +208,7 @@ struct _tbm_bufmgr {
        struct list_head surf_queue_list; /* list of surface queues belonging to bufmgr */
        struct list_head debug_key_list;  /* list of debug data key list belonging to bufmgr */
 
-       //TODO: tbm_module *module;
-       tbm_module *module;               /* tbm module */
-
-       //TODO: replace this to data in tbm_module *module
-       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 *module;               /* tbm module information */
 };
 
 /**