halapi: Add new DEVICE_MEMORY module
[platform/hal/api/common.git] / include / hal-common.h
index daffd14..7402f05 100644 (file)
@@ -44,6 +44,16 @@ enum hal_group {
        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,
 
@@ -92,6 +102,7 @@ enum hal_module {
        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
@@ -101,21 +112,76 @@ enum hal_module {
        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