1 /* SPDX-License-Identifier: ((GPL-2.0+ WITH Linux-syscall-note) OR MIT) */ 2 /* 3 * Allwinner A31 ISP Configuration 4 */ 5 6 #ifndef _UAPI_SUN6I_ISP_CONFIG_H 7 #define _UAPI_SUN6I_ISP_CONFIG_H 8 9 #include <linux/types.h> 10 11 #define V4L2_META_FMT_SUN6I_ISP_PARAMS v4l2_fourcc('S', '6', 'I', 'P') /* Allwinner A31 ISP Parameters */ 12 13 #define SUN6I_ISP_MODULE_BAYER (1U << 0) 14 #define SUN6I_ISP_MODULE_BDNF (1U << 1) 15 16 struct sun6i_isp_params_config_bayer { 17 __u16 offset_r; 18 __u16 offset_gr; 19 __u16 offset_gb; 20 __u16 offset_b; 21 22 __u16 gain_r; 23 __u16 gain_gr; 24 __u16 gain_gb; 25 __u16 gain_b; 26 }; 27 28 struct sun6i_isp_params_config_bdnf { 29 __u8 in_dis_min; 30 __u8 in_dis_max; 31 32 __u8 coefficients_g[7]; 33 __u8 coefficients_rb[5]; 34 }; 35 36 struct sun6i_isp_params_config { 37 __u32 modules_used; 38 39 struct sun6i_isp_params_config_bayer bayer; 40 struct sun6i_isp_params_config_bdnf bdnf; 41 }; 42 43 #endif /* _UAPI_SUN6I_ISP_CONFIG_H */ 44