extern "C" {
#endif
-enum hal_abi_version {
- HAL_ABI_VERSION_UNKNOWN = 0,
- HAL_ABI_VERSION_TIZEN_6_5 = 1,
- HAL_ABI_VERSION_TIZEN_7_0 = 2,
- HAL_ABI_VERSION_TIZEN_7_5 = 3, /* Deprecated */
- HAL_ABI_VERSION_TIZEN_8_0 = 3,
- HAL_ABI_VERSION_TIZEN_9_0 = 4,
- HAL_ABI_VERSION_END,
-};
-
-static const char *const hal_abi_version_str[] = {
- [HAL_ABI_VERSION_UNKNOWN] = "Unknown HAL ABI Version",
- [HAL_ABI_VERSION_TIZEN_6_5] = "HAL_ABI_VERSION_TIZEN_6_5",
- [HAL_ABI_VERSION_TIZEN_7_0] = "HAL_ABI_VERSION_TIZEN_7_0",
- [HAL_ABI_VERSION_TIZEN_8_0] = "HAL_ABI_VERSION_TIZEN_8_0",
- [HAL_ABI_VERSION_TIZEN_9_0] = "HAL_ABI_VERSION_TIZEN_9_0",
-};
-
typedef struct __hal_backend {
const char *name;
const char *vendor;
- const unsigned int abi_version;
+ const unsigned int abi_version; /* Deprecated */
int (*init) (void **data);
int (*exit) (void *data);
const unsigned int major_version;
int hal_common_put_backend_with_library_name(enum hal_module module,
void *data, const char *library_name);
-/**
- * @brief Check HAL ABI version whehter is suppored or not on current platform
- * @param[in] HAL module id among enum hal_moudle
- * @param[in] HAL ABI version of backend module among enum hal_abi_version
- * @return @c 0 on success, otherwise a negative error value
- */
-int hal_common_check_backend_abi_version(enum hal_module module,
- enum hal_abi_version abi_version);
-
-/**
- * @brief Get the backend HAL ABI version according to the type of HAL module
- * @param[in] HAL module id among enum hal_moudle
- * @return @c positive integer value on success, otherwise a zero error value
- */
-unsigned int hal_common_get_backend_abi_version(enum hal_module module);
-
/**
* @brief Get the backend HAL major/minor version according to the type of HAL module
* @param[in] HAL module id among enum hal_moudle
[HAL_GROUP_SYSTEM] = "HAL_GROUP_SYSTEM",
};
-/**
- * hal-api-common (/platform/hal/api/common) provides the HAL ABI
- * (Application Binary Interface) version check feature which is used to check
- * the ABI compatibility between HAL API package like hal-api-audio-*.rpm
- * and HAL backend package like hal-backend-audio-*.rpm which is included
- * in hal.img. In order to compare ABI version between two binary,
- * Tizen core platform always must maintain the current HAL ABI version.
- * So that, define the below global variable (g_platform_curr_abi_version).
- *
- * 'g_platform_curr_abi_version' will be used for all HAL API modules,
- * to check whether HAL backend ABI version of each module in hal.img
- * is supported or not with current Tizen core HAL ABI version.
- *
- * 'g_platform_curr_abi_version' must be updated when Tizen platform
- * will be released officially.
- */
-struct hal_abi_version_match {
- enum hal_abi_version platform_abi_version;
- enum hal_abi_version backend_min_abi_version;
-};
-
struct __hal_module_info {
int usage_count;
hal_backend *backend;
char *symbol_name;
- unsigned int num_abi_versions;
- struct hal_abi_version_match *abi_versions;
-
bool hal_api;
bool hal_backend_extension;
};
#define HAL_BACKEND_SYMBOL_NAME 1
#define HAL_BACKEND_MODULE_NAME 2
-static enum hal_abi_version g_platform_curr_abi_version;
G_LOCK_DEFINE_STATIC(hal_common_lock);
EXPORT
return ret;
}
-static int __get_backend_data(enum hal_module module, unsigned int *abi_version,
+static int __get_backend_data(enum hal_module module,
char *name, int name_size, char *vendor, int vendor_size,
unsigned int *major_version, unsigned int *minor_version)
{
G_LOCK(hal_common_lock);
if (_hal_api_conf_init()) {
- ret = HAL_ABI_VERSION_UNKNOWN;
+ ret = -ENODATA;
goto err_unlock;
}
info = _hal_api_conf_get_module_info(module, NULL);
if (info == NULL) {
_E("Failed to get HAL module(%d) information\n", module);
- ret = HAL_ABI_VERSION_UNKNOWN;
+ ret = -ENODATA;
goto err_conf_exit;
}
if (ret < 0)
goto err_conf_exit;
- /* Return abi_verion of hal_backend structure */
- if (!name_size && !vendor_size && abi_version) {
- *abi_version = info->backend->abi_version;
-
/* Return name of hal_backend structure */
- } else if (info->backend->name && name && name_size && !vendor_size) {
+ if (info->backend->name && name && name_size && !vendor_size) {
len = strlen(info->backend->name);
if (!info->backend->name || (len + 1 > name_size)) {
return __put_backend(module, data, library_name);
}
-EXPORT
-int hal_common_check_backend_abi_version(enum hal_module module,
- enum hal_abi_version abi_version)
-{
- struct __hal_module_info *info = NULL;
- int i;
- int ret;
-
- /* Check parameter whether is valid or not */
- if (module <= HAL_MODULE_UNKNOWN || module >= HAL_MODULE_END) {
- _E("Invalid paramer of HAL module(%d)\n", module);
- return -EINVAL;
- }
-
- if (abi_version <= HAL_ABI_VERSION_UNKNOWN
- || abi_version >= HAL_ABI_VERSION_END) {
- _E("Invalid paramer of HAL ABI version(%d) for HAL module(%d)\n",
- abi_version, module);
- return -EINVAL;
- }
-
- if (_hal_api_conf_init())
- return -EINVAL;
-
- info = _hal_api_conf_get_module_info(module, NULL);
- if (info == NULL) {
- _E("Failed to get HAL module(%d) information\n", module);
- ret = -EINVAL;
- goto out;
- }
-
- /* Check abi_version whether is supported or not */
- if (!info->hal_api) {
- _E("%s: Doesn't support HAL API\n", info->module_name);
- ret = -EINVAL;
- goto out;
- }
-
- if (!info->num_abi_versions
- || !info->abi_versions) {
- _E("%s: Doesn't have the ABI version information\n",
- info->module_name);
- ret = -EINVAL;
- goto out;
- }
-
- g_platform_curr_abi_version = _hal_api_conf_get_platform_abi_version();
-
- if (g_platform_curr_abi_version <= HAL_ABI_VERSION_UNKNOWN
- || g_platform_curr_abi_version >= HAL_ABI_VERSION_END) {
- _E("Invalid paramer of current HAL ABI version(%d)(%d)\n",
- g_platform_curr_abi_version, module);
- ret = -EINVAL;
- goto out;
- }
-
- for (i = 0; i < info->num_abi_versions; i++) {
- struct hal_abi_version_match *data
- = &info->abi_versions[i];
-
- if (g_platform_curr_abi_version != data->platform_abi_version)
- continue;
-
- if (data->backend_min_abi_version <= HAL_ABI_VERSION_UNKNOWN ||
- data->backend_min_abi_version >= HAL_ABI_VERSION_END) {
- _E("%s: abi_versions[%d].backend_min_abi_version(%d) is invalid\n",
- info->module_name, i, data->backend_min_abi_version);
- ret = -EINVAL;
- goto out;
- }
-
- if (abi_version <= data->platform_abi_version
- && abi_version >= data->backend_min_abi_version) {
- ret = 0;
- goto out;
- }
-
- _E("%s: \'%s\' doesn't support \'%s\'\n",
- info->module_name,
- hal_abi_version_str[g_platform_curr_abi_version],
- hal_abi_version_str[abi_version]);
- _E("%s: Must use ABI versions from \'%s\' to \'%s\'\n",
- info->module_name,
- hal_abi_version_str[data->backend_min_abi_version],
- hal_abi_version_str[data->platform_abi_version]);
- }
- ret = -EINVAL;
-
-out:
- _hal_api_conf_exit();
- return ret;
-}
-
-EXPORT
-unsigned int hal_common_get_backend_abi_version(enum hal_module module)
-{
- unsigned int abi_version;
- int ret;
-
- ret = __get_backend_data(module, &abi_version, NULL, 0, NULL, 0, NULL, NULL);
- if (ret < 0)
- return HAL_ABI_VERSION_UNKNOWN;
-
- return abi_version;
-}
-
EXPORT
int hal_common_get_backend_version(enum hal_module module, unsigned int *major_version, unsigned int *minor_version)
{
- return __get_backend_data(module, NULL, NULL, 0, NULL, 0, major_version, minor_version);
+ return __get_backend_data(module, NULL, 0, NULL, 0, major_version, minor_version);
}
EXPORT
int hal_common_get_backend_name(enum hal_module module, char *name, int size)
{
- return __get_backend_data(module, NULL, name, size, NULL, 0, NULL ,NULL);
+ return __get_backend_data(module, name, size, NULL, 0, NULL ,NULL);
}
EXPORT
int hal_common_get_backend_vendor(enum hal_module module, char *vendor, int size)
{
- return __get_backend_data(module, NULL, NULL, 0, vendor, size, NULL, NULL);
+ return __get_backend_data(module, NULL, 0, vendor, size, NULL, NULL);
}
#include "hal-api-conf.h"
#include "hal-api-list.h"
-static enum hal_abi_version g_platform_curr_abi_version = HAL_ABI_VERSION_TIZEN_7_5;
-
static GHashTable *_module_hash = NULL;
static int _usage_count = 0;
new_info->library_name = g_strdup_printf("/hal/lib/%s", library_name);
#endif
new_info->symbol_name = g_strdup(info->symbol_name);
- new_info->num_abi_versions = info->num_abi_versions;
- new_info->abi_versions = info->abi_versions;
new_info->hal_api = info->hal_api;
new_info->hal_backend_extension = true;
}
-enum hal_abi_version _hal_api_conf_get_platform_abi_version(void)
-{
- return g_platform_curr_abi_version;
-}
-
__attribute__ ((visibility("default")))
int _hal_api_conf_init(void)
{
struct __hal_module_info *_hal_api_conf_get_module_info(enum hal_module module,
const char *library_name);
-enum hal_abi_version _hal_api_conf_get_platform_abi_version(void);
-
#ifdef __cplusplus
}
#endif
#include "common.h"
-#define HAL_ABI_VERSION_MAX 10
-
-static struct hal_abi_version_match abi_version_match_data[HAL_MODULE_END][HAL_ABI_VERSION_MAX] = {
- /* HAL_GROUP_GRAPHICS */
- [HAL_MODULE_TBM] = {
- /* FIXME: Need to be initialized by configuration file like xml */
- [0] = {
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5,
- },
- },
- [HAL_MODULE_TDM] = {
- /* FIXME: Need to be filled from configuration file. */
- [0] = {
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5,
- },
- },
- [HAL_MODULE_COREGL] = {
- /**
- * Don't need to add abi verion for this module.
- * because this module don't support HAL API.
- */
- },
- [HAL_MODULE_INPUT] = {
- /**
- * Don't need to add abi verion for this module.
- * because this module don't support HAL API.
- */
- },
-
- /* HAL_GROUP_MULTIMEDIA */
- [HAL_MODULE_AUDIO] = {
- /* FIXME: Need to be initialized by configuration file like xml */
- [0] = {
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5,
- },
- },
- [HAL_MODULE_CAMERA] = {
- /* FIXME: Need to be initialized by configuration file like xml */
- [0] = {
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5,
- },
- },
- [HAL_MODULE_RADIO] = {
- /* FIXME: Need to be initialized by configuration file like xml */
- [0] = {
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5,
- },
- },
- [HAL_MODULE_CODEC] = {
- /**
- * Don't need to add abi verion for this module.
- * because this module don't support HAL API.
- */
- },
- [HAL_MODULE_USB_AUDIO] = {
- /**
- * Don't need to add abi verion for this module.
- * because this module don't support HAL API.
- */
- },
- [HAL_MODULE_ALSAUCM] = {
- /**
- * Don't need to add abi verion for this module.
- * because this module don't support HAL API.
- */
- },
-
- /* HAL_GROUP_CONNECTIVITY */
- [HAL_MODULE_BLUETOOTH] = {
- /* FIXME: Need to be initialized by configuration file like xml */
- [0] = {
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5,
- },
- },
- [HAL_MODULE_WIFI] = {
- /* FIXME: Need to be initialized by configuration file like xml */
- [0] = {
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5,
- },
- },
- [HAL_MODULE_NAN] = {
- },
- [HAL_MODULE_NFC] = {
- /* FIXME: Need to be initialized by configuration file like xml */
- [0] = {
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5,
- },
- },
- [HAL_MODULE_ZIGBEE] = {
- /* FIXME: Need to be initialized by configuration file like xml */
- [0] = {
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5,
- },
- },
- [HAL_MODULE_UWB] = {
- /* FIXME: Need to be initialized by configuration file like xml */
- [0] = {
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5,
- },
- },
- [HAL_MODULE_MTP] = {
- /**
- * Don't need to add abi verion for this module.
- * because this module don't support HAL API.
- */
- },
-
- /* HAL_GROUP_TELEPHONY */
- [HAL_MODULE_TELEPHONY] = {
- /* FIXME: Need to be determined whehter support HAL API or not. */
- [0] = {
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5,
- },
- },
-
- /* HAL_GROUP_LOCATION */
- [HAL_MODULE_LOCATION] = {
- /* FIXME: Need to be initialized by configuration file like xml */
- [0] = {
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5,
- },
- },
-
- /* HAL_GROUP_SYSTEM */
- [HAL_MODULE_COMMON] = {
- },
- [HAL_MODULE_POWER] = {
- /* FIXME: Need to be initialized by configuration file like xml */
- [0] = {
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5,
- },
- },
- [HAL_MODULE_SENSOR] = {
- /* FIXME: Need to be initialized by configuration file like xml */
- [0] = {
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5,
- },
- },
- [HAL_MODULE_PERIPHERAL] = {
- /* FIXME: Need to be initialized by configuration file like xml */
- [0] = {
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5,
- },
- },
-
- [HAL_MODULE_DEVICE_BATTERY] = {
- /* FIXME: Need to be initialized by configuration file like xml */
- [0] = {
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5,
- },
- },
- [HAL_MODULE_DEVICE_BEZEL] = {
- /* FIXME: Need to be initialized by configuration file like xml */
- [0] = {
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5,
- },
- },
- [HAL_MODULE_DEVICE_DISPLAY] = {
- /* FIXME: Need to be initialized by configuration file like xml */
- [0] = {
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5,
- },
- },
- [HAL_MODULE_DEVICE_IR] = {
- /* FIXME: Need to be initialized by configuration file like xml */
- [0] = {
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5,
- },
- },
- [HAL_MODULE_DEVICE_TOUCHSCREEN] = {
- /* FIXME: Need to be initialized by configuration file like xml */
- [0] = {
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5,
- },
- },
- [HAL_MODULE_DEVICE_LED] = {
- /* FIXME: Need to be initialized by configuration file like xml */
- [0] = {
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5,
- },
- },
- [HAL_MODULE_DEVICE_BOARD] = {
- /* FIXME: Need to be initialized by configuration file like xml */
- [0] = {
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5,
- },
- },
- [HAL_MODULE_DEVICE_EXTERNAL_CONNECTION] = {
- /* FIXME: Need to be initialized by configuration file like xml */
- [0] = {
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5,
- },
- },
- [HAL_MODULE_DEVICE_THERMAL] = {
- /* FIXME: Need to be initialized by configuration file like xml */
- [0] = {
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5,
- },
- },
- [HAL_MODULE_DEVICE_USB_GADGET] = {
- /* FIXME: Need to be initialized by configuration file like xml */
- [0] = {
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5,
- },
- },
- [HAL_MODULE_DEVICE_HAPTIC] = {
- /* FIXME: Need to be initialized by configuration file like xml */
- [0] = {
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5,
- },
- },
- [HAL_MODULE_DEVICE_MEMORY] = {
- /* FIXME: Need to be initialized by configuration file like xml */
- [0] = {
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5,
- },
- },
- [HAL_MODULE_DEVICE_INPUT] = {
- /* FIXME: Need to be initialized by configuration file like xml */
- [0] = {
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_7_0,
- },
- },
- [HAL_MODULE_DEVICE_POWER] = {
- /* FIXME: Need to be initialized by configuration file like xml */
- [0] = {
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_7_0,
- },
- },
-};
-
static struct __hal_module_info g_hal_module_info[] = {
/* HAL_GROUP_GRAPHICS */
[HAL_MODULE_TBM] = {
.library_name = "/hal/lib/libhal-backend-tbm.so",
.library_name_64bit = "/hal/lib64/libhal-backend-tbm.so",
.symbol_name = "hal_backend_tbm_data",
- .num_abi_versions = ARRAY_SIZE(abi_version_match_data[HAL_MODULE_TBM]),
- .abi_versions = abi_version_match_data[HAL_MODULE_TBM],
.hal_api = true,
},
[HAL_MODULE_TDM] = {
.library_name = "/hal/lib/libhal-backend-tdm.so",
.library_name_64bit = "/hal/lib64/libhal-backend-tdm.so",
.symbol_name = "hal_backend_tdm_data",
- .num_abi_versions = ARRAY_SIZE(abi_version_match_data[HAL_MODULE_TDM]),
- .abi_versions = abi_version_match_data[HAL_MODULE_TDM],
.hal_api = true,
},
[HAL_MODULE_COREGL] = {
.library_name = NULL,
.library_name_64bit = NULL,
.symbol_name = NULL,
- .num_abi_versions = 0,
- .abi_versions = NULL,
.hal_api = false,
},
[HAL_MODULE_INPUT] = {
.library_name = NULL,
.library_name_64bit = NULL,
.symbol_name = NULL,
- .num_abi_versions = 0,
- .abi_versions = NULL,
.hal_api = false,
},
.library_name = "/hal/lib/libhal-backend-audio.so",
.library_name_64bit = "/hal/lib64/libhal-backend-audio.so",
.symbol_name = "hal_backend_audio_data",
- .num_abi_versions = ARRAY_SIZE(abi_version_match_data[HAL_MODULE_AUDIO]),
- .abi_versions = abi_version_match_data[HAL_MODULE_AUDIO],
.hal_api = true,
},
[HAL_MODULE_CAMERA] = {
.library_name = "/hal/lib/libhal-backend-camera.so",
.library_name_64bit = "/hal/lib64/libhal-backend-camera.so",
.symbol_name = "hal_backend_camera_data",
- .num_abi_versions = ARRAY_SIZE(abi_version_match_data[HAL_MODULE_CAMERA]),
- .abi_versions = abi_version_match_data[HAL_MODULE_CAMERA],
.hal_api = true,
},
[HAL_MODULE_RADIO] = {
.library_name = "/hal/lib/libhal-backend-radio.so",
.library_name_64bit = "/hal/lib64/libhal-backend-radio.so",
.symbol_name = "hal_backend_radio_data",
- .num_abi_versions = ARRAY_SIZE(abi_version_match_data[HAL_MODULE_RADIO]),
- .abi_versions = abi_version_match_data[HAL_MODULE_RADIO],
.hal_api = true,
},
[HAL_MODULE_CODEC] = {
.library_name = NULL,
.library_name_64bit = NULL,
.symbol_name = NULL,
- .num_abi_versions = 0,
- .abi_versions = NULL,
.hal_api = false,
},
[HAL_MODULE_USB_AUDIO] = {
.library_name = NULL,
.library_name_64bit = NULL,
.symbol_name = NULL,
- .num_abi_versions = 0,
- .abi_versions = NULL,
.hal_api = false,
},
[HAL_MODULE_ALSAUCM] = {
.library_name = NULL,
.library_name_64bit = NULL,
.symbol_name = NULL,
- .num_abi_versions = 0,
- .abi_versions = NULL,
.hal_api = false,
},
.library_name = "/hal/lib/libhal-backend-bluetooth.so",
.library_name_64bit = "/hal/lib64/libhal-backend-bluetooth.so",
.symbol_name = "hal_backend_bluetooth_data",
- .num_abi_versions = ARRAY_SIZE(abi_version_match_data[HAL_MODULE_BLUETOOTH]),
- .abi_versions = abi_version_match_data[HAL_MODULE_BLUETOOTH],
.hal_api = true,
},
[HAL_MODULE_WIFI] = {
.library_name = "/hal/lib/libhal-backend-wifi.so",
.library_name_64bit = "/hal/lib64/libhal-backend-wifi.so",
.symbol_name = "hal_backend_wifi_data",
- .num_abi_versions = ARRAY_SIZE(abi_version_match_data[HAL_MODULE_WIFI]),
- .abi_versions = abi_version_match_data[HAL_MODULE_WIFI],
.hal_api = true,
},
[HAL_MODULE_NAN] = {
.library_name = NULL,
.library_name_64bit = NULL,
.symbol_name = NULL,
- .num_abi_versions = 0,
- .abi_versions = NULL,
.hal_api = false,
},
[HAL_MODULE_NFC] = {
.library_name = "/hal/lib/libhal-backend-nfc.so",
.library_name_64bit = "/hal/lib64/libhal-backend-nfc.so",
.symbol_name = "hal_backend_nfc_data",
- .num_abi_versions = ARRAY_SIZE(abi_version_match_data[HAL_MODULE_NFC]),
- .abi_versions = abi_version_match_data[HAL_MODULE_NFC],
.hal_api = true,
},
[HAL_MODULE_ZIGBEE] = {
.library_name = "/hal/lib/libhal-backend-zigbee.so",
.library_name_64bit = "/hal/lib64/libhal-backend-zigbee.so",
.symbol_name = "hal_backend_zigbee_data",
- .num_abi_versions = ARRAY_SIZE(abi_version_match_data[HAL_MODULE_ZIGBEE]),
- .abi_versions = abi_version_match_data[HAL_MODULE_ZIGBEE],
.hal_api = true,
},
[HAL_MODULE_UWB] = {
.library_name = "/hal/lib/libhal-backend-uwb.so",
.library_name_64bit = "/hal/lib64/libhal-backend-uwb.so",
.symbol_name = "hal_backend_uwb_data",
- .num_abi_versions = ARRAY_SIZE(abi_version_match_data[HAL_MODULE_UWB]),
- .abi_versions = abi_version_match_data[HAL_MODULE_UWB],
.hal_api = true,
},
[HAL_MODULE_MTP] = {
.library_name = NULL,
.library_name_64bit = NULL,
.symbol_name = NULL,
- .num_abi_versions = 0,
- .abi_versions = NULL,
.hal_api = false,
},
.library_name = NULL,
.library_name_64bit = NULL,
.symbol_name = NULL,
- .num_abi_versions = 0,
- .abi_versions = NULL,
.hal_api = false,
},
.library_name = "/hal/lib/libhal-backend-location.so",
.library_name_64bit = "/hal/lib64/libhal-backend-location.so",
.symbol_name = "hal_backend_location_data",
- .num_abi_versions = ARRAY_SIZE(abi_version_match_data[HAL_MODULE_LOCATION]),
- .abi_versions = abi_version_match_data[HAL_MODULE_LOCATION],
.hal_api = true,
},
.library_name = NULL,
.library_name_64bit = NULL,
.symbol_name = NULL,
- .num_abi_versions = 0,
- .abi_versions = NULL,
.hal_api = true,
},
[HAL_MODULE_POWER] = {
.library_name = "/hal/lib/libhal-backend-power.so",
.library_name_64bit = "/hal/lib64/libhal-backend-power.so",
.symbol_name = "hal_backend_power_data",
- .num_abi_versions = ARRAY_SIZE(abi_version_match_data[HAL_MODULE_POWER]),
- .abi_versions = abi_version_match_data[HAL_MODULE_POWER],
.hal_api = true,
},
[HAL_MODULE_SENSOR] = {
.library_name = "/hal/lib/libhal-backend-sensor.so",
.library_name_64bit = "/hal/lib64/libhal-backend-sensor.so",
.symbol_name = "hal_backend_sensor_data",
- .num_abi_versions = ARRAY_SIZE(abi_version_match_data[HAL_MODULE_SENSOR]),
- .abi_versions = abi_version_match_data[HAL_MODULE_SENSOR],
.hal_api = true,
},
[HAL_MODULE_PERIPHERAL] = {
.library_name = NULL,
.library_name_64bit = NULL,
.symbol_name = NULL,
- .num_abi_versions = 0,
- .abi_versions = NULL,
.hal_api = false,
},
[HAL_MODULE_DEVICE_BATTERY] = {
.library_name = "/hal/lib/libhal-backend-device-battery.so",
.library_name_64bit = "/hal/lib64/libhal-backend-device-battery.so",
.symbol_name = "hal_backend_device_battery_data",
- .num_abi_versions = ARRAY_SIZE(abi_version_match_data[HAL_MODULE_DEVICE_BATTERY]),
- .abi_versions = abi_version_match_data[HAL_MODULE_DEVICE_BATTERY],
.hal_api = true,
},
[HAL_MODULE_DEVICE_BEZEL] = {
.library_name = "/hal/lib/libhal-backend-device-bezel.so",
.library_name_64bit = "/hal/lib64/libhal-backend-device-bezel.so",
.symbol_name = "hal_backend_device_bezel_data",
- .num_abi_versions = ARRAY_SIZE(abi_version_match_data[HAL_MODULE_DEVICE_BEZEL]),
- .abi_versions = abi_version_match_data[HAL_MODULE_DEVICE_BEZEL],
.hal_api = true,
},
[HAL_MODULE_DEVICE_DISPLAY] = {
.library_name = "/hal/lib/libhal-backend-device-display.so",
.library_name_64bit = "/hal/lib64/libhal-backend-device-display.so",
.symbol_name = "hal_backend_device_display_data",
- .num_abi_versions = ARRAY_SIZE(abi_version_match_data[HAL_MODULE_DEVICE_DISPLAY]),
- .abi_versions = abi_version_match_data[HAL_MODULE_DEVICE_DISPLAY],
.hal_api = true,
},
[HAL_MODULE_DEVICE_IR] = {
.library_name = "/hal/lib/libhal-backend-device-ir.so",
.library_name_64bit = "/hal/lib64/libhal-backend-device-ir.so",
.symbol_name = "hal_backend_device_ir_data",
- .num_abi_versions = ARRAY_SIZE(abi_version_match_data[HAL_MODULE_DEVICE_IR]),
- .abi_versions = abi_version_match_data[HAL_MODULE_DEVICE_IR],
.hal_api = true,
},
[HAL_MODULE_DEVICE_TOUCHSCREEN] = {
.library_name = "/hal/lib/libhal-backend-device-touchscreen.so",
.library_name_64bit = "/hal/lib64/libhal-backend-device-touchscreen.so",
.symbol_name = "hal_backend_device_touchscreen_data",
- .num_abi_versions = ARRAY_SIZE(abi_version_match_data[HAL_MODULE_DEVICE_TOUCHSCREEN]),
- .abi_versions = abi_version_match_data[HAL_MODULE_DEVICE_TOUCHSCREEN],
.hal_api = true,
},
[HAL_MODULE_DEVICE_LED] = {
.library_name = "/hal/lib/libhal-backend-device-led.so",
.library_name_64bit = "/hal/lib64/libhal-backend-device-led.so",
.symbol_name = "hal_backend_device_led_data",
- .num_abi_versions = ARRAY_SIZE(abi_version_match_data[HAL_MODULE_DEVICE_LED]),
- .abi_versions = abi_version_match_data[HAL_MODULE_DEVICE_LED],
.hal_api = true,
},
[HAL_MODULE_DEVICE_BOARD] = {
.library_name = "/hal/lib/libhal-backend-device-board.so",
.library_name_64bit = "/hal/lib64/libhal-backend-device-board.so",
.symbol_name = "hal_backend_device_board_data",
- .num_abi_versions = ARRAY_SIZE(abi_version_match_data[HAL_MODULE_DEVICE_BOARD]),
- .abi_versions = abi_version_match_data[HAL_MODULE_DEVICE_BOARD],
.hal_api = true,
},
[HAL_MODULE_DEVICE_EXTERNAL_CONNECTION] = {
.library_name = "/hal/lib/libhal-backend-device-external-connection.so",
.library_name_64bit = "/hal/lib64/libhal-backend-device-external-connection.so",
.symbol_name = "hal_backend_device_external_connection_data",
- .num_abi_versions = ARRAY_SIZE(abi_version_match_data[HAL_MODULE_DEVICE_EXTERNAL_CONNECTION]),
- .abi_versions = abi_version_match_data[HAL_MODULE_DEVICE_EXTERNAL_CONNECTION],
.hal_api = true,
},
[HAL_MODULE_DEVICE_THERMAL] = {
.library_name = "/hal/lib/libhal-backend-device-thermal.so",
.library_name_64bit = "/hal/lib64/libhal-backend-device-thermal.so",
.symbol_name = "hal_backend_device_thermal_data",
- .num_abi_versions = ARRAY_SIZE(abi_version_match_data[HAL_MODULE_DEVICE_THERMAL]),
- .abi_versions = abi_version_match_data[HAL_MODULE_DEVICE_THERMAL],
.hal_api = true,
},
[HAL_MODULE_DEVICE_USB_GADGET] = {
.library_name = "/hal/lib/libhal-backend-device-usb-gadget.so",
.library_name_64bit = "/hal/lib64/libhal-backend-device-usb-gadget.so",
.symbol_name = "hal_backend_device_usb_gadget_data",
- .num_abi_versions = ARRAY_SIZE(abi_version_match_data[HAL_MODULE_DEVICE_USB_GADGET]),
- .abi_versions = abi_version_match_data[HAL_MODULE_DEVICE_USB_GADGET],
.hal_api = true,
},
[HAL_MODULE_DEVICE_HAPTIC] = {
.library_name = "/hal/lib/libhal-backend-device-haptic.so",
.library_name_64bit = "/hal/lib64/libhal-backend-device-haptic.so",
.symbol_name = "hal_backend_device_haptic_data",
- .num_abi_versions = ARRAY_SIZE(abi_version_match_data[HAL_MODULE_DEVICE_HAPTIC]),
- .abi_versions = abi_version_match_data[HAL_MODULE_DEVICE_HAPTIC],
.hal_api = true,
},
[HAL_MODULE_DEVICE_MEMORY] = {
.library_name = "/hal/lib/libhal-backend-device-memory.so",
.library_name_64bit = "/hal/lib64/libhal-backend-device-memory.so",
.symbol_name = "hal_backend_device_memory_data",
- .num_abi_versions = ARRAY_SIZE(abi_version_match_data[HAL_MODULE_DEVICE_MEMORY]),
- .abi_versions = abi_version_match_data[HAL_MODULE_DEVICE_MEMORY],
.hal_api = true,
},
[HAL_MODULE_DEVICE_INPUT] = {
.library_name = "/hal/lib/libhal-backend-device-input.so",
.library_name_64bit = "/hal/lib64/libhal-backend-device-input.so",
.symbol_name = "hal_backend_device_input_data",
- .num_abi_versions = ARRAY_SIZE(abi_version_match_data[HAL_MODULE_DEVICE_INPUT]),
- .abi_versions = abi_version_match_data[HAL_MODULE_DEVICE_INPUT],
.hal_api = true,
},
[HAL_MODULE_DEVICE_POWER] = {
.library_name = "/hal/lib/libhal-backend-device-power.so",
.library_name_64bit = "/hal/lib64/libhal-backend-device-power.so",
.symbol_name = "hal_backend_device_power_data",
- .num_abi_versions = ARRAY_SIZE(abi_version_match_data[HAL_MODULE_DEVICE_POWER]),
- .abi_versions = abi_version_match_data[HAL_MODULE_DEVICE_POWER],
.hal_api = true,
},
};
hal_backend hal_backend_module_data = {
.name = "hal-backend-module",
.vendor = "hal-backend-vendor",
- .abi_version = HAL_ABI_VERSION_TIZEN_7_5,
.init = hal_backend_init,
.exit = hal_backend_exit,
};
EXPECT_TRUE(ret != TIZEN_ERROR_NONE);
}
-TEST(HalApiCommonTest, test_check_backend_abi_version_invalid_parameter) {
- int ret;
-
- ret = hal_common_check_backend_abi_version(HAL_MODULE_UNKNOWN, HAL_ABI_VERSION_TIZEN_7_5);
- EXPECT_EQ(ret, TIZEN_ERROR_INVALID_PARAMETER);
-
- ret = hal_common_check_backend_abi_version(HAL_MODULE_END, HAL_ABI_VERSION_TIZEN_7_5);
- EXPECT_EQ(ret, TIZEN_ERROR_INVALID_PARAMETER);
-
- ret = hal_common_check_backend_abi_version(HAL_MODULE_TBM, HAL_ABI_VERSION_UNKNOWN);
- EXPECT_EQ(ret, TIZEN_ERROR_INVALID_PARAMETER);
-
- ret = hal_common_check_backend_abi_version(HAL_MODULE_TBM, HAL_ABI_VERSION_END);
- EXPECT_EQ(ret, TIZEN_ERROR_INVALID_PARAMETER);
-}
-
TEST(HalApiCommonTest, get_backend_library_name_unknown) {
char ret_name[MAX_BUFF] = {0, };
int ret = hal_common_get_backend_library_name(HAL_MODULE_UNKNOWN, ret_name, MAX_BUFF);
const char *library_name_;
const char *library_name_64bit_;
const char *symbol_name_;
- vector<struct hal_abi_version_match> versions_;
HalInfo(enum hal_module module,
enum hal_group group,
const char *backend_module_name,
const char *library_name,
const char *library_name_64bit,
- const char *symbol_name,
- vector<struct hal_abi_version_match> versions) :
+ const char *symbol_name) :
module_(module), group_(group), license_(license),
module_name_(module_name),
backend_module_name_(backend_module_name),
library_name_(library_name),
- library_name_64bit_(library_name_64bit), symbol_name_(symbol_name),
- versions_(versions) {}
+ library_name_64bit_(library_name_64bit), symbol_name_(symbol_name) {}
};
class HalInfoMatchedTest : public ::testing::TestWithParam<HalInfo> {};
"tbm",
"/hal/lib/libhal-backend-tbm.so",
"/hal/lib64/libhal-backend-tbm.so",
- "hal_backend_tbm_data",
- vector<struct hal_abi_version_match>{{
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5
- }}
+ "hal_backend_tbm_data"
),
HalInfo(HAL_MODULE_TDM,
"tdm",
"/hal/lib/libhal-backend-tdm.so",
"/hal/lib64/libhal-backend-tdm.so",
- "hal_backend_tdm_data",
- vector<struct hal_abi_version_match>{{
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5
- }}
+ "hal_backend_tdm_data"
),
HalInfo(HAL_MODULE_COREGL,
"",
"",
"",
- "",
- {}
+ ""
),
HalInfo(HAL_MODULE_INPUT,
"",
"",
"",
- "",
- {}
+ ""
),
HalInfo(HAL_MODULE_AUDIO,
"audio",
"/hal/lib/libhal-backend-audio.so",
"/hal/lib64/libhal-backend-audio.so",
- "hal_backend_audio_data",
- vector<struct hal_abi_version_match>{{
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5
- }}
+ "hal_backend_audio_data"
),
HalInfo(HAL_MODULE_CAMERA,
"camera",
"/hal/lib/libhal-backend-camera.so",
"/hal/lib64/libhal-backend-camera.so",
- "hal_backend_camera_data",
- vector<struct hal_abi_version_match>{{
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5
- }}
+ "hal_backend_camera_data"
),
HalInfo(HAL_MODULE_RADIO,
"radio",
"/hal/lib/libhal-backend-radio.so",
"/hal/lib64/libhal-backend-radio.so",
- "hal_backend_radio_data",
- vector<struct hal_abi_version_match>{{
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5
- }}
+ "hal_backend_radio_data"
),
HalInfo(HAL_MODULE_CODEC,
"",
"",
"",
- "",
- {}
+ ""
),
HalInfo(HAL_MODULE_USB_AUDIO,
"",
"",
"",
- "",
- {}
+ ""
),
HalInfo(HAL_MODULE_ALSAUCM,
"",
"",
"",
- "",
- {}
+ ""
),
HalInfo(HAL_MODULE_BLUETOOTH,
"bluetooth",
"/hal/lib/libhal-backend-bluetooth.so",
"/hal/lib64/libhal-backend-bluetooth.so",
- "hal_backend_bluetooth_data",
- vector<struct hal_abi_version_match>{{
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5
- }}
+ "hal_backend_bluetooth_data"
),
HalInfo(HAL_MODULE_WIFI,
"wifi",
"/hal/lib/libhal-backend-wifi.so",
"/hal/lib64/libhal-backend-wifi.so",
- "hal_backend_wifi_data",
- vector<struct hal_abi_version_match>{{
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5
- }}
+ "hal_backend_wifi_data"
),
HalInfo(HAL_MODULE_NAN,
"",
"",
"",
- "",
- {}
+ ""
),
HalInfo(HAL_MODULE_NFC,
"nfc",
"/hal/lib/libhal-backend-nfc.so",
"/hal/lib64/libhal-backend-nfc.so",
- "hal_backend_nfc_data",
- vector<struct hal_abi_version_match>{{
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5
- }}
+ "hal_backend_nfc_data"
),
HalInfo(HAL_MODULE_ZIGBEE,
"zigbee",
"/hal/lib/libhal-backend-zigbee.so",
"/hal/lib64/libhal-backend-zigbee.so",
- "hal_backend_zigbee_data",
- vector<struct hal_abi_version_match>{{
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5
- }}
+ "hal_backend_zigbee_data"
),
HalInfo(HAL_MODULE_UWB,
"uwb",
"/hal/lib/libhal-backend-uwb.so",
"/hal/lib64/libhal-backend-uwb.so",
- "hal_backend_uwb_data",
- vector<struct hal_abi_version_match>{{
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5
- }}
+ "hal_backend_uwb_data"
),
HalInfo(HAL_MODULE_MTP,
"",
"",
"",
- "",
- {}
+ ""
),
HalInfo(HAL_MODULE_TELEPHONY,
"",
"",
"",
- "",
- {}
+ ""
),
HalInfo(HAL_MODULE_LOCATION,
"location",
"/hal/lib/libhal-backend-location.so",
"/hal/lib64/libhal-backend-location.so",
- "hal_backend_location_data",
- vector<struct hal_abi_version_match>{{
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5
- }}
+ "hal_backend_location_data"
),
HalInfo(HAL_MODULE_COMMON,
"",
"",
"",
- "",
- {}
+ ""
),
HalInfo(HAL_MODULE_POWER,
"power",
"/hal/lib/libhal-backend-power.so",
"/hal/lib64/libhal-backend-power.so",
- "hal_backend_power_data",
- vector<struct hal_abi_version_match>{{
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5
- }}
+ "hal_backend_power_data"
),
HalInfo(HAL_MODULE_SENSOR,
"sensor",
"/hal/lib/libhal-backend-sensor.so",
"/hal/lib64/libhal-backend-sensor.so",
- "hal_backend_sensor_data",
- vector<struct hal_abi_version_match>{{
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5
- }}
+ "hal_backend_sensor_data"
),
HalInfo(HAL_MODULE_PERIPHERAL,
"",
"",
"",
- "",
- {}),
+ ""
+ ),
HalInfo(HAL_MODULE_DEVICE_BATTERY,
HAL_GROUP_SYSTEM,
"device-battery",
"/hal/lib/libhal-backend-device-battery.so",
"/hal/lib64/libhal-backend-device-battery.so",
- "hal_backend_device_battery_data",
- vector<struct hal_abi_version_match>{{
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5
- }}
+ "hal_backend_device_battery_data"
),
HalInfo(HAL_MODULE_DEVICE_BEZEL,
"device-bezel",
"/hal/lib/libhal-backend-device-bezel.so",
"/hal/lib64/libhal-backend-device-bezel.so",
- "hal_backend_device_bezel_data",
- vector<struct hal_abi_version_match>{{
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5
- }}
+ "hal_backend_device_bezel_data"
),
HalInfo(HAL_MODULE_DEVICE_DISPLAY,
"device-display",
"/hal/lib/libhal-backend-device-display.so",
"/hal/lib64/libhal-backend-device-display.so",
- "hal_backend_device_display_data",
- vector<struct hal_abi_version_match>{{
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5
- }}
+ "hal_backend_device_display_data"
),
HalInfo(HAL_MODULE_DEVICE_IR,
"device-ir",
"/hal/lib/libhal-backend-device-ir.so",
"/hal/lib64/libhal-backend-device-ir.so",
- "hal_backend_device_ir_data",
- vector<struct hal_abi_version_match>{{
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5
- }}
+ "hal_backend_device_ir_data"
),
HalInfo(HAL_MODULE_DEVICE_TOUCHSCREEN,
"device-touchscreen",
"/hal/lib/libhal-backend-device-touchscreen.so",
"/hal/lib64/libhal-backend-device-touchscreen.so",
- "hal_backend_device_touchscreen_data",
- vector<struct hal_abi_version_match>{{
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5
- }}
+ "hal_backend_device_touchscreen_data"
),
HalInfo(HAL_MODULE_DEVICE_LED,
"device-led",
"/hal/lib/libhal-backend-device-led.so",
"/hal/lib64/libhal-backend-device-led.so",
- "hal_backend_device_led_data",
- vector<struct hal_abi_version_match>{{
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5
- }}
+ "hal_backend_device_led_data"
),
HalInfo(HAL_MODULE_DEVICE_BOARD,
"device-board",
"/hal/lib/libhal-backend-device-board.so",
"/hal/lib64/libhal-backend-device-board.so",
- "hal_backend_device_board_data",
- vector<struct hal_abi_version_match>{{
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5
- }}
+ "hal_backend_device_board_data"
),
HalInfo(HAL_MODULE_DEVICE_EXTERNAL_CONNECTION,
"device-external-connection",
"/hal/lib/libhal-backend-device-external-connection.so",
"/hal/lib64/libhal-backend-device-external-connection.so",
- "hal_backend_device_external_connection_data",
- vector<struct hal_abi_version_match>{{
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5
- }}
+ "hal_backend_device_external_connection_data"
),
HalInfo(HAL_MODULE_DEVICE_THERMAL,
"device-thermal",
"/hal/lib/libhal-backend-device-thermal.so",
"/hal/lib64/libhal-backend-device-thermal.so",
- "hal_backend_device_thermal_data",
- vector<struct hal_abi_version_match>{{
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5
- }}
+ "hal_backend_device_thermal_data"
),
HalInfo(HAL_MODULE_DEVICE_USB_GADGET,
"device-usb-gadget",
"/hal/lib/libhal-backend-device-usb-gadget.so",
"/hal/lib64/libhal-backend-device-usb-gadget.so",
- "hal_backend_device_usb_gadget_data",
- vector<struct hal_abi_version_match>{{
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5
- }}
+ "hal_backend_device_usb_gadget_data"
),
HalInfo(HAL_MODULE_DEVICE_HAPTIC,
"device-haptic",
"/hal/lib/libhal-backend-device-haptic.so",
"/hal/lib64/libhal-backend-device-haptic.so",
- "hal_backend_device_haptic_data",
- vector<struct hal_abi_version_match>{{
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5
- }}
+ "hal_backend_device_haptic_data"
),
HalInfo(HAL_MODULE_DEVICE_MEMORY,
"device-memory",
"/hal/lib/libhal-backend-device-memory.so",
"/hal/lib64/libhal-backend-device-memory.so",
- "hal_backend_device_memory_data",
- vector<struct hal_abi_version_match>{{
- .platform_abi_version = HAL_ABI_VERSION_TIZEN_7_5,
- .backend_min_abi_version = HAL_ABI_VERSION_TIZEN_6_5
- }}
+ "hal_backend_device_memory_data"
)
));
_hal_api_conf_exit();
}
-TEST_P(HalInfoMatchedTest, test_check_backend_abi_version) {
- struct __hal_module_info *info = NULL;
- auto result_info = GetParam();
-
- _hal_api_conf_init();
- info = _hal_api_conf_get_module_info(result_info.module_, NULL);
- ASSERT_TRUE(info != nullptr);
-
- vector<struct hal_abi_version_match> versions = result_info.versions_;
- struct hal_abi_version_match *meta_versions = info->abi_versions;
-
- for (unsigned int i = 0; i < versions.size(); i++) {
- struct hal_abi_version_match tmp_version = versions[i];
-
- int ret = hal_common_check_backend_abi_version(result_info.module_, tmp_version.platform_abi_version);
- EXPECT_EQ(ret, TIZEN_ERROR_NONE) << "module name is " << result_info.module_name_;
- EXPECT_EQ(meta_versions[i].platform_abi_version, tmp_version.platform_abi_version) << "module name is " << result_info.module_name_;;
- EXPECT_EQ(meta_versions[i].backend_min_abi_version, tmp_version.backend_min_abi_version) << "module name is " << result_info.module_name_;;
- }
- _hal_api_conf_exit();
-}
-
TEST_P(HalInfoMatchedTest, test_hal_common_get_backend_valid) {
auto info = GetParam();
#define LSHAL_FLAG_BACKEND_NAME BIT(4)
#define LSHAL_FLAG_BACKEND_VENDOR_NAME BIT(5)
#define LSHAL_FLAG_BACKEND_USAGE_COUNT BIT(6)
-#define LSHAL_FLAG_BACKEND_ABI_VERSION BIT(7)
struct _hal_backend_module_data {
/**
int backend_verification_count = 0;
lshal_print_border();
- printf(" %-38s | | %-55s | %-10s | %-15s | %-45s | %-25s | %-25s | %-25s |\n",
+ printf(" %-38s | | %-55s | %-10s | %-15s | %-45s | %-25s | %-25s |\n",
"",
"",
"Backend",
"Backend",
"Backend",
- "Backend ABI Version",
"Backend Name",
"Vendor Name");
- printf(" %-38s | ID | %-55s | %-10s | %-15s | %-45s | %-25s | %-25s | %-25s |\n",
+ printf(" %-38s | ID | %-55s | %-10s | %-15s | %-45s | %-25s | %-25s |\n",
"HAL Module Name",
"Backend Library Name",
"Open Count",
"Verification",
"Symbol Name",
"(Written by Developer)",
- "(Written by Developer)",
"(Written by Developer)");
lshal_print_border();
printf(" %-45s |", str);
}
- if (LSHAL_FLAG_BACKEND_ABI_VERSION & flags) {
- strncpy(str, "", BUFF_MAX - 1);
-
- ret = hal_common_get_backend_abi_version(module);
- if (ret == HAL_ABI_VERSION_UNKNOWN)
- printf(" %-25s |", "");
- else
- printf(" %-25s |", hal_abi_version_str[ret]);
- }
-
if (LSHAL_FLAG_BACKEND_NAME & flags) {
strncpy(str, "", BUFF_MAX - 1);
| LSHAL_FLAG_BACKEND_NAME
| LSHAL_FLAG_BACKEND_VENDOR_NAME
| LSHAL_FLAG_BACKEND_USAGE_COUNT
- | LSHAL_FLAG_BACKEND_MODULE_NAME
- | LSHAL_FLAG_BACKEND_ABI_VERSION);
+ | LSHAL_FLAG_BACKEND_MODULE_NAME);
lshal_print_hal_backend_info(flags);
}