[HALACR-19] Add new HAL_MODULE_DRM module 03/321103/2 accepted/tizen/unified/20250319.072535 accepted/tizen/unified/x/20250319.090557
authorHaesu Gwon <haesu.gwon@samsung.com>
Fri, 14 Mar 2025 03:44:21 +0000 (12:44 +0900)
committerHaesu Gwon <haesu.gwon@samsung.com>
Tue, 18 Mar 2025 06:30:14 +0000 (06:30 +0000)
[Role of HAL_MODULE_DRM]
DRM(Digital Rights Management) requires hardware support to achieve high security level and it's implemented by vendor or product team.
DRM HAL APIs provide an common interface to access such security hardware and its related software assets.

[Details description of newly added HAL_MODULE_DRM module]
- group = HAL_GROUP_MULTIMEDIA,
- module = HAL_MODULE_DRM,
- license = HAL_LICENSE_APACHE_2_0,
- gbm_group = HAL_GBM_GROUP_PUBLIC,
- module_name = "HAL_MODULE_DRM",
- backend_module_name = "drm",
- library_name = "/hal/lib/libhal-backend-drm.so",
- library_name_64bit = "/hal/lib64/libhal-backend-drm.so",
- symbol_name = "hal_backend_drm_data",
- manifest = "/etc/hal/hal-api-drm-manifest.xml",
- hal_api = true,

Change-Id: I1dd4fb49dbc0493b6408713f9c50fce97f781723

include/hal-common.h
src/hal-api-list.h
tests/unittest/test-hal-api-common-manifest/hal-api-drm-manifest.xml [new file with mode: 0644]
tests/unittest/test-hal-api-common.cc

index 734b8f3b5c1a786c01b32ffe51c407943ac2c4f3..035889a19e08a1a5653d0a9aa14d9122edbdd5ac 100644 (file)
@@ -99,6 +99,9 @@ enum hal_module {
        /* HAL_GROUP_SECURITY */
        HAL_MODULE_SECURITY_AUTH,
 
+       /* HAL_GROUP_MULTIMEDIA */
+       HAL_MODULE_DRM,
+
        HAL_MODULE_END,
 };
 
index 70943ac1994e254dd2257fbd229a037d7a4d2b77..ce2283462fd099a792ec5f78a5f23b32b57b2a3a 100644 (file)
@@ -696,6 +696,24 @@ static struct __hal_module_info g_hal_module_info[] = {
                .backend_service_library_name_64bit     = "/usr/lib64/hal/libhal-backend-service-security-auth.so",
                .backend_service_symbol_name            = "hal_backend_service_security_auth_data",
        },
+
+       /* HAL_GROUP_MULTIMEDIA */
+       [HAL_MODULE_DRM] = {
+               .group          = HAL_GROUP_MULTIMEDIA,
+               .module         = HAL_MODULE_DRM,
+               .license        = HAL_LICENSE_APACHE_2_0,
+               .gbm_group      = HAL_GBM_GROUP_PUBLIC,
+               .module_name        = "HAL_MODULE_DRM",
+               .backend_module_name    = "drm",
+               .library_name       = "/hal/lib/libhal-backend-drm.so",
+               .library_name_64bit = "/hal/lib64/libhal-backend-drm.so",
+               .symbol_name        = "hal_backend_drm_data",
+               .manifest       = "/etc/hal/hal-api-drm-manifest.xml",
+               .hal_api        = true,
+               .backend_service_library_name       = "/usr/lib/hal/libhal-backend-service-drm.so",
+               .backend_service_library_name_64bit = "/usr/lib64/hal/libhal-backend-service-drm.so",
+               .backend_service_symbol_name        = "hal_backend_service_drm_data",
+       },
 };
 
 #endif /* __HAL_API_LIST_H__ */
\ No newline at end of file
diff --git a/tests/unittest/test-hal-api-common-manifest/hal-api-drm-manifest.xml b/tests/unittest/test-hal-api-common-manifest/hal-api-drm-manifest.xml
new file mode 100644 (file)
index 0000000..bc1f295
--- /dev/null
@@ -0,0 +1,8 @@
+<hal-api>
+       <manifest platform-version="10.0">
+               <hal-module>
+                       <name>HAL_MODULE_DRM</name>
+                       <version>1.0</version>
+               </hal-module>
+       </manifest>
+</hal-api>
index 0abc3f4f2f686f068d6a82075f22ce37f8fecfec..52412a3d22379d9a14d53897579b114cd1374d31 100644 (file)
@@ -214,6 +214,16 @@ INSTANTIATE_TEST_CASE_P(HalApiCommonTest,
                ""
        ),
 
+       HalInfo(HAL_MODULE_DRM,
+               HAL_GROUP_MULTIMEDIA,
+               HAL_LICENSE_APACHE_2_0,
+               "HAL_MODULE_DRM",
+               "drm",
+               "/hal/lib/libhal-backend-drm.so",
+               "/hal/lib64/libhal-backend-drm.so",
+               "hal_backend_drm_data"
+       ),
+
        HalInfo(HAL_MODULE_BLUETOOTH,
                HAL_GROUP_CONNECTIVITY,
                HAL_LICENSE_APACHE_2_0,