]>
Commit | Line | Data |
---|---|---|
a49d2536 AC |
1 | /* |
2 | * Support for Intel Camera Imaging ISP subsystem. | |
3 | * Copyright (c) 2015, Intel Corporation. | |
4 | * | |
5 | * This program is free software; you can redistribute it and/or modify it | |
6 | * under the terms and conditions of the GNU General Public License, | |
7 | * version 2, as published by the Free Software Foundation. | |
8 | * | |
9 | * This program is distributed in the hope it will be useful, but WITHOUT | |
10 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | |
11 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for | |
12 | * more details. | |
13 | */ | |
14 | ||
15 | #ifndef __IA_CSS_YNR2_TYPES_H | |
16 | #define __IA_CSS_YNR2_TYPES_H | |
17 | ||
d929fb4e | 18 | /* @file |
a49d2536 AC |
19 | * CSS-API header file for Y(Luma) Noise Reduction. |
20 | */ | |
21 | ||
d929fb4e | 22 | /* Y(Luma) Noise Reduction configuration. |
a49d2536 AC |
23 | * |
24 | * ISP block: YNR2 & YEE2 | |
25 | * (ISP1: YNR1 and YEE1 are used.) | |
26 | * (ISP2: YNR1 and YEE1 are used for Preview/Video.) | |
27 | * ISP2: YNR2 and YEE2 are used for Still. | |
28 | */ | |
29 | struct ia_css_ynr_config { | |
d929fb4e | 30 | uint16_t edge_sense_gain_0; /** Sensitivity of edge in dark area. |
a49d2536 AC |
31 | u13.0, [0,8191], |
32 | default 1000, ineffective 0 */ | |
d929fb4e | 33 | uint16_t edge_sense_gain_1; /** Sensitivity of edge in bright area. |
a49d2536 AC |
34 | u13.0, [0,8191], |
35 | default 1000, ineffective 0 */ | |
d929fb4e | 36 | uint16_t corner_sense_gain_0; /** Sensitivity of corner in dark area. |
a49d2536 AC |
37 | u13.0, [0,8191], |
38 | default 1000, ineffective 0 */ | |
d929fb4e | 39 | uint16_t corner_sense_gain_1; /** Sensitivity of corner in bright area. |
a49d2536 AC |
40 | u13.0, [0,8191], |
41 | default 1000, ineffective 0 */ | |
42 | }; | |
43 | ||
d929fb4e | 44 | /* Fringe Control configuration. |
a49d2536 AC |
45 | * |
46 | * ISP block: FC2 (FC2 is used with YNR2/YEE2.) | |
47 | * (ISP1: FC2 is not used.) | |
48 | * (ISP2: FC2 is not for Preview/Video.) | |
49 | * ISP2: FC2 is used for Still. | |
50 | */ | |
51 | struct ia_css_fc_config { | |
d929fb4e | 52 | uint8_t gain_exp; /** Common exponent of gains. |
a49d2536 AC |
53 | u8.0, [0,13], |
54 | default 1, ineffective 0 */ | |
d929fb4e | 55 | uint16_t coring_pos_0; /** Coring threshold for positive edge in dark area. |
a49d2536 AC |
56 | u0.13, [0,8191], |
57 | default 0(0), ineffective 0 */ | |
d929fb4e | 58 | uint16_t coring_pos_1; /** Coring threshold for positive edge in bright area. |
a49d2536 AC |
59 | u0.13, [0,8191], |
60 | default 0(0), ineffective 0 */ | |
d929fb4e | 61 | uint16_t coring_neg_0; /** Coring threshold for negative edge in dark area. |
a49d2536 AC |
62 | u0.13, [0,8191], |
63 | default 0(0), ineffective 0 */ | |
d929fb4e | 64 | uint16_t coring_neg_1; /** Coring threshold for negative edge in bright area. |
a49d2536 AC |
65 | u0.13, [0,8191], |
66 | default 0(0), ineffective 0 */ | |
d929fb4e | 67 | uint16_t gain_pos_0; /** Gain for positive edge in dark area. |
a49d2536 AC |
68 | u0.13, [0,8191], |
69 | default 4096(0.5), ineffective 0 */ | |
d929fb4e | 70 | uint16_t gain_pos_1; /** Gain for positive edge in bright area. |
a49d2536 AC |
71 | u0.13, [0,8191], |
72 | default 4096(0.5), ineffective 0 */ | |
d929fb4e | 73 | uint16_t gain_neg_0; /** Gain for negative edge in dark area. |
a49d2536 AC |
74 | u0.13, [0,8191], |
75 | default 4096(0.5), ineffective 0 */ | |
d929fb4e | 76 | uint16_t gain_neg_1; /** Gain for negative edge in bright area. |
a49d2536 AC |
77 | u0.13, [0,8191], |
78 | default 4096(0.5), ineffective 0 */ | |
d929fb4e | 79 | uint16_t crop_pos_0; /** Limit for positive edge in dark area. |
a49d2536 AC |
80 | u0.13, [0,8191], |
81 | default/ineffective 8191(almost 1.0) */ | |
d929fb4e | 82 | uint16_t crop_pos_1; /** Limit for positive edge in bright area. |
a49d2536 AC |
83 | u0.13, [0,8191], |
84 | default/ineffective 8191(almost 1.0) */ | |
d929fb4e | 85 | int16_t crop_neg_0; /** Limit for negative edge in dark area. |
a49d2536 AC |
86 | s0.13, [-8192,0], |
87 | default/ineffective -8192(-1.0) */ | |
d929fb4e | 88 | int16_t crop_neg_1; /** Limit for negative edge in bright area. |
a49d2536 AC |
89 | s0.13, [-8192,0], |
90 | default/ineffective -8192(-1.0) */ | |
91 | }; | |
92 | ||
93 | #endif /* __IA_CSS_YNR2_TYPES_H */ | |
94 |