blob: de9e3a954f3da398d7bfc868101d181361a54512 [file] [log] [blame]
Greg Kroah-Hartmane2be04c2017-11-01 15:09:13 +01001/* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */
Linus Torvalds1da177e2005-04-16 15:20:36 -07002/*
3 * Motion Eye video4linux driver for Sony Vaio PictureBook
4 *
5 * Copyright (C) 2001-2003 Stelian Pop <stelian@popies.net>
6 *
John Anthony Kazos Jr121e70b2007-05-09 08:30:57 +02007 * Copyright (C) 2001-2002 AlcĂ´ve <www.alcove.com>
Linus Torvalds1da177e2005-04-16 15:20:36 -07008 *
9 * Copyright (C) 2000 Andrew Tridgell <tridge@valinux.com>
10 *
11 * Earlier work by Werner Almesberger, Paul `Rusty' Russell and Paul Mackerras.
12 *
13 * Some parts borrowed from various video4linux drivers, especially
14 * bttv-driver.c and zoran.c, see original files for credits.
15 *
16 * This program is free software; you can redistribute it and/or modify
17 * it under the terms of the GNU General Public License as published by
18 * the Free Software Foundation; either version 2 of the License, or
19 * (at your option) any later version.
20 *
21 * This program is distributed in the hope that it will be useful,
22 * but WITHOUT ANY WARRANTY; without even the implied warranty of
23 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
24 * GNU General Public License for more details.
25 *
26 * You should have received a copy of the GNU General Public License
27 * along with this program; if not, write to the Free Software
28 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
29 */
30
31#ifndef _MEYE_H_
32#define _MEYE_H_
33
34/****************************************************************************/
35/* Private API for handling mjpeg capture / playback. */
36/****************************************************************************/
37
38struct meye_params {
39 unsigned char subsample;
40 unsigned char quality;
41 unsigned char sharpness;
42 unsigned char agc;
43 unsigned char picture;
44 unsigned char framerate;
45};
46
47/* query the extended parameters */
Hans Verkuil51270612010-03-22 05:22:34 -030048#define MEYEIOC_G_PARAMS _IOR ('v', BASE_VIDIOC_PRIVATE+0, struct meye_params)
Linus Torvalds1da177e2005-04-16 15:20:36 -070049/* set the extended parameters */
Hans Verkuil51270612010-03-22 05:22:34 -030050#define MEYEIOC_S_PARAMS _IOW ('v', BASE_VIDIOC_PRIVATE+1, struct meye_params)
Linus Torvalds1da177e2005-04-16 15:20:36 -070051/* queue a buffer for mjpeg capture */
Hans Verkuil51270612010-03-22 05:22:34 -030052#define MEYEIOC_QBUF_CAPT _IOW ('v', BASE_VIDIOC_PRIVATE+2, int)
Linus Torvalds1da177e2005-04-16 15:20:36 -070053/* sync a previously queued mjpeg buffer */
Hans Verkuil51270612010-03-22 05:22:34 -030054#define MEYEIOC_SYNC _IOWR('v', BASE_VIDIOC_PRIVATE+3, int)
Linus Torvalds1da177e2005-04-16 15:20:36 -070055/* get a still uncompressed snapshot */
Hans Verkuil51270612010-03-22 05:22:34 -030056#define MEYEIOC_STILLCAPT _IO ('v', BASE_VIDIOC_PRIVATE+4)
Linus Torvalds1da177e2005-04-16 15:20:36 -070057/* get a jpeg compressed snapshot */
Hans Verkuil51270612010-03-22 05:22:34 -030058#define MEYEIOC_STILLJCAPT _IOR ('v', BASE_VIDIOC_PRIVATE+5, int)
Linus Torvalds1da177e2005-04-16 15:20:36 -070059
60/* V4L2 private controls */
Hans Verkuiled986d12013-01-29 07:21:02 -030061#define V4L2_CID_MEYE_AGC (V4L2_CID_USER_MEYE_BASE + 0)
62#define V4L2_CID_MEYE_PICTURE (V4L2_CID_USER_MEYE_BASE + 1)
63#define V4L2_CID_MEYE_FRAMERATE (V4L2_CID_USER_MEYE_BASE + 2)
Linus Torvalds1da177e2005-04-16 15:20:36 -070064
65#endif