halapi: Move hal_common family function to hal-api-common.c 37/309637/5
authorYoungjae Cho <y0.cho@samsung.com>
Fri, 12 Apr 2024 05:43:11 +0000 (14:43 +0900)
committerYoungjae Cho <y0.cho@samsung.com>
Mon, 15 Apr 2024 12:29:13 +0000 (21:29 +0900)
Place the below functions under hal-api-common.c.
 - hal_common_check_backend_compatibility()
 - hal_common_check_backend_compatibility_all()

And their implementation details, which are internal use only, has
been listed on hal-api-compatibility-checker.h.

Change-Id: I208363f860c75627f8b7c3d3e1c564d62e6196f3
Signed-off-by: Youngjae Cho <y0.cho@samsung.com>
include/hal-common.h
src/hal-api-common.c
src/hal-api-compatibility-checker.c
src/hal-api-compatibility-checker.h

index 3ae6517cf90dd4d9ad0cc57aeec5cc0a9837b3bf..d0ab34e86c78e265b1ea4009bad5cc3e49544778 100644 (file)
@@ -220,20 +220,23 @@ int hal_common_get_backend_library_names(enum hal_module module,
 
 /**
  * @brief Check version compatibility of modules specified in manifests and stores its result
- * @param[out] arr_compatibility Pointer for storing array of compatibilities about all modules. The data is owned by caller, so it is responsible for caller to free it using free()
- * @param[out] len Pointer for retrieving length of array
+ * @param[out] backend_compatibilities Pointer for storing array of compatibilities about all \n
+ *             modules. The data is owned by caller, so it is responsible for caller to free it \n
+ *             using free()
+ * @param[out] length Pointer for retrieving length of array
  * @return @c 0 on success, otherwise a negative error value
  */
-int hal_common_check_backend_compatibility_all(enum hal_common_backend_compatibility **arr_compatibility, int *len);
+int hal_common_check_backend_compatibility_all(
+       enum hal_common_backend_compatibility **backend_compatibilities, int *length);
 
 /**
  * @brief Check compatibility of the given module
  * @param[in] module HAL module for checking compatibility
- * @param[out] compatibility Address for storing compatibility result
+ * @param[out] backend_compatibility Address for storing compatibility result
  * @return @c 0 on success, otherwise a negative error value
  */
 int hal_common_check_backend_compatibility(enum hal_module module,
-       enum hal_common_backend_compatibility *compatibility);
+       enum hal_common_backend_compatibility *backend_compatibility);
 
 #ifdef __cplusplus
 }
