13d0407baSopenharmony_ci/* SPDX-License-Identifier: (GPL-2.0+ WITH Linux-syscall-note) OR MIT 23d0407baSopenharmony_ci * 33d0407baSopenharmony_ci * Rockchip isp2 driver 43d0407baSopenharmony_ci * Copyright (C) 2020 Rockchip Electronics Co., Ltd. 53d0407baSopenharmony_ci */ 63d0407baSopenharmony_ci 73d0407baSopenharmony_ci#ifndef _UAPI_RKISP21_CONFIG_H 83d0407baSopenharmony_ci#define _UAPI_RKISP21_CONFIG_H 93d0407baSopenharmony_ci 103d0407baSopenharmony_ci#include <linux/types.h> 113d0407baSopenharmony_ci#include <linux/v4l2-controls.h> 123d0407baSopenharmony_ci#include <linux/rkisp2-config.h> 133d0407baSopenharmony_ci 143d0407baSopenharmony_ci#define ISP2X_MODULE_BAYNR BIT_ULL(36) 153d0407baSopenharmony_ci#define ISP2X_MODULE_BAY3D BIT_ULL(37) 163d0407baSopenharmony_ci#define ISP2X_MODULE_YNR BIT_ULL(38) 173d0407baSopenharmony_ci#define ISP2X_MODULE_CNR BIT_ULL(39) 183d0407baSopenharmony_ci#define ISP2X_MODULE_SHARP BIT_ULL(40) 193d0407baSopenharmony_ci#define ISP2X_MODULE_DRC BIT_ULL(41) 203d0407baSopenharmony_ci#define ISP2X_MODULE_CSM BIT_ULL(43) 213d0407baSopenharmony_ci 223d0407baSopenharmony_ci#define ISP21_DHAZ_ENH_CURVE_NUM 17 233d0407baSopenharmony_ci#define ISP21_DHAZ_HIST_IIR_NUM 64 243d0407baSopenharmony_ci#define ISP21_RAWAWB_HSTBIN_NUM 8 253d0407baSopenharmony_ci#define ISP21_RAWAWB_WEIGHT_NUM 225 263d0407baSopenharmony_ci#define ISP21_DRC_Y_NUM 17 273d0407baSopenharmony_ci#define ISP21_YNR_XY_NUM 17 283d0407baSopenharmony_ci#define ISP21_BAYNR_XY_NUM 16 293d0407baSopenharmony_ci#define ISP21_BAY3D_XY_NUM 16 303d0407baSopenharmony_ci#define ISP21_SHARP_X_NUM 7 313d0407baSopenharmony_ci#define ISP21_SHARP_Y_NUM 8 323d0407baSopenharmony_ci#define ISP21_CSM_COEFF_NUM 9 333d0407baSopenharmony_ci 343d0407baSopenharmony_cistruct isp21_csm_cfg { 353d0407baSopenharmony_ci u8 csm_full_range; 363d0407baSopenharmony_ci u16 csm_y_offset; 373d0407baSopenharmony_ci u16 csm_c_offset; 383d0407baSopenharmony_ci 393d0407baSopenharmony_ci u32 csm_coeff[ISP21_CSM_COEFF_NUM]; 403d0407baSopenharmony_ci} __attribute__((packed)); 413d0407baSopenharmony_ci 423d0407baSopenharmony_cistruct isp21_bls_cfg { 433d0407baSopenharmony_ci u8 enable_auto; 443d0407baSopenharmony_ci u8 en_windows; 453d0407baSopenharmony_ci u8 bls1_en; 463d0407baSopenharmony_ci struct isp2x_window bls_window1; 473d0407baSopenharmony_ci struct isp2x_window bls_window2; 483d0407baSopenharmony_ci u8 bls_samples; 493d0407baSopenharmony_ci struct isp2x_bls_fixed_val fixed_val; 503d0407baSopenharmony_ci struct isp2x_bls_fixed_val bls1_val; 513d0407baSopenharmony_ci} __attribute__((packed)); 523d0407baSopenharmony_ci 533d0407baSopenharmony_cistruct isp21_awb_gain_cfg { 543d0407baSopenharmony_ci u16 gain0_red; 553d0407baSopenharmony_ci u16 gain0_green_r; 563d0407baSopenharmony_ci u16 gain0_blue; 573d0407baSopenharmony_ci u16 gain0_green_b; 583d0407baSopenharmony_ci u16 gain1_red; 593d0407baSopenharmony_ci u16 gain1_green_r; 603d0407baSopenharmony_ci u16 gain1_blue; 613d0407baSopenharmony_ci u16 gain1_green_b; 623d0407baSopenharmony_ci u16 gain2_red; 633d0407baSopenharmony_ci u16 gain2_green_r; 643d0407baSopenharmony_ci u16 gain2_blue; 653d0407baSopenharmony_ci u16 gain2_green_b; 663d0407baSopenharmony_ci} __attribute__((packed)); 673d0407baSopenharmony_ci 683d0407baSopenharmony_cistruct isp21_gic_cfg { 693d0407baSopenharmony_ci u16 regmingradthrdark2; 703d0407baSopenharmony_ci u16 regmingradthrdark1; 713d0407baSopenharmony_ci u16 regminbusythre; 723d0407baSopenharmony_ci 733d0407baSopenharmony_ci u16 regdarkthre; 743d0407baSopenharmony_ci u16 regmaxcorvboth; 753d0407baSopenharmony_ci u16 regdarktthrehi; 763d0407baSopenharmony_ci 773d0407baSopenharmony_ci u8 regkgrad2dark; 783d0407baSopenharmony_ci u8 regkgrad1dark; 793d0407baSopenharmony_ci u8 regstrengthglobal_fix; 803d0407baSopenharmony_ci u8 regdarkthrestep; 813d0407baSopenharmony_ci u8 regkgrad2; 823d0407baSopenharmony_ci u8 regkgrad1; 833d0407baSopenharmony_ci u8 reggbthre; 843d0407baSopenharmony_ci 853d0407baSopenharmony_ci u16 regmaxcorv; 863d0407baSopenharmony_ci u16 regmingradthr2; 873d0407baSopenharmony_ci u16 regmingradthr1; 883d0407baSopenharmony_ci 893d0407baSopenharmony_ci u8 gr_ratio; 903d0407baSopenharmony_ci u8 noise_scale; 913d0407baSopenharmony_ci u16 noise_base; 923d0407baSopenharmony_ci u16 diff_clip; 933d0407baSopenharmony_ci 943d0407baSopenharmony_ci u16 sigma_y[ISP2X_GIC_SIGMA_Y_NUM]; 953d0407baSopenharmony_ci} __attribute__((packed)); 963d0407baSopenharmony_ci 973d0407baSopenharmony_cistruct isp21_baynr_cfg { 983d0407baSopenharmony_ci u8 sw_baynr_gauss_en; 993d0407baSopenharmony_ci u8 sw_baynr_log_bypass; 1003d0407baSopenharmony_ci u16 sw_baynr_dgain1; 1013d0407baSopenharmony_ci u16 sw_baynr_dgain0; 1023d0407baSopenharmony_ci u16 sw_baynr_dgain2; 1033d0407baSopenharmony_ci u16 sw_baynr_pix_diff; 1043d0407baSopenharmony_ci u16 sw_baynr_diff_thld; 1053d0407baSopenharmony_ci u16 sw_baynr_softthld; 1063d0407baSopenharmony_ci u16 sw_bltflt_streng; 1073d0407baSopenharmony_ci u16 sw_baynr_reg_w1; 1083d0407baSopenharmony_ci u16 sw_sigma_x[ISP21_BAYNR_XY_NUM]; 1093d0407baSopenharmony_ci u16 sw_sigma_y[ISP21_BAYNR_XY_NUM]; 1103d0407baSopenharmony_ci u16 weit_d2; 1113d0407baSopenharmony_ci u16 weit_d1; 1123d0407baSopenharmony_ci u16 weit_d0; 1133d0407baSopenharmony_ci} __attribute__((packed)); 1143d0407baSopenharmony_ci 1153d0407baSopenharmony_cistruct isp21_bay3d_cfg { 1163d0407baSopenharmony_ci u8 sw_bay3d_exp_sel; 1173d0407baSopenharmony_ci u8 sw_bay3d_bypass_en; 1183d0407baSopenharmony_ci u8 sw_bay3d_pk_en; 1193d0407baSopenharmony_ci u16 sw_bay3d_softwgt; 1203d0407baSopenharmony_ci u16 sw_bay3d_sigratio; 1213d0407baSopenharmony_ci u32 sw_bay3d_glbpk2; 1223d0407baSopenharmony_ci u16 sw_bay3d_exp_str; 1233d0407baSopenharmony_ci u16 sw_bay3d_str; 1243d0407baSopenharmony_ci u16 sw_bay3d_wgtlmt_h; 1253d0407baSopenharmony_ci u16 sw_bay3d_wgtlmt_l; 1263d0407baSopenharmony_ci u16 sw_bay3d_sig_x[ISP21_BAY3D_XY_NUM]; 1273d0407baSopenharmony_ci u16 sw_bay3d_sig_y[ISP21_BAY3D_XY_NUM]; 1283d0407baSopenharmony_ci} __attribute__((packed)); 1293d0407baSopenharmony_ci 1303d0407baSopenharmony_cistruct isp21_ynr_cfg { 1313d0407baSopenharmony_ci u8 sw_ynr_thumb_mix_cur_en; 1323d0407baSopenharmony_ci u8 sw_ynr_global_gain_alpha; 1333d0407baSopenharmony_ci u8 sw_ynr_global_gain; 1343d0407baSopenharmony_ci u8 sw_ynr_flt1x1_bypass_sel; 1353d0407baSopenharmony_ci u8 sw_ynr_sft5x5_bypass; 1363d0407baSopenharmony_ci u8 sw_ynr_flt1x1_bypass; 1373d0407baSopenharmony_ci u8 sw_ynr_lgft3x3_bypass; 1383d0407baSopenharmony_ci u8 sw_ynr_lbft5x5_bypass; 1393d0407baSopenharmony_ci u8 sw_ynr_bft3x3_bypass; 1403d0407baSopenharmony_ci 1413d0407baSopenharmony_ci u16 sw_ynr_rnr_max_r; 1423d0407baSopenharmony_ci 1433d0407baSopenharmony_ci u16 sw_ynr_low_bf_inv1; 1443d0407baSopenharmony_ci u16 sw_ynr_low_bf_inv0; 1453d0407baSopenharmony_ci 1463d0407baSopenharmony_ci u16 sw_ynr_low_peak_supress; 1473d0407baSopenharmony_ci u16 sw_ynr_low_thred_adj; 1483d0407baSopenharmony_ci 1493d0407baSopenharmony_ci u16 sw_ynr_low_dist_adj; 1503d0407baSopenharmony_ci u16 sw_ynr_low_edge_adj_thresh; 1513d0407baSopenharmony_ci 1523d0407baSopenharmony_ci u16 sw_ynr_low_bi_weight; 1533d0407baSopenharmony_ci u16 sw_ynr_low_weight; 1543d0407baSopenharmony_ci u16 sw_ynr_low_center_weight; 1553d0407baSopenharmony_ci u16 sw_ynr_hi_min_adj; 1563d0407baSopenharmony_ci u16 sw_ynr_high_thred_adj; 1573d0407baSopenharmony_ci u8 sw_ynr_high_retain_weight; 1583d0407baSopenharmony_ci u8 sw_ynr_hi_edge_thed; 1593d0407baSopenharmony_ci u8 sw_ynr_base_filter_weight2; 1603d0407baSopenharmony_ci u8 sw_ynr_base_filter_weight1; 1613d0407baSopenharmony_ci u8 sw_ynr_base_filter_weight0; 1623d0407baSopenharmony_ci u16 sw_ynr_low_gauss1_coeff2; 1633d0407baSopenharmony_ci u16 sw_ynr_low_gauss1_coeff1; 1643d0407baSopenharmony_ci u16 sw_ynr_low_gauss1_coeff0; 1653d0407baSopenharmony_ci u16 sw_ynr_low_gauss2_coeff2; 1663d0407baSopenharmony_ci u16 sw_ynr_low_gauss2_coeff1; 1673d0407baSopenharmony_ci u16 sw_ynr_low_gauss2_coeff0; 1683d0407baSopenharmony_ci u8 sw_ynr_direction_weight3; 1693d0407baSopenharmony_ci u8 sw_ynr_direction_weight2; 1703d0407baSopenharmony_ci u8 sw_ynr_direction_weight1; 1713d0407baSopenharmony_ci u8 sw_ynr_direction_weight0; 1723d0407baSopenharmony_ci u8 sw_ynr_direction_weight7; 1733d0407baSopenharmony_ci u8 sw_ynr_direction_weight6; 1743d0407baSopenharmony_ci u8 sw_ynr_direction_weight5; 1753d0407baSopenharmony_ci u8 sw_ynr_direction_weight4; 1763d0407baSopenharmony_ci u16 sw_ynr_luma_points_x[ISP21_YNR_XY_NUM]; 1773d0407baSopenharmony_ci u16 sw_ynr_lsgm_y[ISP21_YNR_XY_NUM]; 1783d0407baSopenharmony_ci u16 sw_ynr_hsgm_y[ISP21_YNR_XY_NUM]; 1793d0407baSopenharmony_ci u8 sw_ynr_rnr_strength3[ISP21_YNR_XY_NUM]; 1803d0407baSopenharmony_ci} __attribute__((packed)); 1813d0407baSopenharmony_ci 1823d0407baSopenharmony_cistruct isp21_cnr_cfg { 1833d0407baSopenharmony_ci u8 sw_cnr_thumb_mix_cur_en; 1843d0407baSopenharmony_ci u8 sw_cnr_lq_bila_bypass; 1853d0407baSopenharmony_ci u8 sw_cnr_hq_bila_bypass; 1863d0407baSopenharmony_ci u8 sw_cnr_exgain_bypass; 1873d0407baSopenharmony_ci u8 sw_cnr_exgain_mux; 1883d0407baSopenharmony_ci u8 sw_cnr_gain_iso; 1893d0407baSopenharmony_ci u8 sw_cnr_gain_offset; 1903d0407baSopenharmony_ci u8 sw_cnr_gain_1sigma; 1913d0407baSopenharmony_ci u8 sw_cnr_gain_uvgain1; 1923d0407baSopenharmony_ci u8 sw_cnr_gain_uvgain0; 1933d0407baSopenharmony_ci u8 sw_cnr_lmed3_alpha; 1943d0407baSopenharmony_ci u8 sw_cnr_lbf5_gain_y; 1953d0407baSopenharmony_ci u8 sw_cnr_lbf5_gain_c; 1963d0407baSopenharmony_ci u8 sw_cnr_lbf5_weit_d3; 1973d0407baSopenharmony_ci u8 sw_cnr_lbf5_weit_d2; 1983d0407baSopenharmony_ci u8 sw_cnr_lbf5_weit_d1; 1993d0407baSopenharmony_ci u8 sw_cnr_lbf5_weit_d0; 2003d0407baSopenharmony_ci u8 sw_cnr_lbf5_weit_d4; 2013d0407baSopenharmony_ci u8 sw_cnr_hmed3_alpha; 2023d0407baSopenharmony_ci u16 sw_cnr_hbf5_weit_src; 2033d0407baSopenharmony_ci u16 sw_cnr_hbf5_min_wgt; 2043d0407baSopenharmony_ci u16 sw_cnr_hbf5_sigma; 2053d0407baSopenharmony_ci u16 sw_cnr_lbf5_weit_src; 2063d0407baSopenharmony_ci u16 sw_cnr_lbf3_sigma; 2073d0407baSopenharmony_ci} __attribute__((packed)); 2083d0407baSopenharmony_ci 2093d0407baSopenharmony_cistruct isp21_sharp_cfg { 2103d0407baSopenharmony_ci u8 sw_sharp_bypass; 2113d0407baSopenharmony_ci u8 sw_sharp_sharp_ratio; 2123d0407baSopenharmony_ci u8 sw_sharp_bf_ratio; 2133d0407baSopenharmony_ci u8 sw_sharp_gaus_ratio; 2143d0407baSopenharmony_ci u8 sw_sharp_pbf_ratio; 2153d0407baSopenharmony_ci u8 sw_sharp_luma_dx[ISP21_SHARP_X_NUM]; 2163d0407baSopenharmony_ci u16 sw_sharp_pbf_sigma_inv[ISP21_SHARP_Y_NUM]; 2173d0407baSopenharmony_ci u16 sw_sharp_bf_sigma_inv[ISP21_SHARP_Y_NUM]; 2183d0407baSopenharmony_ci u8 sw_sharp_bf_sigma_shift; 2193d0407baSopenharmony_ci u8 sw_sharp_pbf_sigma_shift; 2203d0407baSopenharmony_ci u16 sw_sharp_ehf_th[ISP21_SHARP_Y_NUM]; 2213d0407baSopenharmony_ci u16 sw_sharp_clip_hf[ISP21_SHARP_Y_NUM]; 2223d0407baSopenharmony_ci u8 sw_sharp_pbf_coef_2; 2233d0407baSopenharmony_ci u8 sw_sharp_pbf_coef_1; 2243d0407baSopenharmony_ci u8 sw_sharp_pbf_coef_0; 2253d0407baSopenharmony_ci u8 sw_sharp_bf_coef_2; 2263d0407baSopenharmony_ci u8 sw_sharp_bf_coef_1; 2273d0407baSopenharmony_ci u8 sw_sharp_bf_coef_0; 2283d0407baSopenharmony_ci u8 sw_sharp_gaus_coef_2; 2293d0407baSopenharmony_ci u8 sw_sharp_gaus_coef_1; 2303d0407baSopenharmony_ci u8 sw_sharp_gaus_coef_0; 2313d0407baSopenharmony_ci} __attribute__((packed)); 2323d0407baSopenharmony_ci 2333d0407baSopenharmony_cistruct isp21_ccm_cfg { 2343d0407baSopenharmony_ci u8 highy_adjust_dis; 2353d0407baSopenharmony_ci u8 bound_bit; 2363d0407baSopenharmony_ci 2373d0407baSopenharmony_ci s16 coeff0_r; 2383d0407baSopenharmony_ci s16 coeff1_r; 2393d0407baSopenharmony_ci s16 coeff2_r; 2403d0407baSopenharmony_ci s16 offset_r; 2413d0407baSopenharmony_ci 2423d0407baSopenharmony_ci s16 coeff0_g; 2433d0407baSopenharmony_ci s16 coeff1_g; 2443d0407baSopenharmony_ci s16 coeff2_g; 2453d0407baSopenharmony_ci s16 offset_g; 2463d0407baSopenharmony_ci 2473d0407baSopenharmony_ci s16 coeff0_b; 2483d0407baSopenharmony_ci s16 coeff1_b; 2493d0407baSopenharmony_ci s16 coeff2_b; 2503d0407baSopenharmony_ci s16 offset_b; 2513d0407baSopenharmony_ci 2523d0407baSopenharmony_ci u16 coeff0_y; 2533d0407baSopenharmony_ci u16 coeff1_y; 2543d0407baSopenharmony_ci u16 coeff2_y; 2553d0407baSopenharmony_ci 2563d0407baSopenharmony_ci u16 alp_y[ISP21_DHAZ_ENH_CURVE_NUM]; 2573d0407baSopenharmony_ci} __attribute__((packed)); 2583d0407baSopenharmony_ci 2593d0407baSopenharmony_cistruct isp21_dhaz_cfg { 2603d0407baSopenharmony_ci u8 enhance_en; 2613d0407baSopenharmony_ci u8 air_lc_en; 2623d0407baSopenharmony_ci u8 hpara_en; 2633d0407baSopenharmony_ci u8 hist_en; 2643d0407baSopenharmony_ci u8 dc_en; 2653d0407baSopenharmony_ci 2663d0407baSopenharmony_ci u8 yblk_th; 2673d0407baSopenharmony_ci u8 yhist_th; 2683d0407baSopenharmony_ci u8 dc_max_th; 2693d0407baSopenharmony_ci u8 dc_min_th; 2703d0407baSopenharmony_ci 2713d0407baSopenharmony_ci u16 wt_max; 2723d0407baSopenharmony_ci u8 bright_max; 2733d0407baSopenharmony_ci u8 bright_min; 2743d0407baSopenharmony_ci 2753d0407baSopenharmony_ci u8 tmax_base; 2763d0407baSopenharmony_ci u8 dark_th; 2773d0407baSopenharmony_ci u8 air_max; 2783d0407baSopenharmony_ci u8 air_min; 2793d0407baSopenharmony_ci 2803d0407baSopenharmony_ci u16 tmax_max; 2813d0407baSopenharmony_ci u16 tmax_off; 2823d0407baSopenharmony_ci 2833d0407baSopenharmony_ci u8 hist_k; 2843d0407baSopenharmony_ci u8 hist_th_off; 2853d0407baSopenharmony_ci u16 hist_min; 2863d0407baSopenharmony_ci 2873d0407baSopenharmony_ci u16 hist_gratio; 2883d0407baSopenharmony_ci u16 hist_scale; 2893d0407baSopenharmony_ci 2903d0407baSopenharmony_ci u16 enhance_value; 2913d0407baSopenharmony_ci u16 enhance_chroma; 2923d0407baSopenharmony_ci 2933d0407baSopenharmony_ci u16 iir_wt_sigma; 2943d0407baSopenharmony_ci u16 iir_sigma; 2953d0407baSopenharmony_ci u16 stab_fnum; 2963d0407baSopenharmony_ci 2973d0407baSopenharmony_ci u16 iir_tmax_sigma; 2983d0407baSopenharmony_ci u16 iir_air_sigma; 2993d0407baSopenharmony_ci u8 iir_pre_wet; 3003d0407baSopenharmony_ci 3013d0407baSopenharmony_ci u16 cfg_wt; 3023d0407baSopenharmony_ci u16 cfg_air; 3033d0407baSopenharmony_ci u16 cfg_alpha; 3043d0407baSopenharmony_ci 3053d0407baSopenharmony_ci u16 cfg_gratio; 3063d0407baSopenharmony_ci u16 cfg_tmax; 3073d0407baSopenharmony_ci 3083d0407baSopenharmony_ci u16 range_sima; 3093d0407baSopenharmony_ci u8 space_sigma_pre; 3103d0407baSopenharmony_ci u8 space_sigma_cur; 3113d0407baSopenharmony_ci 3123d0407baSopenharmony_ci u16 dc_weitcur; 3133d0407baSopenharmony_ci u16 bf_weight; 3143d0407baSopenharmony_ci 3153d0407baSopenharmony_ci u16 enh_curve[ISP21_DHAZ_ENH_CURVE_NUM]; 3163d0407baSopenharmony_ci 3173d0407baSopenharmony_ci u8 gaus_h2; 3183d0407baSopenharmony_ci u8 gaus_h1; 3193d0407baSopenharmony_ci u8 gaus_h0; 3203d0407baSopenharmony_ci} __attribute__((packed)); 3213d0407baSopenharmony_ci 3223d0407baSopenharmony_cistruct isp21_dhaz_stat { 3233d0407baSopenharmony_ci u16 dhaz_adp_air_base; 3243d0407baSopenharmony_ci u16 dhaz_adp_wt; 3253d0407baSopenharmony_ci 3263d0407baSopenharmony_ci u16 dhaz_adp_gratio; 3273d0407baSopenharmony_ci u16 dhaz_adp_tmax; 3283d0407baSopenharmony_ci 3293d0407baSopenharmony_ci u16 h_rgb_iir[ISP21_DHAZ_HIST_IIR_NUM]; 3303d0407baSopenharmony_ci} __attribute__((packed)); 3313d0407baSopenharmony_ci 3323d0407baSopenharmony_cistruct isp21_drc_cfg { 3333d0407baSopenharmony_ci u8 sw_drc_offset_pow2; 3343d0407baSopenharmony_ci u16 sw_drc_compres_scl; 3353d0407baSopenharmony_ci u16 sw_drc_position; 3363d0407baSopenharmony_ci u16 sw_drc_delta_scalein; 3373d0407baSopenharmony_ci u16 sw_drc_hpdetail_ratio; 3383d0407baSopenharmony_ci u16 sw_drc_lpdetail_ratio; 3393d0407baSopenharmony_ci u8 sw_drc_weicur_pix; 3403d0407baSopenharmony_ci u8 sw_drc_weipre_frame; 3413d0407baSopenharmony_ci u16 sw_drc_force_sgm_inv0; 3423d0407baSopenharmony_ci u8 sw_drc_motion_scl; 3433d0407baSopenharmony_ci u8 sw_drc_edge_scl; 3443d0407baSopenharmony_ci u16 sw_drc_space_sgm_inv1; 3453d0407baSopenharmony_ci u16 sw_drc_space_sgm_inv0; 3463d0407baSopenharmony_ci u16 sw_drc_range_sgm_inv1; 3473d0407baSopenharmony_ci u16 sw_drc_range_sgm_inv0; 3483d0407baSopenharmony_ci u8 sw_drc_weig_maxl; 3493d0407baSopenharmony_ci u8 sw_drc_weig_bilat; 3503d0407baSopenharmony_ci u16 sw_drc_gain_y[ISP21_DRC_Y_NUM]; 3513d0407baSopenharmony_ci u16 sw_drc_compres_y[ISP21_DRC_Y_NUM]; 3523d0407baSopenharmony_ci u16 sw_drc_scale_y[ISP21_DRC_Y_NUM]; 3533d0407baSopenharmony_ci u16 sw_drc_iir_weight; 3543d0407baSopenharmony_ci u16 sw_drc_min_ogain; 3553d0407baSopenharmony_ci} __attribute__((packed)); 3563d0407baSopenharmony_ci 3573d0407baSopenharmony_cistruct isp21_rawawb_meas_cfg { 3583d0407baSopenharmony_ci u8 rawawb_sel; 3593d0407baSopenharmony_ci u8 sw_rawawb_xy_en0; 3603d0407baSopenharmony_ci u8 sw_rawawb_uv_en0; 3613d0407baSopenharmony_ci u8 sw_rawawb_xy_en1; 3623d0407baSopenharmony_ci u8 sw_rawawb_uv_en1; 3633d0407baSopenharmony_ci u8 sw_rawawb_3dyuv_en0; 3643d0407baSopenharmony_ci u8 sw_rawawb_3dyuv_en1; 3653d0407baSopenharmony_ci u8 sw_rawawb_wp_blk_wei_en0; 3663d0407baSopenharmony_ci u8 sw_rawawb_wp_blk_wei_en1; 3673d0407baSopenharmony_ci u8 sw_rawawb_wp_luma_wei_en0; 3683d0407baSopenharmony_ci u8 sw_rawawb_wp_luma_wei_en1; 3693d0407baSopenharmony_ci u8 sw_rawlsc_bypass_en; 3703d0407baSopenharmony_ci u8 sw_rawawb_blk_measure_enable; 3713d0407baSopenharmony_ci u8 sw_rawawb_blk_measure_mode; 3723d0407baSopenharmony_ci u8 sw_rawawb_blk_measure_xytype; 3733d0407baSopenharmony_ci u8 sw_rawawb_blk_measure_illu_idx; 3743d0407baSopenharmony_ci u8 sw_rawawb_wp_hist_xytype; 3753d0407baSopenharmony_ci u8 sw_rawawb_light_num; 3763d0407baSopenharmony_ci u8 sw_rawawb_wind_size; 3773d0407baSopenharmony_ci u8 sw_rawawb_r_max; 3783d0407baSopenharmony_ci u8 sw_rawawb_g_max; 3793d0407baSopenharmony_ci u8 sw_rawawb_b_max; 3803d0407baSopenharmony_ci u8 sw_rawawb_y_max; 3813d0407baSopenharmony_ci u8 sw_rawawb_r_min; 3823d0407baSopenharmony_ci u8 sw_rawawb_g_min; 3833d0407baSopenharmony_ci u8 sw_rawawb_b_min; 3843d0407baSopenharmony_ci u8 sw_rawawb_y_min; 3853d0407baSopenharmony_ci u8 sw_rawawb_3dyuv_ls_idx0; 3863d0407baSopenharmony_ci u8 sw_rawawb_3dyuv_ls_idx1; 3873d0407baSopenharmony_ci u8 sw_rawawb_3dyuv_ls_idx2; 3883d0407baSopenharmony_ci u8 sw_rawawb_3dyuv_ls_idx3; 3893d0407baSopenharmony_ci u8 sw_rawawb_exc_wp_region0_excen0; 3903d0407baSopenharmony_ci u8 sw_rawawb_exc_wp_region0_excen1; 3913d0407baSopenharmony_ci u8 sw_rawawb_exc_wp_region0_domain; 3923d0407baSopenharmony_ci u8 sw_rawawb_exc_wp_region1_excen0; 3933d0407baSopenharmony_ci u8 sw_rawawb_exc_wp_region1_excen1; 3943d0407baSopenharmony_ci u8 sw_rawawb_exc_wp_region1_domain; 3953d0407baSopenharmony_ci u8 sw_rawawb_exc_wp_region2_excen0; 3963d0407baSopenharmony_ci u8 sw_rawawb_exc_wp_region2_excen1; 3973d0407baSopenharmony_ci u8 sw_rawawb_exc_wp_region2_domain; 3983d0407baSopenharmony_ci u8 sw_rawawb_exc_wp_region3_excen0; 3993d0407baSopenharmony_ci u8 sw_rawawb_exc_wp_region3_excen1; 4003d0407baSopenharmony_ci u8 sw_rawawb_exc_wp_region3_domain; 4013d0407baSopenharmony_ci u8 sw_rawawb_exc_wp_region4_excen0; 4023d0407baSopenharmony_ci u8 sw_rawawb_exc_wp_region4_excen1; 4033d0407baSopenharmony_ci u8 sw_rawawb_exc_wp_region4_domain; 4043d0407baSopenharmony_ci u8 sw_rawawb_exc_wp_region5_excen0; 4053d0407baSopenharmony_ci u8 sw_rawawb_exc_wp_region5_excen1; 4063d0407baSopenharmony_ci u8 sw_rawawb_exc_wp_region5_domain; 4073d0407baSopenharmony_ci u8 sw_rawawb_exc_wp_region6_excen0; 4083d0407baSopenharmony_ci u8 sw_rawawb_exc_wp_region6_excen1; 4093d0407baSopenharmony_ci u8 sw_rawawb_exc_wp_region6_domain; 4103d0407baSopenharmony_ci u8 sw_rawawb_wp_luma_weicurve_y0; 4113d0407baSopenharmony_ci u8 sw_rawawb_wp_luma_weicurve_y1; 4123d0407baSopenharmony_ci u8 sw_rawawb_wp_luma_weicurve_y2; 4133d0407baSopenharmony_ci u8 sw_rawawb_wp_luma_weicurve_y3; 4143d0407baSopenharmony_ci u8 sw_rawawb_wp_luma_weicurve_y4; 4153d0407baSopenharmony_ci u8 sw_rawawb_wp_luma_weicurve_y5; 4163d0407baSopenharmony_ci u8 sw_rawawb_wp_luma_weicurve_y6; 4173d0407baSopenharmony_ci u8 sw_rawawb_wp_luma_weicurve_y7; 4183d0407baSopenharmony_ci u8 sw_rawawb_wp_luma_weicurve_y8; 4193d0407baSopenharmony_ci u8 sw_rawawb_wp_luma_weicurve_w0; 4203d0407baSopenharmony_ci u8 sw_rawawb_wp_luma_weicurve_w1; 4213d0407baSopenharmony_ci u8 sw_rawawb_wp_luma_weicurve_w2; 4223d0407baSopenharmony_ci u8 sw_rawawb_wp_luma_weicurve_w3; 4233d0407baSopenharmony_ci u8 sw_rawawb_wp_luma_weicurve_w4; 4243d0407baSopenharmony_ci u8 sw_rawawb_wp_luma_weicurve_w5; 4253d0407baSopenharmony_ci u8 sw_rawawb_wp_luma_weicurve_w6; 4263d0407baSopenharmony_ci u8 sw_rawawb_wp_luma_weicurve_w7; 4273d0407baSopenharmony_ci u8 sw_rawawb_wp_luma_weicurve_w8; 4283d0407baSopenharmony_ci u8 sw_rawawb_rotu0_ls0; 4293d0407baSopenharmony_ci u8 sw_rawawb_rotu1_ls0; 4303d0407baSopenharmony_ci u8 sw_rawawb_rotu2_ls0; 4313d0407baSopenharmony_ci u8 sw_rawawb_rotu3_ls0; 4323d0407baSopenharmony_ci u8 sw_rawawb_rotu4_ls0; 4333d0407baSopenharmony_ci u8 sw_rawawb_rotu5_ls0; 4343d0407baSopenharmony_ci u8 sw_rawawb_dis_x1x2_ls0; 4353d0407baSopenharmony_ci u8 sw_rawawb_rotu0_ls1; 4363d0407baSopenharmony_ci u8 sw_rawawb_rotu1_ls1; 4373d0407baSopenharmony_ci u8 sw_rawawb_rotu2_ls1; 4383d0407baSopenharmony_ci u8 sw_rawawb_rotu3_ls1; 4393d0407baSopenharmony_ci u8 sw_rawawb_rotu4_ls1; 4403d0407baSopenharmony_ci u8 sw_rawawb_rotu5_ls1; 4413d0407baSopenharmony_ci u8 sw_rawawb_dis_x1x2_ls1; 4423d0407baSopenharmony_ci u8 sw_rawawb_rotu0_ls2; 4433d0407baSopenharmony_ci u8 sw_rawawb_rotu1_ls2; 4443d0407baSopenharmony_ci u8 sw_rawawb_rotu2_ls2; 4453d0407baSopenharmony_ci u8 sw_rawawb_rotu3_ls2; 4463d0407baSopenharmony_ci u8 sw_rawawb_rotu4_ls2; 4473d0407baSopenharmony_ci u8 sw_rawawb_rotu5_ls2; 4483d0407baSopenharmony_ci u8 sw_rawawb_dis_x1x2_ls2; 4493d0407baSopenharmony_ci u8 sw_rawawb_rotu0_ls3; 4503d0407baSopenharmony_ci u8 sw_rawawb_rotu1_ls3; 4513d0407baSopenharmony_ci u8 sw_rawawb_rotu2_ls3; 4523d0407baSopenharmony_ci u8 sw_rawawb_rotu3_ls3; 4533d0407baSopenharmony_ci u8 sw_rawawb_rotu4_ls3; 4543d0407baSopenharmony_ci u8 sw_rawawb_rotu5_ls3; 4553d0407baSopenharmony_ci u8 sw_rawawb_dis_x1x2_ls3; 4563d0407baSopenharmony_ci u8 sw_rawawb_blk_rtdw_measure_en; 4573d0407baSopenharmony_ci u8 sw_rawawb_blk_with_luma_wei_en; 4583d0407baSopenharmony_ci u8 sw_rawawb_wp_blk_wei_w[ISP21_RAWAWB_WEIGHT_NUM]; 4593d0407baSopenharmony_ci 4603d0407baSopenharmony_ci u16 sw_rawawb_h_offs; 4613d0407baSopenharmony_ci u16 sw_rawawb_v_offs; 4623d0407baSopenharmony_ci u16 sw_rawawb_h_size; 4633d0407baSopenharmony_ci u16 sw_rawawb_v_size; 4643d0407baSopenharmony_ci u16 sw_rawawb_vertex0_u_0; 4653d0407baSopenharmony_ci u16 sw_rawawb_vertex0_v_0; 4663d0407baSopenharmony_ci u16 sw_rawawb_vertex1_u_0; 4673d0407baSopenharmony_ci u16 sw_rawawb_vertex1_v_0; 4683d0407baSopenharmony_ci u16 sw_rawawb_vertex2_u_0; 4693d0407baSopenharmony_ci u16 sw_rawawb_vertex2_v_0; 4703d0407baSopenharmony_ci u16 sw_rawawb_vertex3_u_0; 4713d0407baSopenharmony_ci u16 sw_rawawb_vertex3_v_0; 4723d0407baSopenharmony_ci u16 sw_rawawb_vertex0_u_1; 4733d0407baSopenharmony_ci u16 sw_rawawb_vertex0_v_1; 4743d0407baSopenharmony_ci u16 sw_rawawb_vertex1_u_1; 4753d0407baSopenharmony_ci u16 sw_rawawb_vertex1_v_1; 4763d0407baSopenharmony_ci u16 sw_rawawb_vertex2_u_1; 4773d0407baSopenharmony_ci u16 sw_rawawb_vertex2_v_1; 4783d0407baSopenharmony_ci u16 sw_rawawb_vertex3_u_1; 4793d0407baSopenharmony_ci u16 sw_rawawb_vertex3_v_1; 4803d0407baSopenharmony_ci u16 sw_rawawb_vertex0_u_2; 4813d0407baSopenharmony_ci u16 sw_rawawb_vertex0_v_2; 4823d0407baSopenharmony_ci u16 sw_rawawb_vertex1_u_2; 4833d0407baSopenharmony_ci u16 sw_rawawb_vertex1_v_2; 4843d0407baSopenharmony_ci u16 sw_rawawb_vertex2_u_2; 4853d0407baSopenharmony_ci u16 sw_rawawb_vertex2_v_2; 4863d0407baSopenharmony_ci u16 sw_rawawb_vertex3_u_2; 4873d0407baSopenharmony_ci u16 sw_rawawb_vertex3_v_2; 4883d0407baSopenharmony_ci u16 sw_rawawb_vertex0_u_3; 4893d0407baSopenharmony_ci u16 sw_rawawb_vertex0_v_3; 4903d0407baSopenharmony_ci u16 sw_rawawb_vertex1_u_3; 4913d0407baSopenharmony_ci u16 sw_rawawb_vertex1_v_3; 4923d0407baSopenharmony_ci u16 sw_rawawb_vertex2_u_3; 4933d0407baSopenharmony_ci u16 sw_rawawb_vertex2_v_3; 4943d0407baSopenharmony_ci u16 sw_rawawb_vertex3_u_3; 4953d0407baSopenharmony_ci u16 sw_rawawb_vertex3_v_3; 4963d0407baSopenharmony_ci u16 sw_rawawb_vertex0_u_4; 4973d0407baSopenharmony_ci u16 sw_rawawb_vertex0_v_4; 4983d0407baSopenharmony_ci u16 sw_rawawb_vertex1_u_4; 4993d0407baSopenharmony_ci u16 sw_rawawb_vertex1_v_4; 5003d0407baSopenharmony_ci u16 sw_rawawb_vertex2_u_4; 5013d0407baSopenharmony_ci u16 sw_rawawb_vertex2_v_4; 5023d0407baSopenharmony_ci u16 sw_rawawb_vertex3_u_4; 5033d0407baSopenharmony_ci u16 sw_rawawb_vertex3_v_4; 5043d0407baSopenharmony_ci u16 sw_rawawb_vertex0_u_5; 5053d0407baSopenharmony_ci u16 sw_rawawb_vertex0_v_5; 5063d0407baSopenharmony_ci u16 sw_rawawb_vertex1_u_5; 5073d0407baSopenharmony_ci u16 sw_rawawb_vertex1_v_5; 5083d0407baSopenharmony_ci u16 sw_rawawb_vertex2_u_5; 5093d0407baSopenharmony_ci u16 sw_rawawb_vertex2_v_5; 5103d0407baSopenharmony_ci u16 sw_rawawb_vertex3_u_5; 5113d0407baSopenharmony_ci u16 sw_rawawb_vertex3_v_5; 5123d0407baSopenharmony_ci u16 sw_rawawb_vertex0_u_6; 5133d0407baSopenharmony_ci u16 sw_rawawb_vertex0_v_6; 5143d0407baSopenharmony_ci u16 sw_rawawb_vertex1_u_6; 5153d0407baSopenharmony_ci u16 sw_rawawb_vertex1_v_6; 5163d0407baSopenharmony_ci u16 sw_rawawb_vertex2_u_6; 5173d0407baSopenharmony_ci u16 sw_rawawb_vertex2_v_6; 5183d0407baSopenharmony_ci u16 sw_rawawb_vertex3_u_6; 5193d0407baSopenharmony_ci u16 sw_rawawb_vertex3_v_6; 5203d0407baSopenharmony_ci 5213d0407baSopenharmony_ci u16 sw_rawawb_wt0; 5223d0407baSopenharmony_ci u16 sw_rawawb_wt1; 5233d0407baSopenharmony_ci u16 sw_rawawb_wt2; 5243d0407baSopenharmony_ci u16 sw_rawawb_mat0_x; 5253d0407baSopenharmony_ci u16 sw_rawawb_mat1_x; 5263d0407baSopenharmony_ci u16 sw_rawawb_mat2_x; 5273d0407baSopenharmony_ci u16 sw_rawawb_mat0_y; 5283d0407baSopenharmony_ci u16 sw_rawawb_mat1_y; 5293d0407baSopenharmony_ci u16 sw_rawawb_mat2_y; 5303d0407baSopenharmony_ci u16 sw_rawawb_nor_x0_0; 5313d0407baSopenharmony_ci u16 sw_rawawb_nor_x1_0; 5323d0407baSopenharmony_ci u16 sw_rawawb_nor_y0_0; 5333d0407baSopenharmony_ci u16 sw_rawawb_nor_y1_0; 5343d0407baSopenharmony_ci u16 sw_rawawb_big_x0_0; 5353d0407baSopenharmony_ci u16 sw_rawawb_big_x1_0; 5363d0407baSopenharmony_ci u16 sw_rawawb_big_y0_0; 5373d0407baSopenharmony_ci u16 sw_rawawb_big_y1_0; 5383d0407baSopenharmony_ci u16 sw_rawawb_nor_x0_1; 5393d0407baSopenharmony_ci u16 sw_rawawb_nor_x1_1; 5403d0407baSopenharmony_ci u16 sw_rawawb_nor_y0_1; 5413d0407baSopenharmony_ci u16 sw_rawawb_nor_y1_1; 5423d0407baSopenharmony_ci u16 sw_rawawb_big_x0_1; 5433d0407baSopenharmony_ci u16 sw_rawawb_big_x1_1; 5443d0407baSopenharmony_ci u16 sw_rawawb_big_y0_1; 5453d0407baSopenharmony_ci u16 sw_rawawb_big_y1_1; 5463d0407baSopenharmony_ci u16 sw_rawawb_nor_x0_2; 5473d0407baSopenharmony_ci u16 sw_rawawb_nor_x1_2; 5483d0407baSopenharmony_ci u16 sw_rawawb_nor_y0_2; 5493d0407baSopenharmony_ci u16 sw_rawawb_nor_y1_2; 5503d0407baSopenharmony_ci u16 sw_rawawb_big_x0_2; 5513d0407baSopenharmony_ci u16 sw_rawawb_big_x1_2; 5523d0407baSopenharmony_ci u16 sw_rawawb_big_y0_2; 5533d0407baSopenharmony_ci u16 sw_rawawb_big_y1_2; 5543d0407baSopenharmony_ci u16 sw_rawawb_nor_x0_3; 5553d0407baSopenharmony_ci u16 sw_rawawb_nor_x1_3; 5563d0407baSopenharmony_ci u16 sw_rawawb_nor_y0_3; 5573d0407baSopenharmony_ci u16 sw_rawawb_nor_y1_3; 5583d0407baSopenharmony_ci u16 sw_rawawb_big_x0_3; 5593d0407baSopenharmony_ci u16 sw_rawawb_big_x1_3; 5603d0407baSopenharmony_ci u16 sw_rawawb_big_y0_3; 5613d0407baSopenharmony_ci u16 sw_rawawb_big_y1_3; 5623d0407baSopenharmony_ci u16 sw_rawawb_nor_x0_4; 5633d0407baSopenharmony_ci u16 sw_rawawb_nor_x1_4; 5643d0407baSopenharmony_ci u16 sw_rawawb_nor_y0_4; 5653d0407baSopenharmony_ci u16 sw_rawawb_nor_y1_4; 5663d0407baSopenharmony_ci u16 sw_rawawb_big_x0_4; 5673d0407baSopenharmony_ci u16 sw_rawawb_big_x1_4; 5683d0407baSopenharmony_ci u16 sw_rawawb_big_y0_4; 5693d0407baSopenharmony_ci u16 sw_rawawb_big_y1_4; 5703d0407baSopenharmony_ci u16 sw_rawawb_nor_x0_5; 5713d0407baSopenharmony_ci u16 sw_rawawb_nor_x1_5; 5723d0407baSopenharmony_ci u16 sw_rawawb_nor_y0_5; 5733d0407baSopenharmony_ci u16 sw_rawawb_nor_y1_5; 5743d0407baSopenharmony_ci u16 sw_rawawb_big_x0_5; 5753d0407baSopenharmony_ci u16 sw_rawawb_big_x1_5; 5763d0407baSopenharmony_ci u16 sw_rawawb_big_y0_5; 5773d0407baSopenharmony_ci u16 sw_rawawb_big_y1_5; 5783d0407baSopenharmony_ci u16 sw_rawawb_nor_x0_6; 5793d0407baSopenharmony_ci u16 sw_rawawb_nor_x1_6; 5803d0407baSopenharmony_ci u16 sw_rawawb_nor_y0_6; 5813d0407baSopenharmony_ci u16 sw_rawawb_nor_y1_6; 5823d0407baSopenharmony_ci u16 sw_rawawb_big_x0_6; 5833d0407baSopenharmony_ci u16 sw_rawawb_big_x1_6; 5843d0407baSopenharmony_ci u16 sw_rawawb_big_y0_6; 5853d0407baSopenharmony_ci u16 sw_rawawb_big_y1_6; 5863d0407baSopenharmony_ci u16 sw_rawawb_pre_wbgain_inv_r; 5873d0407baSopenharmony_ci u16 sw_rawawb_pre_wbgain_inv_g; 5883d0407baSopenharmony_ci u16 sw_rawawb_pre_wbgain_inv_b; 5893d0407baSopenharmony_ci u16 sw_rawawb_exc_wp_region0_xu0; 5903d0407baSopenharmony_ci u16 sw_rawawb_exc_wp_region0_xu1; 5913d0407baSopenharmony_ci u16 sw_rawawb_exc_wp_region0_yv0; 5923d0407baSopenharmony_ci u16 sw_rawawb_exc_wp_region0_yv1; 5933d0407baSopenharmony_ci u16 sw_rawawb_exc_wp_region1_xu0; 5943d0407baSopenharmony_ci u16 sw_rawawb_exc_wp_region1_xu1; 5953d0407baSopenharmony_ci u16 sw_rawawb_exc_wp_region1_yv0; 5963d0407baSopenharmony_ci u16 sw_rawawb_exc_wp_region1_yv1; 5973d0407baSopenharmony_ci u16 sw_rawawb_exc_wp_region2_xu0; 5983d0407baSopenharmony_ci u16 sw_rawawb_exc_wp_region2_xu1; 5993d0407baSopenharmony_ci u16 sw_rawawb_exc_wp_region2_yv0; 6003d0407baSopenharmony_ci u16 sw_rawawb_exc_wp_region2_yv1; 6013d0407baSopenharmony_ci u16 sw_rawawb_exc_wp_region3_xu0; 6023d0407baSopenharmony_ci u16 sw_rawawb_exc_wp_region3_xu1; 6033d0407baSopenharmony_ci u16 sw_rawawb_exc_wp_region3_yv0; 6043d0407baSopenharmony_ci u16 sw_rawawb_exc_wp_region3_yv1; 6053d0407baSopenharmony_ci u16 sw_rawawb_exc_wp_region4_xu0; 6063d0407baSopenharmony_ci u16 sw_rawawb_exc_wp_region4_xu1; 6073d0407baSopenharmony_ci u16 sw_rawawb_exc_wp_region4_yv0; 6083d0407baSopenharmony_ci u16 sw_rawawb_exc_wp_region4_yv1; 6093d0407baSopenharmony_ci u16 sw_rawawb_exc_wp_region5_xu0; 6103d0407baSopenharmony_ci u16 sw_rawawb_exc_wp_region5_xu1; 6113d0407baSopenharmony_ci u16 sw_rawawb_exc_wp_region5_yv0; 6123d0407baSopenharmony_ci u16 sw_rawawb_exc_wp_region5_yv1; 6133d0407baSopenharmony_ci u16 sw_rawawb_exc_wp_region6_xu0; 6143d0407baSopenharmony_ci u16 sw_rawawb_exc_wp_region6_xu1; 6153d0407baSopenharmony_ci u16 sw_rawawb_exc_wp_region6_yv0; 6163d0407baSopenharmony_ci u16 sw_rawawb_exc_wp_region6_yv1; 6173d0407baSopenharmony_ci u16 sw_rawawb_rgb2ryuvmat0_u; 6183d0407baSopenharmony_ci u16 sw_rawawb_rgb2ryuvmat1_u; 6193d0407baSopenharmony_ci u16 sw_rawawb_rgb2ryuvmat2_u; 6203d0407baSopenharmony_ci u16 sw_rawawb_rgb2ryuvofs_u; 6213d0407baSopenharmony_ci u16 sw_rawawb_rgb2ryuvmat0_v; 6223d0407baSopenharmony_ci u16 sw_rawawb_rgb2ryuvmat1_v; 6233d0407baSopenharmony_ci u16 sw_rawawb_rgb2ryuvmat2_v; 6243d0407baSopenharmony_ci u16 sw_rawawb_rgb2ryuvofs_v; 6253d0407baSopenharmony_ci u16 sw_rawawb_rgb2ryuvmat0_y; 6263d0407baSopenharmony_ci u16 sw_rawawb_rgb2ryuvmat1_y; 6273d0407baSopenharmony_ci u16 sw_rawawb_rgb2ryuvmat2_y; 6283d0407baSopenharmony_ci u16 sw_rawawb_rgb2ryuvofs_y; 6293d0407baSopenharmony_ci u16 sw_rawawb_th0_ls0; 6303d0407baSopenharmony_ci u16 sw_rawawb_th1_ls0; 6313d0407baSopenharmony_ci u16 sw_rawawb_th2_ls0; 6323d0407baSopenharmony_ci u16 sw_rawawb_th3_ls0; 6333d0407baSopenharmony_ci u16 sw_rawawb_th4_ls0; 6343d0407baSopenharmony_ci u16 sw_rawawb_th5_ls0; 6353d0407baSopenharmony_ci u16 sw_rawawb_coor_x1_ls0_u; 6363d0407baSopenharmony_ci u16 sw_rawawb_coor_x1_ls0_v; 6373d0407baSopenharmony_ci u16 sw_rawawb_coor_x1_ls0_y; 6383d0407baSopenharmony_ci u16 sw_rawawb_vec_x21_ls0_u; 6393d0407baSopenharmony_ci u16 sw_rawawb_vec_x21_ls0_v; 6403d0407baSopenharmony_ci u16 sw_rawawb_vec_x21_ls0_y; 6413d0407baSopenharmony_ci u16 sw_rawawb_th0_ls1; 6423d0407baSopenharmony_ci u16 sw_rawawb_th1_ls1; 6433d0407baSopenharmony_ci u16 sw_rawawb_th2_ls1; 6443d0407baSopenharmony_ci u16 sw_rawawb_th3_ls1; 6453d0407baSopenharmony_ci u16 sw_rawawb_th4_ls1; 6463d0407baSopenharmony_ci u16 sw_rawawb_th5_ls1; 6473d0407baSopenharmony_ci u16 sw_rawawb_coor_x1_ls1_u; 6483d0407baSopenharmony_ci u16 sw_rawawb_coor_x1_ls1_v; 6493d0407baSopenharmony_ci u16 sw_rawawb_coor_x1_ls1_y; 6503d0407baSopenharmony_ci u16 sw_rawawb_vec_x21_ls1_u; 6513d0407baSopenharmony_ci u16 sw_rawawb_vec_x21_ls1_v; 6523d0407baSopenharmony_ci u16 sw_rawawb_vec_x21_ls1_y; 6533d0407baSopenharmony_ci u16 sw_rawawb_th0_ls2; 6543d0407baSopenharmony_ci u16 sw_rawawb_th1_ls2; 6553d0407baSopenharmony_ci u16 sw_rawawb_th2_ls2; 6563d0407baSopenharmony_ci u16 sw_rawawb_th3_ls2; 6573d0407baSopenharmony_ci u16 sw_rawawb_th4_ls2; 6583d0407baSopenharmony_ci u16 sw_rawawb_th5_ls2; 6593d0407baSopenharmony_ci u16 sw_rawawb_coor_x1_ls2_u; 6603d0407baSopenharmony_ci u16 sw_rawawb_coor_x1_ls2_v; 6613d0407baSopenharmony_ci u16 sw_rawawb_coor_x1_ls2_y; 6623d0407baSopenharmony_ci u16 sw_rawawb_vec_x21_ls2_u; 6633d0407baSopenharmony_ci u16 sw_rawawb_vec_x21_ls2_v; 6643d0407baSopenharmony_ci u16 sw_rawawb_vec_x21_ls2_y; 6653d0407baSopenharmony_ci u16 sw_rawawb_th0_ls3; 6663d0407baSopenharmony_ci u16 sw_rawawb_th1_ls3; 6673d0407baSopenharmony_ci u16 sw_rawawb_th2_ls3; 6683d0407baSopenharmony_ci u16 sw_rawawb_th3_ls3; 6693d0407baSopenharmony_ci u16 sw_rawawb_th4_ls3; 6703d0407baSopenharmony_ci u16 sw_rawawb_th5_ls3; 6713d0407baSopenharmony_ci u16 sw_rawawb_coor_x1_ls3_u; 6723d0407baSopenharmony_ci u16 sw_rawawb_coor_x1_ls3_v; 6733d0407baSopenharmony_ci u16 sw_rawawb_coor_x1_ls3_y; 6743d0407baSopenharmony_ci u16 sw_rawawb_vec_x21_ls3_u; 6753d0407baSopenharmony_ci u16 sw_rawawb_vec_x21_ls3_v; 6763d0407baSopenharmony_ci u16 sw_rawawb_vec_x21_ls3_y; 6773d0407baSopenharmony_ci 6783d0407baSopenharmony_ci u32 sw_rawawb_islope01_0; 6793d0407baSopenharmony_ci u32 sw_rawawb_islope12_0; 6803d0407baSopenharmony_ci u32 sw_rawawb_islope23_0; 6813d0407baSopenharmony_ci u32 sw_rawawb_islope30_0; 6823d0407baSopenharmony_ci u32 sw_rawawb_islope01_1; 6833d0407baSopenharmony_ci u32 sw_rawawb_islope12_1; 6843d0407baSopenharmony_ci u32 sw_rawawb_islope23_1; 6853d0407baSopenharmony_ci u32 sw_rawawb_islope30_1; 6863d0407baSopenharmony_ci u32 sw_rawawb_islope01_2; 6873d0407baSopenharmony_ci u32 sw_rawawb_islope12_2; 6883d0407baSopenharmony_ci u32 sw_rawawb_islope23_2; 6893d0407baSopenharmony_ci u32 sw_rawawb_islope30_2; 6903d0407baSopenharmony_ci u32 sw_rawawb_islope01_3; 6913d0407baSopenharmony_ci u32 sw_rawawb_islope12_3; 6923d0407baSopenharmony_ci u32 sw_rawawb_islope23_3; 6933d0407baSopenharmony_ci u32 sw_rawawb_islope30_3; 6943d0407baSopenharmony_ci u32 sw_rawawb_islope01_4; 6953d0407baSopenharmony_ci u32 sw_rawawb_islope12_4; 6963d0407baSopenharmony_ci u32 sw_rawawb_islope23_4; 6973d0407baSopenharmony_ci u32 sw_rawawb_islope30_4; 6983d0407baSopenharmony_ci u32 sw_rawawb_islope01_5; 6993d0407baSopenharmony_ci u32 sw_rawawb_islope12_5; 7003d0407baSopenharmony_ci u32 sw_rawawb_islope23_5; 7013d0407baSopenharmony_ci u32 sw_rawawb_islope30_5; 7023d0407baSopenharmony_ci u32 sw_rawawb_islope01_6; 7033d0407baSopenharmony_ci u32 sw_rawawb_islope12_6; 7043d0407baSopenharmony_ci u32 sw_rawawb_islope23_6; 7053d0407baSopenharmony_ci u32 sw_rawawb_islope30_6; 7063d0407baSopenharmony_ci} __attribute__((packed)); 7073d0407baSopenharmony_ci 7083d0407baSopenharmony_cistruct isp21_isp_other_cfg { 7093d0407baSopenharmony_ci struct isp21_bls_cfg bls_cfg; 7103d0407baSopenharmony_ci struct isp2x_dpcc_cfg dpcc_cfg; 7113d0407baSopenharmony_ci struct isp2x_lsc_cfg lsc_cfg; 7123d0407baSopenharmony_ci struct isp21_awb_gain_cfg awb_gain_cfg; 7133d0407baSopenharmony_ci struct isp21_gic_cfg gic_cfg; 7143d0407baSopenharmony_ci struct isp2x_debayer_cfg debayer_cfg; 7153d0407baSopenharmony_ci struct isp21_ccm_cfg ccm_cfg; 7163d0407baSopenharmony_ci struct isp2x_gammaout_cfg gammaout_cfg; 7173d0407baSopenharmony_ci struct isp2x_cproc_cfg cproc_cfg; 7183d0407baSopenharmony_ci struct isp2x_ie_cfg ie_cfg; 7193d0407baSopenharmony_ci struct isp2x_sdg_cfg sdg_cfg; 7203d0407baSopenharmony_ci struct isp21_drc_cfg drc_cfg; 7213d0407baSopenharmony_ci struct isp2x_hdrmge_cfg hdrmge_cfg; 7223d0407baSopenharmony_ci struct isp21_dhaz_cfg dhaz_cfg; 7233d0407baSopenharmony_ci struct isp2x_3dlut_cfg isp3dlut_cfg; 7243d0407baSopenharmony_ci struct isp2x_ldch_cfg ldch_cfg; 7253d0407baSopenharmony_ci struct isp21_baynr_cfg baynr_cfg; 7263d0407baSopenharmony_ci struct isp21_bay3d_cfg bay3d_cfg; 7273d0407baSopenharmony_ci struct isp21_ynr_cfg ynr_cfg; 7283d0407baSopenharmony_ci struct isp21_cnr_cfg cnr_cfg; 7293d0407baSopenharmony_ci struct isp21_sharp_cfg sharp_cfg; 7303d0407baSopenharmony_ci struct isp21_csm_cfg csm_cfg; 7313d0407baSopenharmony_ci} __attribute__((packed)); 7323d0407baSopenharmony_ci 7333d0407baSopenharmony_cistruct isp21_isp_meas_cfg { 7343d0407baSopenharmony_ci struct isp2x_siawb_meas_cfg siawb; 7353d0407baSopenharmony_ci struct isp21_rawawb_meas_cfg rawawb; 7363d0407baSopenharmony_ci struct isp2x_rawaelite_meas_cfg rawae0; 7373d0407baSopenharmony_ci struct isp2x_rawaebig_meas_cfg rawae1; 7383d0407baSopenharmony_ci struct isp2x_rawaebig_meas_cfg rawae2; 7393d0407baSopenharmony_ci struct isp2x_rawaebig_meas_cfg rawae3; 7403d0407baSopenharmony_ci struct isp2x_yuvae_meas_cfg yuvae; 7413d0407baSopenharmony_ci struct isp2x_rawaf_meas_cfg rawaf; 7423d0407baSopenharmony_ci struct isp2x_siaf_cfg siaf; 7433d0407baSopenharmony_ci struct isp2x_rawhistlite_cfg rawhist0; 7443d0407baSopenharmony_ci struct isp2x_rawhistbig_cfg rawhist1; 7453d0407baSopenharmony_ci struct isp2x_rawhistbig_cfg rawhist2; 7463d0407baSopenharmony_ci struct isp2x_rawhistbig_cfg rawhist3; 7473d0407baSopenharmony_ci struct isp2x_sihst_cfg sihst; 7483d0407baSopenharmony_ci} __attribute__((packed)); 7493d0407baSopenharmony_ci 7503d0407baSopenharmony_cistruct isp21_isp_params_cfg { 7513d0407baSopenharmony_ci u64 module_en_update; 7523d0407baSopenharmony_ci u64 module_ens; 7533d0407baSopenharmony_ci u64 module_cfg_update; 7543d0407baSopenharmony_ci 7553d0407baSopenharmony_ci u32 frame_id; 7563d0407baSopenharmony_ci struct isp21_isp_meas_cfg meas; 7573d0407baSopenharmony_ci struct isp21_isp_other_cfg others; 7583d0407baSopenharmony_ci} __attribute__((packed)); 7593d0407baSopenharmony_ci 7603d0407baSopenharmony_cistruct isp21_rawawb_meas_stat { 7613d0407baSopenharmony_ci u16 ro_yhist_bin[ISP21_RAWAWB_HSTBIN_NUM]; 7623d0407baSopenharmony_ci u32 ro_rawawb_sum_rgain_nor[ISP2X_RAWAWB_SUM_NUM]; 7633d0407baSopenharmony_ci u32 ro_rawawb_sum_bgain_nor[ISP2X_RAWAWB_SUM_NUM]; 7643d0407baSopenharmony_ci u32 ro_rawawb_wp_num_nor[ISP2X_RAWAWB_SUM_NUM]; 7653d0407baSopenharmony_ci u32 ro_rawawb_sum_rgain_big[ISP2X_RAWAWB_SUM_NUM]; 7663d0407baSopenharmony_ci u32 ro_rawawb_sum_bgain_big[ISP2X_RAWAWB_SUM_NUM]; 7673d0407baSopenharmony_ci u32 ro_rawawb_wp_num_big[ISP2X_RAWAWB_SUM_NUM]; 7683d0407baSopenharmony_ci struct isp2x_rawawb_ramdata ramdata[ISP2X_RAWAWB_RAMDATA_NUM]; 7693d0407baSopenharmony_ci} __attribute__((packed)); 7703d0407baSopenharmony_ci 7713d0407baSopenharmony_cistruct isp21_stat { 7723d0407baSopenharmony_ci struct isp2x_siawb_stat siawb; 7733d0407baSopenharmony_ci struct isp21_rawawb_meas_stat rawawb; 7743d0407baSopenharmony_ci struct isp2x_rawaelite_stat rawae0; 7753d0407baSopenharmony_ci struct isp2x_rawaebig_stat rawae1; 7763d0407baSopenharmony_ci struct isp2x_rawaebig_stat rawae2; 7773d0407baSopenharmony_ci struct isp2x_rawaebig_stat rawae3; 7783d0407baSopenharmony_ci struct isp2x_yuvae_stat yuvae; 7793d0407baSopenharmony_ci struct isp2x_rawaf_stat rawaf; 7803d0407baSopenharmony_ci struct isp2x_siaf_stat siaf; 7813d0407baSopenharmony_ci struct isp2x_rawhistlite_stat rawhist0; 7823d0407baSopenharmony_ci struct isp2x_rawhistbig_stat rawhist1; 7833d0407baSopenharmony_ci struct isp2x_rawhistbig_stat rawhist2; 7843d0407baSopenharmony_ci struct isp2x_rawhistbig_stat rawhist3; 7853d0407baSopenharmony_ci struct isp2x_sihst_stat sihst; 7863d0407baSopenharmony_ci 7873d0407baSopenharmony_ci struct isp2x_bls_stat bls; 7883d0407baSopenharmony_ci struct isp21_dhaz_stat dhaz; 7893d0407baSopenharmony_ci} __attribute__((packed)); 7903d0407baSopenharmony_ci 7913d0407baSopenharmony_ci/** 7923d0407baSopenharmony_ci * struct rkisp_isp21_stat_buffer - Rockchip ISP2 Statistics Meta Data 7933d0407baSopenharmony_ci * 7943d0407baSopenharmony_ci * @meas_type: measurement types (CIFISP_STAT_ definitions) 7953d0407baSopenharmony_ci * @frame_id: frame ID for sync 7963d0407baSopenharmony_ci * @params: statistics data 7973d0407baSopenharmony_ci */ 7983d0407baSopenharmony_cistruct rkisp_isp21_stat_buffer { 7993d0407baSopenharmony_ci unsigned int meas_type; 8003d0407baSopenharmony_ci unsigned int frame_id; 8013d0407baSopenharmony_ci struct isp21_stat params; 8023d0407baSopenharmony_ci} __attribute__((packed)); 8033d0407baSopenharmony_ci 8043d0407baSopenharmony_ci#endif /* _UAPI_RKISP21_CONFIG_H */ 805