1 #ifndef __RK_AIQ_AF_HW_V200_H__ 2 #define __RK_AIQ_AF_HW_V200_H__ 3 4 #include "rk_aiq_types_af_algo.h" 5 6 #define ISP_SHARPNESS_GRID_ITEMS 225 7 8 typedef struct { 9 unsigned char sw_rawaf_en; 10 11 unsigned char window_num; 12 unsigned short wina_h_offs; 13 unsigned short wina_v_offs; 14 unsigned short wina_h_size; 15 unsigned short wina_v_size; 16 17 unsigned short winb_h_offs; 18 unsigned short winb_v_offs; 19 unsigned short winb_h_size; 20 unsigned short winb_v_size; 21 22 unsigned char gamma_flt_en; 23 24 unsigned short gamma_y1; 25 unsigned short gamma_y2; 26 unsigned short gamma_y3; 27 unsigned short gamma_y4; 28 unsigned short gamma_y5; 29 unsigned short gamma_y6; 30 unsigned short gamma_y7; 31 unsigned short gamma_y8; 32 33 unsigned char gaus_flt_en; 34 35 unsigned char gaus_h0; 36 unsigned char gaus_h1; 37 unsigned char gaus_h2; 38 39 unsigned char int_lin0_en; 40 unsigned char int_lin1_en; 41 unsigned char int_lin2_en; 42 unsigned char int_lin3_en; 43 unsigned char int_lin4_en; 44 45 unsigned char int_lin0; 46 unsigned char int_lin1; 47 unsigned char int_lin2; 48 unsigned char int_lin3; 49 unsigned char int_lin4; 50 51 unsigned int roi_threshold; 52 unsigned int global_threshold; 53 54 unsigned char afm_var_shift_a; 55 unsigned char afm_var_shift_b; 56 unsigned char lum_var_shift_a; 57 unsigned char lum_var_shift_b; 58 59 unsigned long long roia_sharpness; 60 unsigned int roia_luminance; 61 unsigned int roib_sharpness; 62 unsigned int roib_luminance; 63 unsigned int global_sharpness[ISP_SHARPNESS_GRID_ITEMS]; 64 } rawaf_isp_af_stat_t; 65 66 typedef struct { 67 unsigned char sw_rawaf_en; 68 69 unsigned char window_num; 70 unsigned short wina_h_offs; 71 unsigned short wina_v_offs; 72 unsigned short wina_h_size; 73 unsigned short wina_v_size; 74 75 unsigned short winb_h_offs; 76 unsigned short winb_v_offs; 77 unsigned short winb_h_size; 78 unsigned short winb_v_size; 79 80 unsigned char gamma_flt_en; 81 82 unsigned short gamma_y1; 83 unsigned short gamma_y2; 84 unsigned short gamma_y3; 85 unsigned short gamma_y4; 86 unsigned short gamma_y5; 87 unsigned short gamma_y6; 88 unsigned short gamma_y7; 89 unsigned short gamma_y8; 90 91 unsigned char gaus_flt_en; 92 93 unsigned char gaus_h0; 94 unsigned char gaus_h1; 95 unsigned char gaus_h2; 96 97 unsigned char int_lin0_en; 98 unsigned char int_lin1_en; 99 unsigned char int_lin2_en; 100 unsigned char int_lin3_en; 101 unsigned char int_lin4_en; 102 103 unsigned char int_lin0; 104 unsigned char int_lin1; 105 unsigned char int_lin2; 106 unsigned char int_lin3; 107 unsigned char int_lin4; 108 109 unsigned short roi_threshold; 110 unsigned short global_threshold; 111 112 unsigned char afm_var_shift_a; 113 unsigned char afm_var_shift_b; 114 unsigned char lum_var_shift_a; 115 unsigned char lum_var_shift_b; 116 } rawaf_isp_af_meas_t; 117 118 typedef struct { 119 bool vcm_config_valid; 120 bool zoomfocus_modifypos; 121 bool focus_correction; 122 bool zoom_correction; 123 bool lens_pos_valid; 124 bool zoom_pos_valid; 125 bool send_zoom_reback; 126 bool send_focus_reback; 127 bool end_zoom_chg; 128 bool focus_noreback; 129 int next_pos_num; 130 int next_lens_pos[RKAIQ_RAWAF_NEXT_ZOOMFOCUS_NUM]; 131 int next_zoom_pos[RKAIQ_RAWAF_NEXT_ZOOMFOCUS_NUM]; 132 int use_manual; 133 int auto_focpos; 134 int auto_zoompos; 135 int manual_focpos; 136 int manual_zoompos; 137 int vcm_start_ma; 138 int vcm_end_ma; 139 } rawaf_focus_pos_meas_t; 140 141 #endif 142