Go to the documentation of this file.
27 #ifndef OMAP3_ISP_USER_H
28 #define OMAP3_ISP_USER_H
30 #include <linux/types.h>
31 #include <linux/videodev2.h>
45 #define VIDIOC_OMAP3ISP_CCDC_CFG \
46 _IOWR('V', BASE_VIDIOC_PRIVATE + 1, struct omap3isp_ccdc_update_config)
47 #define VIDIOC_OMAP3ISP_PRV_CFG \
48 _IOWR('V', BASE_VIDIOC_PRIVATE + 2, struct omap3isp_prev_update_config)
49 #define VIDIOC_OMAP3ISP_AEWB_CFG \
50 _IOWR('V', BASE_VIDIOC_PRIVATE + 3, struct omap3isp_h3a_aewb_config)
51 #define VIDIOC_OMAP3ISP_HIST_CFG \
52 _IOWR('V', BASE_VIDIOC_PRIVATE + 4, struct omap3isp_hist_config)
53 #define VIDIOC_OMAP3ISP_AF_CFG \
54 _IOWR('V', BASE_VIDIOC_PRIVATE + 5, struct omap3isp_h3a_af_config)
55 #define VIDIOC_OMAP3ISP_STAT_REQ \
56 _IOWR('V', BASE_VIDIOC_PRIVATE + 6, struct omap3isp_stat_data)
57 #define VIDIOC_OMAP3ISP_STAT_EN \
58 _IOWR('V', BASE_VIDIOC_PRIVATE + 7, unsigned long)
68 #define V4L2_EVENT_OMAP3ISP_CLASS (V4L2_EVENT_PRIVATE_START | 0x100)
69 #define V4L2_EVENT_OMAP3ISP_AEWB (V4L2_EVENT_OMAP3ISP_CLASS | 0x1)
70 #define V4L2_EVENT_OMAP3ISP_AF (V4L2_EVENT_OMAP3ISP_CLASS | 0x2)
71 #define V4L2_EVENT_OMAP3ISP_HIST (V4L2_EVENT_OMAP3ISP_CLASS | 0x3)
82 #define OMAP3ISP_AEWB_MAX_SATURATION_LIM 1023
83 #define OMAP3ISP_AEWB_MIN_WIN_H 2
84 #define OMAP3ISP_AEWB_MAX_WIN_H 256
85 #define OMAP3ISP_AEWB_MIN_WIN_W 6
86 #define OMAP3ISP_AEWB_MAX_WIN_W 256
87 #define OMAP3ISP_AEWB_MIN_WINVC 1
88 #define OMAP3ISP_AEWB_MIN_WINHC 1
89 #define OMAP3ISP_AEWB_MAX_WINVC 128
90 #define OMAP3ISP_AEWB_MAX_WINHC 36
91 #define OMAP3ISP_AEWB_MAX_WINSTART 4095
92 #define OMAP3ISP_AEWB_MIN_SUB_INC 2
93 #define OMAP3ISP_AEWB_MAX_SUB_INC 32
94 #define OMAP3ISP_AEWB_MAX_BUF_SIZE 83600
96 #define OMAP3ISP_AF_IIRSH_MIN 0
97 #define OMAP3ISP_AF_IIRSH_MAX 4095
98 #define OMAP3ISP_AF_PAXEL_HORIZONTAL_COUNT_MIN 1
99 #define OMAP3ISP_AF_PAXEL_HORIZONTAL_COUNT_MAX 36
100 #define OMAP3ISP_AF_PAXEL_VERTICAL_COUNT_MIN 1
101 #define OMAP3ISP_AF_PAXEL_VERTICAL_COUNT_MAX 128
102 #define OMAP3ISP_AF_PAXEL_INCREMENT_MIN 2
103 #define OMAP3ISP_AF_PAXEL_INCREMENT_MAX 32
104 #define OMAP3ISP_AF_PAXEL_HEIGHT_MIN 2
105 #define OMAP3ISP_AF_PAXEL_HEIGHT_MAX 256
106 #define OMAP3ISP_AF_PAXEL_WIDTH_MIN 16
107 #define OMAP3ISP_AF_PAXEL_WIDTH_MAX 256
108 #define OMAP3ISP_AF_PAXEL_HZSTART_MIN 1
109 #define OMAP3ISP_AF_PAXEL_HZSTART_MAX 4095
110 #define OMAP3ISP_AF_PAXEL_VTSTART_MIN 0
111 #define OMAP3ISP_AF_PAXEL_VTSTART_MAX 4095
112 #define OMAP3ISP_AF_THRESHOLD_MAX 255
113 #define OMAP3ISP_AF_COEF_MAX 4095
114 #define OMAP3ISP_AF_PAXEL_SIZE 48
115 #define OMAP3ISP_AF_MAX_BUF_SIZE 221184
179 #define OMAP3ISP_HIST_BINS_32 0
180 #define OMAP3ISP_HIST_BINS_64 1
181 #define OMAP3ISP_HIST_BINS_128 2
182 #define OMAP3ISP_HIST_BINS_256 3
185 #define OMAP3ISP_HIST_MEM_SIZE_BINS(n) ((1 << ((n)+5))*4*4)
187 #define OMAP3ISP_HIST_MEM_SIZE 1024
188 #define OMAP3ISP_HIST_MIN_REGIONS 1
189 #define OMAP3ISP_HIST_MAX_REGIONS 4
190 #define OMAP3ISP_HIST_MAX_WB_GAIN 255
191 #define OMAP3ISP_HIST_MIN_WB_GAIN 0
192 #define OMAP3ISP_HIST_MAX_BIT_WIDTH 14
193 #define OMAP3ISP_HIST_MIN_BIT_WIDTH 8
194 #define OMAP3ISP_HIST_MAX_WG 4
195 #define OMAP3ISP_HIST_MAX_BUF_SIZE 4096
198 #define OMAP3ISP_HIST_SOURCE_CCDC 0
199 #define OMAP3ISP_HIST_SOURCE_MEM 1
202 #define OMAP3ISP_HIST_CFA_BAYER 0
203 #define OMAP3ISP_HIST_CFA_FOVEONX3 1
232 #define OMAP3ISP_AF_NUM_COEF 11
294 #define OMAP3ISP_CCDC_ALAW (1 << 0)
295 #define OMAP3ISP_CCDC_LPF (1 << 1)
296 #define OMAP3ISP_CCDC_BLCLAMP (1 << 2)
297 #define OMAP3ISP_CCDC_BCOMP (1 << 3)
298 #define OMAP3ISP_CCDC_FPC (1 << 4)
299 #define OMAP3ISP_CCDC_CULL (1 << 5)
300 #define OMAP3ISP_CCDC_CONFIG_LSC (1 << 7)
301 #define OMAP3ISP_CCDC_TBL_LSC (1 << 8)
303 #define OMAP3ISP_RGB_MAX 3
420 #define OMAP3ISP_PREV_LUMAENH (1 << 0)
421 #define OMAP3ISP_PREV_INVALAW (1 << 1)
422 #define OMAP3ISP_PREV_HRZ_MED (1 << 2)
423 #define OMAP3ISP_PREV_CFA (1 << 3)
424 #define OMAP3ISP_PREV_CHROMA_SUPP (1 << 4)
425 #define OMAP3ISP_PREV_WB (1 << 5)
426 #define OMAP3ISP_PREV_BLKADJ (1 << 6)
427 #define OMAP3ISP_PREV_RGB2RGB (1 << 7)
428 #define OMAP3ISP_PREV_COLOR_CONV (1 << 8)
429 #define OMAP3ISP_PREV_YC_LIMIT (1 << 9)
430 #define OMAP3ISP_PREV_DEFECT_COR (1 << 10)
432 #define OMAP3ISP_PREV_DRK_FRM_CAPTURE (1 << 12)
433 #define OMAP3ISP_PREV_DRK_FRM_SUBTRACT (1 << 13)
434 #define OMAP3ISP_PREV_LENS_SHADING (1 << 14)
435 #define OMAP3ISP_PREV_NF (1 << 15)
436 #define OMAP3ISP_PREV_GAMMA (1 << 16)
438 #define OMAP3ISP_PREV_NF_TBL_SIZE 64
439 #define OMAP3ISP_PREV_CFA_TBL_SIZE 576
440 #define OMAP3ISP_PREV_CFA_BLK_SIZE (OMAP3ISP_PREV_CFA_TBL_SIZE / 4)
441 #define OMAP3ISP_PREV_GAMMA_TBL_SIZE 1024
442 #define OMAP3ISP_PREV_YENH_TBL_SIZE 128
444 #define OMAP3ISP_PREV_DETECT_CORRECT_CHANNELS 4