[HALACR-20] hal-common: Add new module HAL_MODULE_ML 42/318242/10 accepted/tizen/unified/20250310.024622 accepted/tizen/unified/x/20250310.042822
authorYongjoo Ahn <yongjoo1.ahn@samsung.com>
Mon, 13 Jan 2025 04:07:42 +0000 (13:07 +0900)
committerYongjoo Ahn <yongjoo1.ahn@samsung.com>
Thu, 6 Mar 2025 05:17:48 +0000 (14:17 +0900)
Adds a hal module `HAL_MODULE_ML` for Tizen ML API.
ML APIs which are using certain SoC/vendor specific framework/device
should use this hal api.
Also adds a hal_group `HAL_GROUP_MACHINE_LEARNING`

Change-Id: Ib69d34ef6eaa314c51324d9be480b95d5a38a384
Signed-off-by: Yongjoo Ahn <yongjoo1.ahn@samsung.com>
include/hal-common.h
src/common.h
src/hal-api-list.h

index 4f9746cc66e2f953a6d2459081f6f9f07206cde0..93fc3e9200da1db44ef669a90a67cb28dd6b7707 100644 (file)
@@ -93,6 +93,9 @@ enum hal_module {
        /* HAL_GROUP_SECURITY */
        HAL_MODULE_SECURITY_CERTS,
 
+       /* HAL_GROUP_MACHINE_LEARNING */
+       HAL_MODULE_ML,
+
        HAL_MODULE_END,
 };
 
index f0c4cb3a2dbdf340b0612981aac705ad83461ef3..390753fc7115a9099f8bbefb0a7efbcf4c8f43ab 100644 (file)
@@ -64,6 +64,7 @@ enum hal_group {
        HAL_GROUP_LOCATION,
        HAL_GROUP_SYSTEM,
        HAL_GROUP_SECURITY,
+       HAL_GROUP_MACHINE_LEARNING,
        HAL_GROUP_END,
 };
 
@@ -83,6 +84,7 @@ static const char *const hal_group_string[] = {
        [HAL_GROUP_LOCATION] = "HAL_GROUP_LOCATION",
        [HAL_GROUP_SYSTEM] = "HAL_GROUP_SYSTEM",
        [HAL_GROUP_SECURITY] = "HAL_GROUP_SECURITY",
+       [HAL_GROUP_MACHINE_LEARNING] = "HAL_GROUP_MACHINE_LEARNING",
 };
 
 struct __hal_module_info {
index 64a7e09c773d8d36d8d7c3e6f15e6f35add201ad..fccfe5334aaacb3134864cfc477bea447fe60222 100644 (file)
@@ -660,6 +660,24 @@ static struct __hal_module_info g_hal_module_info[] = {
                .backend_service_library_name_64bit     = "/usr/lib64/hal/libhal-backend-service-security-certs.so",
                .backend_service_symbol_name            = "hal_backend_service_security_certs_data",
        },
+
+       /* HAL_GROUP_MACHINE_LEARNING */
+       [HAL_MODULE_ML] = {
+               .group                  = HAL_GROUP_MACHINE_LEARNING,
+               .module                 = HAL_MODULE_ML,
+               .license                = HAL_LICENSE_APACHE_2_0,
+               .gbm_group              = HAL_GBM_GROUP_PUBLIC,
+               .module_name            = "HAL_MODULE_ML",
+               .backend_module_name    = "ml",
+               .library_name           = "/hal/lib/libhal-backend-ml.so",
+               .library_name_64bit     = "/hal/lib64/libhal-backend-ml.so",
+               .symbol_name            = "hal_backend_ml_data",
+               .manifest               = "/etc/hal/hal-api-ml-manifest.xml",
+               .hal_api                = true,
+               .backend_service_library_name           = "/usr/lib/hal/libhal-backend-service-ml.so",
+               .backend_service_library_name_64bit     = "/usr/lib64/hal/libhal-backend-service-ml.so",
+               .backend_service_symbol_name            = "hal_backend_service_ml_data",
+       },
 };
 
 #endif /* __HAL_API_LIST_H__ */