TBM_BUFGMR_DEBUG_TRACE_SURFACE_QUEUE = (1 << 3),
} tbm_bufmgr_debug_trace_mask;
+/* type to string ***********************************************************/
+struct tbm_type_name {
+ int type;
+ const char *name;
+};
+
+#define TBM_ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]))
+
+#define TBM_TYPE_NAME_FN(res) \
+static inline const char * tbm_##res##_str(int type) \
+{ \
+ unsigned int i; \
+ for (i = 0; i < TBM_ARRAY_SIZE(tbm_##res##_names); i++) { \
+ if (tbm_##res##_names[i].type == type) \
+ return tbm_##res##_names[i].name; \
+ } \
+ return "(invalid)"; \
+}
+
+static struct tbm_type_name tbm_error_names[] = {
+ { TBM_ERROR_NONE, "TBM_ERROR_NONE" },
+ { TBM_ERROR_OUT_OF_MEMORY, "TBM_ERROR_OUT_OF_MEMORY" },
+ { TBM_ERROR_INVALID_PARAMETER, "TBM_ERROR_INVALID_PARAMETER" },
+ { TBM_ERROR_INVALID_OPERATION, "TBM_ERROR_INVALID_OPERATION" },
+ { TBM_ERROR_NOT_SUPPORTED, "TBM_ERROR_NOT_SUPPORTED" },
+ { TBM_SURFACE_QUEUE_ERROR_EMPTY, "TBM_SURFACE_QUEUE_ERROR_EMPTY" },
+ { TBM_SURFACE_QUEUE_ERROR_INVALID_QUEUE, "TBM_SURFACE_QUEUE_ERROR_INVALID_QUEUE" },
+ { TBM_SURFACE_QUEUE_ERROR_INVALID_SURFACE, "TBM_SURFACE_QUEUE_ERROR_INVALID_SURFACE" },
+ { TBM_SURFACE_QUEUE_ERROR_SURFACE_ALLOC_FAILED, "TBM_SURFACE_QUEUE_ERROR_SURFACE_ALLOC_FAILED" },
+ { TBM_SURFACE_QUEUE_ERROR_ALREADY_EXIST, "TBM_SURFACE_QUEUE_ERROR_ALREADY_EXIST" },
+ { TBM_SURFACE_QUEUE_ERROR_UNKNOWN_SURFACE, "TBM_SURFACE_QUEUE_ERROR_UNKNOWN_SURFACE" },
+};
+TBM_TYPE_NAME_FN(error)
+
#endif /* _TBM_TYPE_COMMON_H_ */