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