To avoid changing the visibiliy of data types when including hook definition headers remove header file inclusions from the hook definition header files. Instead, the hook definition headers should just have forward declarations that don't require full definition. To provide full definitions of the types for the KMI, the headers that define the types should be included by the source file that instantiates the hooks - normally vendor_hooks.c. Since the KMI is frozen, some of the inclusions are still required to preserve the CRC associated with symbols. Keep these inclusions under #ifdef __GENKSYMS__. Bug: 233047575 Signed-off-by: Todd Kjos <tkjos@google.com> Change-Id: Ibc1173eb4b07fcec21c7abd8e0ab1950b3fb5b34
51 lines
1.4 KiB
C
51 lines
1.4 KiB
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
#undef TRACE_SYSTEM
|
|
#define TRACE_SYSTEM power
|
|
#define TRACE_INCLUDE_PATH trace/hooks
|
|
|
|
#if !defined(_TRACE_HOOK_POWER_H) || defined(TRACE_HEADER_MULTI_READ)
|
|
#define _TRACE_HOOK_POWER_H
|
|
#include <trace/hooks/vendor_hooks.h>
|
|
|
|
#ifdef __GENKSYMS__
|
|
#include <linux/sched.h>
|
|
#endif
|
|
|
|
/* needed for enum freq_qos_req_type */
|
|
#include <linux/pm_qos.h>
|
|
|
|
struct task_struct;
|
|
|
|
DECLARE_HOOK(android_vh_try_to_freeze_todo,
|
|
TP_PROTO(unsigned int todo, unsigned int elapsed_msecs, bool wq_busy),
|
|
TP_ARGS(todo, elapsed_msecs, wq_busy));
|
|
|
|
DECLARE_HOOK(android_vh_try_to_freeze_todo_logging,
|
|
TP_PROTO(bool *logging_on),
|
|
TP_ARGS(logging_on));
|
|
|
|
DECLARE_HOOK(android_vh_try_to_freeze_todo_unfrozen,
|
|
TP_PROTO(struct task_struct *p),
|
|
TP_ARGS(p));
|
|
|
|
enum freq_qos_req_type;
|
|
struct freq_qos_request;
|
|
struct freq_constraints;
|
|
|
|
DECLARE_HOOK(android_vh_freq_qos_add_request,
|
|
TP_PROTO(struct freq_constraints *qos, struct freq_qos_request *req,
|
|
enum freq_qos_req_type type, int value, int ret),
|
|
TP_ARGS(qos, req, type, value, ret));
|
|
|
|
DECLARE_HOOK(android_vh_freq_qos_update_request,
|
|
TP_PROTO(struct freq_qos_request *req, int value),
|
|
TP_ARGS(req, value));
|
|
|
|
DECLARE_HOOK(android_vh_freq_qos_remove_request,
|
|
TP_PROTO(struct freq_qos_request *req),
|
|
TP_ARGS(req));
|
|
|
|
#endif /* _TRACE_HOOK_POWER_H */
|
|
/* This part must be outside protection */
|
|
#include <trace/define_trace.h>
|