xref: /OK3568_Linux_fs/external/camera_engine_rkaiq/rkaiq/include/algos/aynrV22/rk_aiq_types_aynr_hw_v22.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1 /*
2  *rk_aiq_types_alsc_hw.h
3  *
4  *  Copyright (c) 2019 Rockchip Corporation
5  *
6  * Licensed under the Apache License, Version 2.0 (the "License");
7  * you may not use this file except in compliance with the License.
8  * You may obtain a copy of the License at
9  *
10  *      http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software
13  * distributed under the License is distributed on an "AS IS" BASIS,
14  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15  * See the License for the specific language governing permissions and
16  * limitations under the License.
17  *
18  */
19 
20 #ifndef _RK_AIQ_TYPE_AYNR_HW_V22_H_
21 #define _RK_AIQ_TYPE_AYNR_HW_V22_H_
22 #include "rk_aiq_comm.h"
23 
24 
25 
26 typedef struct RK_YNR_Fix_V22_s {
27     /* YNR_GLOBAL_CTRL */
28     uint8_t rnr_en;
29     uint8_t gate_dis;
30     uint8_t thumb_mix_cur_en;
31     uint8_t global_gain_alpha;
32     uint16_t global_gain;
33     uint8_t flt1x1_bypass_sel;
34     uint8_t nlm11x11_bypass;
35     uint8_t flt1x1_bypass;
36     uint8_t lgft3x3_bypass;
37     uint8_t lbft5x5_bypass;
38     uint8_t bft3x3_bypass;
39     uint8_t ynr_en;
40 
41 
42     /* YNR_RNR_MAX_R */
43     uint16_t rnr_max_r;
44     uint16_t local_gainscale;
45 
46     /* YNR_RNR_CENTER_COOR */
47     uint16_t rnr_center_coorh;
48     uint16_t rnr_center_coorv;
49 
50     /* YNR_LOCAL_GAIN_CTRL */
51     uint16_t localgain_adj_thresh;
52     uint16_t localgain_adj;
53 
54     /* YNR_LOWNR_CTRL0 */
55     uint16_t low_bf_inv1;
56     uint16_t low_bf_inv0;
57 
58     /* YNR_LOWNR_CTRL1 */
59     uint16_t low_peak_supress;
60     uint16_t low_thred_adj;
61 
62     /* YNR_LOWNR_CTRL2 */
63     uint16_t low_dist_adj;
64     uint16_t low_edge_adj_thresh;
65 
66     /* YNR_LOWNR_CTRL3 */
67     uint16_t low_bi_weight;
68     uint16_t low_weight;
69     uint16_t low_center_weight;
70 
71     /* YNR_LOWNR_CTRL4 */
72     uint16_t frame_full_size;
73     uint16_t lbf_weight_thres;
74 
75     /* YNR_GAUSS1_COEFF */
76     uint16_t low_gauss1_coeff2;
77     uint16_t low_gauss1_coeff1;
78     uint16_t low_gauss1_coeff0;
79 
80     /* YNR_GAUSS2_COEFF */
81     uint16_t low_gauss2_coeff2;
82     uint16_t low_gauss2_coeff1;
83     uint16_t low_gauss2_coeff0;
84 
85     /* YNR_SGM_DX */
86     uint16_t luma_points_x[17];
87     /* YNR_LSGM_Y */
88     uint16_t lsgm_y[17];
89 
90     /* YNR_RNR_STRENGTH */
91     uint8_t rnr_strength[17];
92 
93     /* YNR_NLM_SIGMA_GAIN */
94     uint16_t nlm_min_sigma;
95     uint8_t  nlm_hi_gain_alpha;
96     uint16_t nlm_hi_bf_scale;
97 
98     /* YNR_NLM_COE */
99     uint8_t nlm_coe_0;
100     uint8_t nlm_coe_1;
101     uint8_t nlm_coe_2;
102     uint8_t nlm_coe_3;
103     uint8_t nlm_coe_4;
104     uint8_t nlm_coe_5;
105 
106     /* YNR_NLM_WEIGHT */
107     uint32_t nlm_center_weight;
108     uint16_t nlm_weight_offset;
109 
110     /* YNR_NLM_NR_WEIGHT */
111     uint16_t nlm_nr_weight;
112 
113 } RK_YNR_Fix_V22_t;
114 
115 
116 #endif
117 
118 
119 
120