| /**************************************************************************** |
| **************************************************************************** |
| *** |
| *** This header was automatically generated from a Linux kernel header |
| *** of the same name, to make information necessary for userspace to |
| *** call into the kernel available to libc. It contains only constants, |
| *** structures, and macros generated from the original header, and thus, |
| *** contains no copyrightable information. |
| *** |
| *** To edit the content of this header, modify the corresponding |
| *** source file (e.g. under external/kernel-headers/original/) then |
| *** run bionic/libc/kernel/tools/update_all.py |
| *** |
| *** Any manual change here will be lost the next time this script will |
| *** be run. You've been warned! |
| *** |
| **************************************************************************** |
| ****************************************************************************/ |
| #ifndef AM437X_VPFE_USER_H |
| #define AM437X_VPFE_USER_H |
| #include <linux/videodev2.h> |
| enum vpfe_ccdc_data_size { |
| VPFE_CCDC_DATA_16BITS = 0, |
| VPFE_CCDC_DATA_15BITS, |
| VPFE_CCDC_DATA_14BITS, |
| VPFE_CCDC_DATA_13BITS, |
| VPFE_CCDC_DATA_12BITS, |
| VPFE_CCDC_DATA_11BITS, |
| VPFE_CCDC_DATA_10BITS, |
| VPFE_CCDC_DATA_8BITS, |
| }; |
| enum vpfe_ccdc_sample_length { |
| VPFE_CCDC_SAMPLE_1PIXELS = 0, |
| VPFE_CCDC_SAMPLE_2PIXELS, |
| VPFE_CCDC_SAMPLE_4PIXELS, |
| VPFE_CCDC_SAMPLE_8PIXELS, |
| VPFE_CCDC_SAMPLE_16PIXELS, |
| }; |
| enum vpfe_ccdc_sample_line { |
| VPFE_CCDC_SAMPLE_1LINES = 0, |
| VPFE_CCDC_SAMPLE_2LINES, |
| VPFE_CCDC_SAMPLE_4LINES, |
| VPFE_CCDC_SAMPLE_8LINES, |
| VPFE_CCDC_SAMPLE_16LINES, |
| }; |
| enum vpfe_ccdc_gamma_width { |
| VPFE_CCDC_GAMMA_BITS_15_6 = 0, |
| VPFE_CCDC_GAMMA_BITS_14_5, |
| VPFE_CCDC_GAMMA_BITS_13_4, |
| VPFE_CCDC_GAMMA_BITS_12_3, |
| VPFE_CCDC_GAMMA_BITS_11_2, |
| VPFE_CCDC_GAMMA_BITS_10_1, |
| VPFE_CCDC_GAMMA_BITS_09_0, |
| }; |
| struct vpfe_ccdc_a_law { |
| unsigned char enable; |
| enum vpfe_ccdc_gamma_width gamma_wd; |
| }; |
| struct vpfe_ccdc_black_clamp { |
| unsigned char enable; |
| enum vpfe_ccdc_sample_length sample_pixel; |
| enum vpfe_ccdc_sample_line sample_ln; |
| unsigned short start_pixel; |
| unsigned short sgain; |
| unsigned short dc_sub; |
| }; |
| struct vpfe_ccdc_black_compensation { |
| char r; |
| char gr; |
| char b; |
| char gb; |
| }; |
| struct vpfe_ccdc_config_params_raw { |
| enum vpfe_ccdc_data_size data_sz; |
| struct vpfe_ccdc_a_law alaw; |
| struct vpfe_ccdc_black_clamp blk_clamp; |
| struct vpfe_ccdc_black_compensation blk_comp; |
| }; |
| #define VIDIOC_AM437X_CCDC_CFG _IOW('V', BASE_VIDIOC_PRIVATE + 1, void *) |
| #endif |