HAL_GROUP_END,
};
+static const char *const hal_group_string[] = {
+ [HAL_GROUP_UNKNOWN] = "HAL_GROUP_UNKNOWN",
+ [HAL_GROUP_GRAPHICS] = "HAL_GROUP_GRAPHICS",
+ [HAL_GROUP_MULTIMEDIA] = "HAL_GROUP_MULTIMEDIA",
+ [HAL_GROUP_CONNECTIVITY] = "HAL_GROUP_CONNECTIVITY",
+ [HAL_GROUP_TELEPHONY] = "HAL_GROUP_TELEPHONY",
+ [HAL_GROUP_LOCATION] = "HAL_GROUP_LOCATION",
+ [HAL_GROUP_SYSTEM] = "HAL_GROUP_SYSTEM",
+};
+
enum hal_module {
HAL_MODULE_UNKNOWN = 0,
HAL_MODULE_DEVICE_THERMAL,
HAL_MODULE_DEVICE_USB_GADGET,
HAL_MODULE_DEVICE_HAPTIC,
+ HAL_MODULE_DEVICE_MEMORY,
/*
* TODO: If need to add new module, have to add it below
HAL_MODULE_END,
};
+static const char *const hal_module_string[] = {
+ [HAL_MODULE_UNKNOWN] = "HAL_MODULE_UNKNOWN",
+
+ /* HAL_GROUP_GRAPHICS */
+ [HAL_MODULE_TBM] = "HAL_MODULE_TBM",
+ [HAL_MODULE_TDM] = "HAL_MODULE_TDM",
+ [HAL_MODULE_COREGL] = "HAL_MODULE_COREGL",
+ [HAL_MODULE_INPUT] = "HAL_MODULE_INPUT",
+
+ /* HAL_GROUP_MULTIMEDIA */
+ [HAL_MODULE_AUDIO] = "HAL_MODULE_AUDIO",
+ [HAL_MODULE_CAMERA] = "HAL_MODULE_CAMERA",
+ [HAL_MODULE_RADIO] = "HAL_MODULE_RADIO",
+ [HAL_MODULE_CODEC] = "HAL_MODULE_CODEC",
+ [HAL_MODULE_USB_AUDIO] = "HAL_MODULE_USB_AUDIO",
+ [HAL_MODULE_ALSAUCM] = "HAL_MODULE_ALSAUCM",
+
+ /* HAL_GROUP_CONNECTIVITY */
+ [HAL_MODULE_BLUETOOTH] = "HAL_MODULE_BLUETOOTH",
+ [HAL_MODULE_WIFI] = "HAL_MODULE_WIFI",
+ [HAL_MODULE_NAN] = "HAL_MODULE_NAN",
+ [HAL_MODULE_NFC] = "HAL_MODULE_NFC",
+ [HAL_MODULE_ZIGBEE] = "HAL_MODULE_ZIGBEE",
+ [HAL_MODULE_UWB] = "HAL_MODULE_UWB",
+ [HAL_MODULE_MTP] = "HAL_MODULE_MTP",
+
+ /* HAL_GROUP_TELEPHONY */
+ [HAL_MODULE_TELEPHONY] = "HAL_MODULE_TELEPHONY",
+
+ /* HAL_GROUP_LOCATION */
+ [HAL_MODULE_LOCATION] = "HAL_MODULE_LOCATION",
+
+ /* HAL_GROUP_SYSTEM */
+ [HAL_MODULE_COMMON] = "HAL_MODULE_COMMON",
+ [HAL_MODULE_POWER] = "HAL_MODULE_POWER",
+ [HAL_MODULE_SENSOR] = "HAL_MODULE_SENSOR",
+ [HAL_MODULE_PERIPHERAL] = "HAL_MODULE_PERIPHERAL",
+ [HAL_MODULE_DEVICE_BATTERY] = "HAL_MODULE_DEVICE_BATTERY",
+ [HAL_MODULE_DEVICE_BEZEL] = "HAL_MODULE_DEVICE_BEZEL",
+ [HAL_MODULE_DEVICE_DISPLAY] = "HAL_MODULE_DEVICE_DISPLAY",
+ [HAL_MODULE_DEVICE_IR] = "HAL_MODULE_DEVICE_IR",
+ [HAL_MODULE_DEVICE_TOUCHSCREEN] = "HAL_MODULE_DEVICE_TOUCHSCREEN",
+ [HAL_MODULE_DEVICE_LED] = "HAL_MODULE_DEVICE_LED",
+ [HAL_MODULE_DEVICE_BOARD] = "HAL_MODULE_DEVICE_BOARD",
+ [HAL_MODULE_DEVICE_EXTERNAL_CONNECTION] = "HAL_MODULE_DEVICE_EXTERNAL_CONNECTION",
+ [HAL_MODULE_DEVICE_THERMAL] = "HAL_MODULE_DEVICE_THERMAL",
+ [HAL_MODULE_DEVICE_USB_GADGET] = "HAL_MODULE_DEVICE_USB_GADGET",
+ [HAL_MODULE_DEVICE_HAPTIC] = "HAL_MODULE_DEVICE_HAPTIC",
+ [HAL_MODULE_DEVICE_MEMORY] = "HAL_MODULE_DEVICE_MEMORY",
+
+ [HAL_MODULE_END] = "HAL_MODULE_END",
+};
+
/**
* @brief Get the backend library name according to the type of HAL module
* @param[in] HAL module id among enum hal_moudle
- * @return @c backend library name on success and don't need to be freed
- * due to the global variable, otherwise NULL.
+ * @param[out] Backend Library name of HAL module
+ * @param[in] Arrary size of name[]
+ * @return @c 0 on success, otherwise a negative error value
*/
-const char *hal_common_get_backend_library_name(enum hal_module module);
+int hal_common_get_backend_library_name(enum hal_module module, char *name, int size);
/**
* @brief Get the backend symbol name according to the type of HAL module
* @param[in] HAL module id among enum hal_moudle
- * @return @c backend library name on success and don't need to be freed
- * due to the global variable, otherwise NULL.
+ * @param[out] Backend symbol name of HAL module
+ * @param[in] Arrary size of name[]
+ * @return @c 0 on success, otherwise a negative error value
*/
-const char *hal_common_get_backend_symbol_name(enum hal_module module);
+int hal_common_get_backend_symbol_name(enum hal_module module, char *name, int size);
/**
* @brief Get the backend data according to the type of HAL module