xref: /linux/kernel/trace/rv/monitors/nomiss/nomiss_kunit.h (revision 67f8bc848ee31831336bd478e57d2f993551902e)
1*8da2a883SGabriele Monaco /* SPDX-License-Identifier: GPL-2.0-only */
2*8da2a883SGabriele Monaco /*
3*8da2a883SGabriele Monaco  * Automatically generated by rvgen kunit.
4*8da2a883SGabriele Monaco  * May need manual intervention for function prototypes that couldn't be
5*8da2a883SGabriele Monaco  * found (e.g. are in another file) or variables to be exported.
6*8da2a883SGabriele Monaco  */
7*8da2a883SGabriele Monaco 
8*8da2a883SGabriele Monaco #ifndef __NOMISS_KUNIT_H
9*8da2a883SGabriele Monaco #define __NOMISS_KUNIT_H
10*8da2a883SGabriele Monaco 
11*8da2a883SGabriele Monaco #if IS_ENABLED(CONFIG_RV_MONITORS_KUNIT_TEST)
12*8da2a883SGabriele Monaco 
13*8da2a883SGabriele Monaco #include <linux/rv.h>
14*8da2a883SGabriele Monaco #include <rv/kunit.h>
15*8da2a883SGabriele Monaco 
16*8da2a883SGabriele Monaco extern const struct rv_nomiss_ops {
17*8da2a883SGabriele Monaco 	struct rv_kunit_mon mon;
18*8da2a883SGabriele Monaco 	const u64 *deadline_thresh;
19*8da2a883SGabriele Monaco 	void (*handle_dl_replenish)(void *data, struct sched_dl_entity *dl_se,
20*8da2a883SGabriele Monaco 				int cpu, u8 type);
21*8da2a883SGabriele Monaco 	void (*handle_dl_throttle)(void *data, struct sched_dl_entity *dl_se,
22*8da2a883SGabriele Monaco 			       int cpu, u8 type);
23*8da2a883SGabriele Monaco 	void (*handle_dl_server_stop)(void *data, struct sched_dl_entity *dl_se,
24*8da2a883SGabriele Monaco 				  int cpu, u8 type);
25*8da2a883SGabriele Monaco 	void (*handle_sched_switch)(void *data, bool preempt,
26*8da2a883SGabriele Monaco 				struct task_struct *prev,
27*8da2a883SGabriele Monaco 				struct task_struct *next,
28*8da2a883SGabriele Monaco 				unsigned int prev_state);
29*8da2a883SGabriele Monaco 	void (*handle_sched_wakeup)(void *data, struct task_struct *tsk);
30*8da2a883SGabriele Monaco 	void (*handle_sys_enter)(void *data, struct pt_regs *regs, long id);
31*8da2a883SGabriele Monaco 	void (*handle_newtask)(void *data, struct task_struct *task, u64 flags);
32*8da2a883SGabriele Monaco } rv_nomiss_ops;
33*8da2a883SGabriele Monaco #endif
34*8da2a883SGabriele Monaco 
35*8da2a883SGabriele Monaco #endif /* __NOMISS_KUNIT_H */
36