Linux-libre 3.11-gnu
[librecmc/linux-libre.git] / drivers / staging / media / go7007 / go7007.h
1 /*
2  * Copyright (C) 2005-2006 Micronas USA Inc.
3  *
4  * Permission is hereby granted, free of charge, to any person obtaining a
5  * copy of this software and the associated README documentation file (the
6  * "Software"), to deal in the Software without restriction, including
7  * without limitation the rights to use, copy, modify, merge, publish,
8  * distribute, sublicense, and/or sell copies of the Software, and to
9  * permit persons to whom the Software is furnished to do so.
10  *
11  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
12  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
13  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
14  * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
15  * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
16  * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
17  * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
18  */
19
20 struct go7007_md_params {
21         __u16 region;
22         __u16 trigger;
23         __u16 pixel_threshold;
24         __u16 motion_threshold;
25         __u32 reserved[8];
26 };
27
28 struct go7007_md_region {
29         __u16 region;
30         __u16 flags;
31         struct v4l2_clip *clips;
32         __u32 reserved[8];
33 };
34
35 #define GO7007IOC_S_MD_PARAMS   _IOWR('V', BASE_VIDIOC_PRIVATE + 6, \
36                                         struct go7007_md_params)
37 #define GO7007IOC_G_MD_PARAMS   _IOR('V', BASE_VIDIOC_PRIVATE + 7, \
38                                         struct go7007_md_params)
39 #define GO7007IOC_S_MD_REGION   _IOW('V', BASE_VIDIOC_PRIVATE + 8, \
40                                         struct go7007_md_region)