• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #undef TRACE_SYSTEM
3 #define TRACE_SYSTEM v4l2core
4 
5 #define TRACE_INCLUDE_PATH trace/hooks
6 
7 #if !defined(_TRACE_HOOK_V4L2CORE_H) || defined(TRACE_HEADER_MULTI_READ)
8 #define _TRACE_HOOK_V4L2CORE_H
9 
10 #include <linux/tracepoint.h>
11 #include <trace/hooks/vendor_hooks.h>
12 
13 #ifdef __GENKSYMS__
14 struct v4l2_subdev;
15 struct v4l2_subdev_pad_config;
16 struct v4l2_subdev_format;
17 struct v4l2_subdev_frame_interval;
18 struct v4l2_subdev_selection;
19 struct v4l2_fmtdesc;
20 struct v4l2_format;
21 #else
22 /* struct v4l2_subdev, struct v4l2_subdev_pad_config */
23 #include <media/v4l2-subdev.h>
24 /* struct v4l2_subdev_format, struct v4l2_subdev_frame_interval, struct v4l2_subdev_selection */
25 #include <uapi/linux/v4l2-subdev.h>
26 /* struct v4l2_fmtdesc, struct v4l2_format */
27 #include <uapi/linux/videodev2.h>
28 #endif /* __GENKSYMS__ */
29 DECLARE_HOOK(android_vh_clear_reserved_fmt_fields,
30 	TP_PROTO(struct v4l2_format *fmt, int *ret),
31 	TP_ARGS(fmt, ret));
32 
33 DECLARE_HOOK(android_vh_fill_ext_fmtdesc,
34 	TP_PROTO(struct v4l2_fmtdesc *fmtd, const char **descr),
35 	TP_ARGS(fmtd, descr));
36 
37 DECLARE_HOOK(android_vh_clear_mask_adjust,
38 	TP_PROTO(unsigned int ctrl, int *n),
39 	TP_ARGS(ctrl, n));
40 
41 DECLARE_HOOK(android_vh_v4l2subdev_set_selection,
42 	TP_PROTO(struct v4l2_subdev *sd, struct v4l2_subdev_pad_config *pad,
43 	struct v4l2_subdev_selection *sel, int *ret),
44 	TP_ARGS(sd, pad, sel, ret));
45 
46 DECLARE_HOOK(android_vh_v4l2subdev_set_fmt,
47 	TP_PROTO(struct v4l2_subdev *sd, struct v4l2_subdev_pad_config *pad,
48 	struct v4l2_subdev_format *format, int *ret),
49 	TP_ARGS(sd, pad, format, ret));
50 
51 DECLARE_HOOK(android_vh_v4l2subdev_set_frame_interval,
52 	TP_PROTO(struct v4l2_subdev *sd, struct v4l2_subdev_frame_interval *fi,
53 	int *ret),
54 	TP_ARGS(sd, fi, ret));
55 
56 DECLARE_RESTRICTED_HOOK(android_rvh_v4l2subdev_set_selection,
57 	TP_PROTO(struct v4l2_subdev *sd, struct v4l2_subdev_pad_config *pad,
58 	struct v4l2_subdev_selection *sel, int *ret),
59 	TP_ARGS(sd, pad, sel, ret), 1);
60 
61 DECLARE_RESTRICTED_HOOK(android_rvh_v4l2subdev_set_fmt,
62 	TP_PROTO(struct v4l2_subdev *sd, struct v4l2_subdev_pad_config *pad,
63 	struct v4l2_subdev_format *format, int *ret),
64 	TP_ARGS(sd, pad, format, ret), 1);
65 
66 DECLARE_RESTRICTED_HOOK(android_rvh_v4l2subdev_set_frame_interval,
67 	TP_PROTO(struct v4l2_subdev *sd, struct v4l2_subdev_frame_interval *fi,
68 	int *ret),
69 	TP_ARGS(sd, fi, ret), 1);
70 
71 #endif /* _TRACE_HOOK_V4L2CORE_H */
72 /* This part must be outside protection */
73 #include <trace/define_trace.h>
74 
75