linux/drivers/media/platform/vivid/vivid-vid-cap.h
<<
>>
Prefs
   1/*
   2 * vivid-vid-cap.h - video capture support functions.
   3 *
   4 * Copyright 2014 Cisco Systems, Inc. and/or its affiliates. All rights reserved.
   5 *
   6 * This program is free software; you may redistribute it and/or modify
   7 * it under the terms of the GNU General Public License as published by
   8 * the Free Software Foundation; version 2 of the License.
   9 *
  10 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
  11 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
  12 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
  13 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
  14 * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
  15 * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
  16 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
  17 * SOFTWARE.
  18 */
  19
  20#ifndef _VIVID_VID_CAP_H_
  21#define _VIVID_VID_CAP_H_
  22
  23void vivid_update_quality(struct vivid_dev *dev);
  24void vivid_update_format_cap(struct vivid_dev *dev, bool keep_controls);
  25enum tpg_video_aspect vivid_get_video_aspect(const struct vivid_dev *dev);
  26
  27extern const v4l2_std_id vivid_standard[];
  28extern const char * const vivid_ctrl_standard_strings[];
  29
  30extern const struct vb2_ops vivid_vid_cap_qops;
  31
  32int vivid_g_fmt_vid_cap(struct file *file, void *priv, struct v4l2_format *f);
  33int vivid_try_fmt_vid_cap(struct file *file, void *priv, struct v4l2_format *f);
  34int vivid_s_fmt_vid_cap(struct file *file, void *priv, struct v4l2_format *f);
  35int vidioc_g_fmt_vid_cap_mplane(struct file *file, void *priv, struct v4l2_format *f);
  36int vidioc_try_fmt_vid_cap_mplane(struct file *file, void *priv, struct v4l2_format *f);
  37int vidioc_s_fmt_vid_cap_mplane(struct file *file, void *priv, struct v4l2_format *f);
  38int vidioc_g_fmt_vid_cap(struct file *file, void *priv, struct v4l2_format *f);
  39int vidioc_try_fmt_vid_cap(struct file *file, void *priv, struct v4l2_format *f);
  40int vidioc_s_fmt_vid_cap(struct file *file, void *priv, struct v4l2_format *f);
  41int vivid_vid_cap_g_selection(struct file *file, void *priv, struct v4l2_selection *sel);
  42int vivid_vid_cap_s_selection(struct file *file, void *fh, struct v4l2_selection *s);
  43int vivid_vid_cap_cropcap(struct file *file, void *priv, struct v4l2_cropcap *cap);
  44int vidioc_enum_fmt_vid_overlay(struct file *file, void  *priv, struct v4l2_fmtdesc *f);
  45int vidioc_g_fmt_vid_overlay(struct file *file, void *priv, struct v4l2_format *f);
  46int vidioc_try_fmt_vid_overlay(struct file *file, void *priv, struct v4l2_format *f);
  47int vidioc_s_fmt_vid_overlay(struct file *file, void *priv, struct v4l2_format *f);
  48int vivid_vid_cap_overlay(struct file *file, void *fh, unsigned i);
  49int vivid_vid_cap_g_fbuf(struct file *file, void *fh, struct v4l2_framebuffer *a);
  50int vivid_vid_cap_s_fbuf(struct file *file, void *fh, const struct v4l2_framebuffer *a);
  51int vidioc_enum_input(struct file *file, void *priv, struct v4l2_input *inp);
  52int vidioc_g_input(struct file *file, void *priv, unsigned *i);
  53int vidioc_s_input(struct file *file, void *priv, unsigned i);
  54int vidioc_enumaudio(struct file *file, void *fh, struct v4l2_audio *vin);
  55int vidioc_g_audio(struct file *file, void *fh, struct v4l2_audio *vin);
  56int vidioc_s_audio(struct file *file, void *fh, const struct v4l2_audio *vin);
  57int vivid_video_g_frequency(struct file *file, void *fh, struct v4l2_frequency *vf);
  58int vivid_video_s_frequency(struct file *file, void *fh, const struct v4l2_frequency *vf);
  59int vivid_video_s_tuner(struct file *file, void *fh, const struct v4l2_tuner *vt);
  60int vivid_video_g_tuner(struct file *file, void *fh, struct v4l2_tuner *vt);
  61int vidioc_querystd(struct file *file, void *priv, v4l2_std_id *id);
  62int vivid_vid_cap_s_std(struct file *file, void *priv, v4l2_std_id id);
  63int vivid_vid_cap_s_dv_timings(struct file *file, void *_fh, struct v4l2_dv_timings *timings);
  64int vidioc_query_dv_timings(struct file *file, void *_fh, struct v4l2_dv_timings *timings);
  65int vidioc_s_edid(struct file *file, void *_fh, struct v4l2_edid *edid);
  66int vidioc_enum_framesizes(struct file *file, void *fh, struct v4l2_frmsizeenum *fsize);
  67int vidioc_enum_frameintervals(struct file *file, void *priv, struct v4l2_frmivalenum *fival);
  68int vivid_vid_cap_g_parm(struct file *file, void *priv, struct v4l2_streamparm *parm);
  69int vivid_vid_cap_s_parm(struct file *file, void *priv, struct v4l2_streamparm *parm);
  70
  71#endif
  72