13d0407baSopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-only */
23d0407baSopenharmony_ci#undef TRACE_SYSTEM
33d0407baSopenharmony_ci#define TRACE_SYSTEM psi
43d0407baSopenharmony_ci
53d0407baSopenharmony_ci#define TRACE_INCLUDE_PATH trace/hooks
63d0407baSopenharmony_ci
73d0407baSopenharmony_ci#if !defined(_TRACE_HOOK_PSI_H) || defined(TRACE_HEADER_MULTI_READ)
83d0407baSopenharmony_ci#define _TRACE_HOOK_PSI_H
93d0407baSopenharmony_ci
103d0407baSopenharmony_ci#include <linux/tracepoint.h>
113d0407baSopenharmony_ci#include <trace/hooks/vendor_hooks.h>
123d0407baSopenharmony_ci
133d0407baSopenharmony_ci#if defined(CONFIG_TRACEPOINTS) && defined(CONFIG_ANDROID_VENDOR_HOOKS)
143d0407baSopenharmony_ci
153d0407baSopenharmony_cistruct psi_trigger;
163d0407baSopenharmony_cistruct psi_group;
173d0407baSopenharmony_ciDECLARE_HOOK(android_vh_psi_event,
183d0407baSopenharmony_ci	TP_PROTO(struct psi_trigger *t),
193d0407baSopenharmony_ci	TP_ARGS(t));
203d0407baSopenharmony_ci
213d0407baSopenharmony_ciDECLARE_HOOK(android_vh_psi_group,
223d0407baSopenharmony_ci	TP_PROTO(struct psi_group *group),
233d0407baSopenharmony_ci	TP_ARGS(group));
243d0407baSopenharmony_ci
253d0407baSopenharmony_ci#else
263d0407baSopenharmony_ci#define trace_android_vh_psi_event(t)
273d0407baSopenharmony_ci#define trace_android_vh_psi_group(group)
283d0407baSopenharmony_ci#endif
293d0407baSopenharmony_ci
303d0407baSopenharmony_ci#endif /* _TRACE_HOOK_PSI_H */
313d0407baSopenharmony_ci
323d0407baSopenharmony_ci/* This part must be outside protection */
333d0407baSopenharmony_ci#include <trace/define_trace.h>
34