index d0ee175ceb0e2f5d04c0321f49610e8c06fe0f15..30e1219add11161ef07180bd7d32c819a2f72136 100644 (file)
@@ -239,7 +239,8 @@ static int __init_backend(struct __hal_module_info *info, void **data,
                                const char *library_name)
 {
        int ret;
-       enum hal_common_backend_compatibility c = HAL_COMMON_BACKEND_COMPATIBILITY_UNKNOWN;
+       enum hal_common_backend_compatibility compatibility =
+               HAL_COMMON_BACKEND_COMPATIBILITY_UNKNOWN;
 
        if (!info->handle || !info->backend) {
                _I("%s: Has not yet dlopend backend\n", info->module_name);
@@ -251,8 +252,9 @@ static int __init_backend(struct __hal_module_info *info, void **data,
                return -EINVAL;
        }
 
-       ret = _hal_common_check_backend_compatibility_by_version(info->module,
-               info->backend->major_version, info->backend->minor_version, &c);
+       ret = hal_api_cc_check_backend_compatibility_by_version(info->module,
+               info->backend->major_version, info->backend->minor_version,
+               &compatibility);
        if (ret != 0) {
                /**
                 * Not return but just print warning for now. Need time to
@@ -262,7 +264,7 @@ static int __init_backend(struct __hal_module_info *info, void **data,
                        info->module_name, ret);
        }
 
-       if (c == HAL_COMMON_BACKEND_COMPATIBILITY_INCOMPATIBLE) {
+       if (compatibility == HAL_COMMON_BACKEND_COMPATIBILITY_INCOMPATIBLE) {
                _E("%s: Incompatible backend version\n", info->module_name);
                return -EINVAL;
        }
@@ -760,3 +762,17 @@ int hal_common_get_backend_library_names(enum hal_module module,
                                        library_count, library_name_size);
        return (ret < 0) ? ret : 0;
 }
+
+EXPORT
+int hal_common_check_backend_compatibility_all(
+       enum hal_common_backend_compatibility **backend_compatibilities, int *length)
+{
+       return hal_api_cc_check_backend_compatibility_all(backend_compatibilities, length);
+}
+
+EXPORT
+int hal_common_check_backend_compatibility(enum hal_module module,
+       enum hal_common_backend_compatibility *backend_compatibility)
+{
+       return hal_api_cc_check_backend_compatibility(module, backend_compatibility);
+}
index f4b80796e332e9e382f7c672e44a480535ffd97e..e895cb72344d7ef24a71718d9ebc5cf7a3aad43d 100644 (file)
@@ -485,8 +485,8 @@ static int load_backend_compatibility(void *data)
        return -ENODATA;
 }
 
-EXPORT
-int hal_common_check_backend_compatibility_all(enum hal_common_backend_compatibility **arr_compatibility, int *len)
+int hal_api_cc_check_backend_compatibility_all(
+       enum hal_common_backend_compatibility **backend_compatibilities, int *length)
 {
        int ret;
        enum hal_common_backend_compatibility *arr = NULL;
@@ -498,10 +498,10 @@ int hal_common_check_backend_compatibility_all(enum hal_common_backend_compatibi
        if (access(HAL_COMMON_DEFAULT_BACKEND_COMPATIBILITY_PATH, F_OK) != 0)
                store_backend_compatibility_to_storage();
 
-       if (!arr_compatibility)
+       if (!backend_compatibilities)
                return 0;
 
-       if (!len)
+       if (!length)
                return -EINVAL;
 
        arr = calloc(HAL_MODULE_END, sizeof(enum hal_common_backend_compatibility));
@@ -511,23 +511,22 @@ int hal_common_check_backend_compatibility_all(enum hal_common_backend_compatibi
        for (int i = 0; i < HAL_MODULE_END; ++i)
                arr[i] = g_compatibility_info[i].compat;
 
-       *len = HAL_MODULE_END;
-       *arr_compatibility = arr;
+       *length = HAL_MODULE_END;
+       *backend_compatibilities = arr;
        arr = NULL;
 
        return 0;
 }
 
-EXPORT
-int hal_common_check_backend_compatibility(enum hal_module module,
-       enum hal_common_backend_compatibility *compatibility)
+int hal_api_cc_check_backend_compatibility(enum hal_module module,
+       enum hal_common_backend_compatibility *backend_compatibility)
 {
        int ret;
 
        if (module < HAL_MODULE_UNKNOWN || module >= HAL_MODULE_END)
                return -EINVAL;
 
-       if (!compatibility)
+       if (!backend_compatibility)
                return -EINVAL;
 
        ret = load_backend_compatibility(NULL);
@@ -537,14 +536,14 @@ int hal_common_check_backend_compatibility(enum hal_module module,
        if (access(HAL_COMMON_DEFAULT_BACKEND_COMPATIBILITY_PATH, F_OK) != 0)
                store_backend_compatibility_to_storage();
 
-       *compatibility = g_compatibility_info[module].compat;
+       *backend_compatibility = g_compatibility_info[module].compat;
 
        return 0;
 }
 
-int _hal_common_check_backend_compatibility_by_version(enum hal_module module,
+int hal_api_cc_check_backend_compatibility_by_version(enum hal_module module,
        int backend_major, int backend_minor,
-       enum hal_common_backend_compatibility *compatibility)
+       enum hal_common_backend_compatibility *backend_compatibility)
 {
        int ret;
 
@@ -558,7 +557,7 @@ int _hal_common_check_backend_compatibility_by_version(enum hal_module module,
        if (ret < 0)
                return ret;
 
-       *compatibility = g_compatibility_info[module].compat;
+       *backend_compatibility = g_compatibility_info[module].compat;
 
        return 0;
 }
index 59cf0974b0ad83c73b5f2d3822463c8487bf93f4..8e0153bb2f2eda6a8045de78b679a2b6831b8614 100644 (file)
 
 #include <hal-common.h>
 
+int hal_api_cc_check_backend_compatibility_all(
+       enum hal_common_backend_compatibility **backend_compatibilities, int *length);
+
+int hal_api_cc_check_backend_compatibility(enum hal_module module,
+       enum hal_common_backend_compatibility *backend_compatibility);
+
 /**
  * Special variant of checking compatibility, only for internal use. (Workaround)
  *
@@ -26,8 +32,8 @@
  * It occurs when __get_backend() is followed by __get_backend_data() within
  * its subroutine.
  */
-int _hal_common_check_backend_compatibility_by_version(enum hal_module module,
+int hal_api_cc_check_backend_compatibility_by_version(enum hal_module module,
        int backend_major, int backend_minor,
-       enum hal_common_backend_compatibility *compatibility);
+       enum hal_common_backend_compatibility *backend_compatibility);
 
 #endif // __HAL_API_COMPATIBILITY_CHECKER_H__