1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0-only */ 2*4882a593Smuzhiyun /* 3*4882a593Smuzhiyun * vivid-vid-out.h - video output support functions. 4*4882a593Smuzhiyun * 5*4882a593Smuzhiyun * Copyright 2014 Cisco Systems, Inc. and/or its affiliates. All rights reserved. 6*4882a593Smuzhiyun */ 7*4882a593Smuzhiyun 8*4882a593Smuzhiyun #ifndef _VIVID_VID_OUT_H_ 9*4882a593Smuzhiyun #define _VIVID_VID_OUT_H_ 10*4882a593Smuzhiyun 11*4882a593Smuzhiyun extern const struct vb2_ops vivid_vid_out_qops; 12*4882a593Smuzhiyun 13*4882a593Smuzhiyun void vivid_update_format_out(struct vivid_dev *dev); 14*4882a593Smuzhiyun 15*4882a593Smuzhiyun int vivid_g_fmt_vid_out(struct file *file, void *priv, struct v4l2_format *f); 16*4882a593Smuzhiyun int vivid_try_fmt_vid_out(struct file *file, void *priv, struct v4l2_format *f); 17*4882a593Smuzhiyun int vivid_s_fmt_vid_out(struct file *file, void *priv, struct v4l2_format *f); 18*4882a593Smuzhiyun int vidioc_g_fmt_vid_out_mplane(struct file *file, void *priv, struct v4l2_format *f); 19*4882a593Smuzhiyun int vidioc_try_fmt_vid_out_mplane(struct file *file, void *priv, struct v4l2_format *f); 20*4882a593Smuzhiyun int vidioc_s_fmt_vid_out_mplane(struct file *file, void *priv, struct v4l2_format *f); 21*4882a593Smuzhiyun int vidioc_g_fmt_vid_out(struct file *file, void *priv, struct v4l2_format *f); 22*4882a593Smuzhiyun int vidioc_try_fmt_vid_out(struct file *file, void *priv, struct v4l2_format *f); 23*4882a593Smuzhiyun int vidioc_s_fmt_vid_out(struct file *file, void *priv, struct v4l2_format *f); 24*4882a593Smuzhiyun int vivid_vid_out_g_selection(struct file *file, void *priv, struct v4l2_selection *sel); 25*4882a593Smuzhiyun int vivid_vid_out_s_selection(struct file *file, void *fh, struct v4l2_selection *s); 26*4882a593Smuzhiyun int vivid_vid_out_g_pixelaspect(struct file *file, void *priv, int type, struct v4l2_fract *f); 27*4882a593Smuzhiyun int vidioc_enum_fmt_vid_out_overlay(struct file *file, void *priv, struct v4l2_fmtdesc *f); 28*4882a593Smuzhiyun int vidioc_g_fmt_vid_out_overlay(struct file *file, void *priv, struct v4l2_format *f); 29*4882a593Smuzhiyun int vidioc_try_fmt_vid_out_overlay(struct file *file, void *priv, struct v4l2_format *f); 30*4882a593Smuzhiyun int vidioc_s_fmt_vid_out_overlay(struct file *file, void *priv, struct v4l2_format *f); 31*4882a593Smuzhiyun int vivid_vid_out_overlay(struct file *file, void *fh, unsigned i); 32*4882a593Smuzhiyun int vivid_vid_out_g_fbuf(struct file *file, void *fh, struct v4l2_framebuffer *a); 33*4882a593Smuzhiyun int vivid_vid_out_s_fbuf(struct file *file, void *fh, const struct v4l2_framebuffer *a); 34*4882a593Smuzhiyun int vidioc_enum_output(struct file *file, void *priv, struct v4l2_output *out); 35*4882a593Smuzhiyun int vidioc_g_output(struct file *file, void *priv, unsigned *i); 36*4882a593Smuzhiyun int vidioc_s_output(struct file *file, void *priv, unsigned i); 37*4882a593Smuzhiyun int vidioc_enumaudout(struct file *file, void *fh, struct v4l2_audioout *vout); 38*4882a593Smuzhiyun int vidioc_g_audout(struct file *file, void *fh, struct v4l2_audioout *vout); 39*4882a593Smuzhiyun int vidioc_s_audout(struct file *file, void *fh, const struct v4l2_audioout *vout); 40*4882a593Smuzhiyun int vivid_vid_out_s_std(struct file *file, void *priv, v4l2_std_id id); 41*4882a593Smuzhiyun int vivid_vid_out_s_dv_timings(struct file *file, void *_fh, struct v4l2_dv_timings *timings); 42*4882a593Smuzhiyun int vivid_vid_out_g_parm(struct file *file, void *priv, struct v4l2_streamparm *parm); 43*4882a593Smuzhiyun 44*4882a593Smuzhiyun #endif 45