-
Notifications
You must be signed in to change notification settings - Fork 44
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #20 from ajcasagrande/add-headers
Include local copy of v4l2 headers in project repository.
- Loading branch information
Showing
13 changed files
with
5,561 additions
and
9 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,7 @@ | ||
package main | ||
|
||
/* | ||
#cgo linux CFLAGS: -I ${SRCDIR}/../../include/ | ||
#include <linux/videodev2.h> | ||
*/ | ||
import "C" | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
# V4L2 Include Files | ||
|
||
Here we provide a copy of the v4l2 header files as per the | ||
[kernel.org docs](https://docs.kernel.org/userspace-api/media/v4l/func-ioctl.html#description): | ||
|
||
> Macros and defines specifying V4L2 ioctl requests are located in the `videodev2.h` header file. | ||
> _**Applications should use their own copy, not include the version in the kernel sources on the system they compile on.**_ | ||
This helps to reduce compilation errors due to outdated headers installed in the user's system. | ||
|
||
Headers have been obtained from `v4l-utils` repo as of commit [3b94a0ca4894d75de240b3ebb296071e551a261e](https://github.com/gjasny/v4l-utils/tree/3b94a0ca4894d75de240b3ebb296071e551a261e/include/linux) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,108 @@ | ||
/* SPDX-License-Identifier: ((GPL-2.0+ WITH Linux-syscall-note) OR BSD-3-Clause) */ | ||
/* | ||
* include/linux/v4l2-common.h | ||
* | ||
* Common V4L2 and V4L2 subdev definitions. | ||
* | ||
* Users are advised to #include this file either through videodev2.h | ||
* (V4L2) or through v4l2-subdev.h (V4L2 subdev) rather than to refer | ||
* to this file directly. | ||
* | ||
* Copyright (C) 2012 Nokia Corporation | ||
* Contact: Sakari Ailus <[email protected]> | ||
* | ||
* This program is free software; you can redistribute it and/or modify | ||
* it under the terms of the GNU General Public License as published by | ||
* the Free Software Foundation; either version 2 of the License, or | ||
* (at your option) any later version. | ||
* | ||
* This program is distributed in the hope that it will be useful, | ||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
* GNU General Public License for more details. | ||
* | ||
* Alternatively you can redistribute this file under the terms of the | ||
* BSD license as stated below: | ||
* | ||
* Redistribution and use in source and binary forms, with or without | ||
* modification, are permitted provided that the following conditions | ||
* are met: | ||
* 1. Redistributions of source code must retain the above copyright | ||
* notice, this list of conditions and the following disclaimer. | ||
* 2. Redistributions in binary form must reproduce the above copyright | ||
* notice, this list of conditions and the following disclaimer in | ||
* the documentation and/or other materials provided with the | ||
* distribution. | ||
* 3. The names of its contributors may not be used to endorse or promote | ||
* products derived from this software without specific prior written | ||
* permission. | ||
* | ||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS | ||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT | ||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR | ||
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT | ||
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, | ||
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED | ||
* TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR | ||
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF | ||
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING | ||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS | ||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
* | ||
*/ | ||
|
||
#ifndef __V4L2_COMMON__ | ||
#define __V4L2_COMMON__ | ||
|
||
#include <linux/types.h> | ||
|
||
/* | ||
* | ||
* Selection interface definitions | ||
* | ||
*/ | ||
|
||
/* Current cropping area */ | ||
#define V4L2_SEL_TGT_CROP 0x0000 | ||
/* Default cropping area */ | ||
#define V4L2_SEL_TGT_CROP_DEFAULT 0x0001 | ||
/* Cropping bounds */ | ||
#define V4L2_SEL_TGT_CROP_BOUNDS 0x0002 | ||
/* Native frame size */ | ||
#define V4L2_SEL_TGT_NATIVE_SIZE 0x0003 | ||
/* Current composing area */ | ||
#define V4L2_SEL_TGT_COMPOSE 0x0100 | ||
/* Default composing area */ | ||
#define V4L2_SEL_TGT_COMPOSE_DEFAULT 0x0101 | ||
/* Composing bounds */ | ||
#define V4L2_SEL_TGT_COMPOSE_BOUNDS 0x0102 | ||
/* Current composing area plus all padding pixels */ | ||
#define V4L2_SEL_TGT_COMPOSE_PADDED 0x0103 | ||
|
||
/* Selection flags */ | ||
#define V4L2_SEL_FLAG_GE (1 << 0) | ||
#define V4L2_SEL_FLAG_LE (1 << 1) | ||
#define V4L2_SEL_FLAG_KEEP_CONFIG (1 << 2) | ||
|
||
struct v4l2_edid { | ||
__u32 pad; | ||
__u32 start_block; | ||
__u32 blocks; | ||
__u32 reserved[5]; | ||
__u8 *edid; | ||
}; | ||
|
||
/* Backward compatibility target definitions --- to be removed. */ | ||
#define V4L2_SEL_TGT_CROP_ACTIVE V4L2_SEL_TGT_CROP | ||
#define V4L2_SEL_TGT_COMPOSE_ACTIVE V4L2_SEL_TGT_COMPOSE | ||
#define V4L2_SUBDEV_SEL_TGT_CROP_ACTUAL V4L2_SEL_TGT_CROP | ||
#define V4L2_SUBDEV_SEL_TGT_COMPOSE_ACTUAL V4L2_SEL_TGT_COMPOSE | ||
#define V4L2_SUBDEV_SEL_TGT_CROP_BOUNDS V4L2_SEL_TGT_CROP_BOUNDS | ||
#define V4L2_SUBDEV_SEL_TGT_COMPOSE_BOUNDS V4L2_SEL_TGT_COMPOSE_BOUNDS | ||
|
||
/* Backward compatibility flag definitions --- to be removed. */ | ||
#define V4L2_SUBDEV_SEL_FLAG_SIZE_GE V4L2_SEL_FLAG_GE | ||
#define V4L2_SUBDEV_SEL_FLAG_SIZE_LE V4L2_SEL_FLAG_LE | ||
#define V4L2_SUBDEV_SEL_FLAG_KEEP_CONFIG V4L2_SEL_FLAG_KEEP_CONFIG | ||
|
||
#endif /* __V4L2_COMMON__ */ |
Oops, something went wrong.