0001
0002
0003
0004
0005
0006
0007
0008
0009 #ifndef __OV772X_H__
0010 #define __OV772X_H__
0011
0012
0013 #define OV772X_FLAG_VFLIP (1 << 0)
0014 #define OV772X_FLAG_HFLIP (1 << 1)
0015
0016
0017
0018
0019
0020
0021
0022 struct ov772x_edge_ctrl {
0023 unsigned char strength;
0024 unsigned char threshold;
0025 unsigned char upper;
0026 unsigned char lower;
0027 };
0028
0029 #define OV772X_MANUAL_EDGE_CTRL 0x80
0030 #define OV772X_EDGE_STRENGTH_MASK 0x1F
0031 #define OV772X_EDGE_THRESHOLD_MASK 0x0F
0032 #define OV772X_EDGE_UPPER_MASK 0xFF
0033 #define OV772X_EDGE_LOWER_MASK 0xFF
0034
0035 #define OV772X_AUTO_EDGECTRL(u, l) \
0036 { \
0037 .upper = (u & OV772X_EDGE_UPPER_MASK), \
0038 .lower = (l & OV772X_EDGE_LOWER_MASK), \
0039 }
0040
0041 #define OV772X_MANUAL_EDGECTRL(s, t) \
0042 { \
0043 .strength = (s & OV772X_EDGE_STRENGTH_MASK) | \
0044 OV772X_MANUAL_EDGE_CTRL, \
0045 .threshold = (t & OV772X_EDGE_THRESHOLD_MASK), \
0046 }
0047
0048
0049
0050
0051
0052
0053 struct ov772x_camera_info {
0054 unsigned long flags;
0055 struct ov772x_edge_ctrl edgectrl;
0056 };
0057
0058 #endif