diff mbox

[RFC/PATCH,04/14] v4l-subdev: Add pads operations

Message ID 20091020011215.061080010@ideasonboard.com (mailing list archive)
State RFC
Headers show

Commit Message

Laurent Pinchart Oct. 20, 2009, 1:12 a.m. UTC
None
diff mbox

Patch

Index: v4l-dvb-mc/linux/include/media/v4l2-subdev.h
===================================================================
--- v4l-dvb-mc.orig/linux/include/media/v4l2-subdev.h
+++ v4l-dvb-mc/linux/include/media/v4l2-subdev.h
@@ -232,11 +232,21 @@  struct v4l2_subdev_video_ops {
 	int (*enum_frameintervals)(struct v4l2_subdev *sd, struct v4l2_frmivalenum *fival);
 };
 
+struct v4l2_subdev_pad_ops {
+	int (*enum_fmt)(struct v4l2_subdev *sd, unsigned int pad, struct v4l2_fmtdesc *fmtdesc);
+	int (*enum_framesizes)(struct v4l2_subdev *sd, unsigned int pad, struct v4l2_frmsizeenum *fsize);
+	int (*enum_frameintervals)(struct v4l2_subdev *sd, unsigned int pad, struct v4l2_frmivalenum *fival);
+	int (*get_fmt)(struct v4l2_subdev *sd, unsigned int pad, struct v4l2_format *fmt);
+	int (*try_fmt)(struct v4l2_subdev *sd, unsigned int pad, struct v4l2_format *fmt);
+	int (*set_fmt)(struct v4l2_subdev *sd, unsigned int pad, struct v4l2_format *fmt);
+};
+
 struct v4l2_subdev_ops {
 	const struct v4l2_subdev_core_ops  *core;
 	const struct v4l2_subdev_tuner_ops *tuner;
 	const struct v4l2_subdev_audio_ops *audio;
 	const struct v4l2_subdev_video_ops *video;
+	const struct v4l2_subdev_pad_ops *pad;
 };
 
 #define V4L2_SUBDEV_NAME_SIZE 32