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