1
2
3
4
5
6
7
8
9
10
11
12
13
14#ifndef __LINUX_OVCAMCHIP_H
15#define __LINUX_OVCAMCHIP_H
16
17#include <linux/videodev.h>
18#include <media/v4l2-common.h>
19
20
21
22
23
24
25enum {
26 OVCAMCHIP_CID_CONT,
27 OVCAMCHIP_CID_BRIGHT,
28 OVCAMCHIP_CID_SAT,
29 OVCAMCHIP_CID_HUE,
30 OVCAMCHIP_CID_EXP,
31 OVCAMCHIP_CID_FREQ,
32 OVCAMCHIP_CID_BANDFILT,
33 OVCAMCHIP_CID_AUTOBRIGHT,
34 OVCAMCHIP_CID_AUTOEXP,
35 OVCAMCHIP_CID_BACKLIGHT,
36 OVCAMCHIP_CID_MIRROR,
37};
38
39
40#define NUM_CC_TYPES 9
41enum {
42 CC_UNKNOWN,
43 CC_OV76BE,
44 CC_OV7610,
45 CC_OV7620,
46 CC_OV7620AE,
47 CC_OV6620,
48 CC_OV6630,
49 CC_OV6630AE,
50 CC_OV6630AF,
51};
52
53
54
55
56
57#define OV7xx0_SID (0x42 >> 1)
58#define OV6xx0_SID (0xC0 >> 1)
59
60
61
62
63
64struct ovcamchip_control {
65 __u32 id;
66 __s32 value;
67};
68
69struct ovcamchip_window {
70 int x;
71 int y;
72 int width;
73 int height;
74 int format;
75 int quarter;
76
77
78 int clockdiv;
79};
80
81
82#define OVCAMCHIP_CMD_Q_SUBTYPE _IOR (0x88, 0x00, int)
83#define OVCAMCHIP_CMD_INITIALIZE _IOW (0x88, 0x01, int)
84
85#define OVCAMCHIP_CMD_S_CTRL _IOW (0x88, 0x02, struct ovcamchip_control)
86#define OVCAMCHIP_CMD_G_CTRL _IOWR (0x88, 0x03, struct ovcamchip_control)
87#define OVCAMCHIP_CMD_S_MODE _IOW (0x88, 0x04, struct ovcamchip_window)
88#define OVCAMCHIP_MAX_CMD _IO (0x88, 0x3f)
89
90#endif
91