[Feature] add GA346 baseline version
Change-Id: Ic62933698569507dcf98240cdf5d9931ae34348f
diff --git a/src/kernel/linux/v4.19/include/trace/events/fpsgo.h b/src/kernel/linux/v4.19/include/trace/events/fpsgo.h
new file mode 100644
index 0000000..c6eee2d
--- /dev/null
+++ b/src/kernel/linux/v4.19/include/trace/events/fpsgo.h
@@ -0,0 +1,85 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+/*
+ * Copyright (c) 2019 MediaTek Inc.
+ */
+
+#undef TRACE_SYSTEM
+#define TRACE_SYSTEM fpsgo
+
+#if !defined(_TRACE_FPSGO_H) || defined(TRACE_HEADER_MULTI_READ)
+#define _TRACE_FPSGO_H
+
+#include <linux/tracepoint.h>
+#include <linux/ktime.h>
+
+#ifdef CREATE_TRACE_POINTS
+static inline unsigned long long calc_dur(unsigned long long *start,
+ unsigned long long *end)
+{
+ if (*end < *start)
+ return 0ULL;
+ return (*end - *start);
+}
+#endif
+
+TRACE_EVENT(xgf_intvl,
+
+ TP_PROTO(char *type, void *obj, unsigned long long *start,
+ unsigned long long *end),
+
+ TP_ARGS(type, obj, start, end),
+
+ TP_STRUCT__entry(
+ __string(string, type)
+ __field(void*, obj)
+ __field(unsigned long long, start)
+ __field(unsigned long long, end)
+ __field(unsigned long long, dur)
+ ),
+
+ TP_fast_assign(
+ __assign_str(string, type);
+ __entry->obj = obj;
+ __entry->start = *start;
+ __entry->end = *end;
+ __entry->dur = calc_dur(start, end);
+ ),
+
+ TP_printk("%s %p %llu ==> %llu intvl=%lld", __get_str(string),
+ __entry->obj, __entry->start, __entry->end,
+ __entry->dur)
+);
+
+DECLARE_EVENT_CLASS(fpsgo_log_template,
+
+ TP_PROTO(char *log),
+
+ TP_ARGS(log),
+
+ TP_STRUCT__entry(
+ __string(msg, log)
+ ),
+
+ TP_fast_assign(
+ __assign_str(msg, log);
+ ),
+
+ TP_printk("%s", __get_str(msg))
+);
+
+DEFINE_EVENT(fpsgo_log_template, xgf_log,
+ TP_PROTO(char *log),
+ TP_ARGS(log));
+
+DEFINE_EVENT(fpsgo_log_template, minitop_log,
+ TP_PROTO(char *log),
+ TP_ARGS(log));
+
+DEFINE_EVENT(fpsgo_log_template, fpsgo_main_log,
+ TP_PROTO(char *log),
+ TP_ARGS(log));
+
+#endif /* _TRACE_FPSGO_H */
+
+/* This part must be outside protection */
+#include <trace/define_trace.h>