1f5fbb83fSMauro Carvalho Chehab /* SPDX-License-Identifier: GPL-2.0 */
29d4fa1a1SMauro Carvalho Chehab /*
39d4fa1a1SMauro Carvalho Chehab  * Support for Intel Camera Imaging ISP subsystem.
49d4fa1a1SMauro Carvalho Chehab  * Copyright (c) 2015, Intel Corporation.
59d4fa1a1SMauro Carvalho Chehab  *
69d4fa1a1SMauro Carvalho Chehab  * This program is free software; you can redistribute it and/or modify it
79d4fa1a1SMauro Carvalho Chehab  * under the terms and conditions of the GNU General Public License,
89d4fa1a1SMauro Carvalho Chehab  * version 2, as published by the Free Software Foundation.
99d4fa1a1SMauro Carvalho Chehab  *
109d4fa1a1SMauro Carvalho Chehab  * This program is distributed in the hope it will be useful, but WITHOUT
119d4fa1a1SMauro Carvalho Chehab  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
129d4fa1a1SMauro Carvalho Chehab  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
139d4fa1a1SMauro Carvalho Chehab  * more details.
149d4fa1a1SMauro Carvalho Chehab  */
159d4fa1a1SMauro Carvalho Chehab 
169d4fa1a1SMauro Carvalho Chehab #ifndef __IA_CSS_DP_TYPES_H
179d4fa1a1SMauro Carvalho Chehab #define __IA_CSS_DP_TYPES_H
189d4fa1a1SMauro Carvalho Chehab 
199d4fa1a1SMauro Carvalho Chehab /* @file
209d4fa1a1SMauro Carvalho Chehab * CSS-API header file for Defect Pixel Correction (DPC) parameters.
219d4fa1a1SMauro Carvalho Chehab */
229d4fa1a1SMauro Carvalho Chehab 
239d4fa1a1SMauro Carvalho Chehab /* Defect Pixel Correction configuration.
249d4fa1a1SMauro Carvalho Chehab  *
259d4fa1a1SMauro Carvalho Chehab  *  ISP block: DPC1 (DPC after WB)
269d4fa1a1SMauro Carvalho Chehab  *             DPC2 (DPC before WB)
279d4fa1a1SMauro Carvalho Chehab  *  ISP1: DPC1 is used.
289d4fa1a1SMauro Carvalho Chehab  *  ISP2: DPC2 is used.
299d4fa1a1SMauro Carvalho Chehab  */
309d4fa1a1SMauro Carvalho Chehab struct ia_css_dp_config {
319d4fa1a1SMauro Carvalho Chehab 	ia_css_u0_16 threshold; /** The threshold of defect pixel correction,
329d4fa1a1SMauro Carvalho Chehab 			      representing the permissible difference of
339d4fa1a1SMauro Carvalho Chehab 			      intensity between one pixel and its
349d4fa1a1SMauro Carvalho Chehab 			      surrounding pixels. Smaller values result
359d4fa1a1SMauro Carvalho Chehab 				in more frequent pixel corrections.
369d4fa1a1SMauro Carvalho Chehab 				u0.16, [0,65535],
379d4fa1a1SMauro Carvalho Chehab 				default 8192, ineffective 65535 */
389d4fa1a1SMauro Carvalho Chehab 	ia_css_u8_8 gain;	 /** The sensitivity of mis-correction. ISP will
399d4fa1a1SMauro Carvalho Chehab 			      miss a lot of defects if the value is set
409d4fa1a1SMauro Carvalho Chehab 				too large.
419d4fa1a1SMauro Carvalho Chehab 				u8.8, [0,65535],
429d4fa1a1SMauro Carvalho Chehab 				default 4096, ineffective 65535 */
439d4fa1a1SMauro Carvalho Chehab 	u32 gr;	/* unsigned <integer_bits>.<16-integer_bits> */
449d4fa1a1SMauro Carvalho Chehab 	u32 r;	/* unsigned <integer_bits>.<16-integer_bits> */
459d4fa1a1SMauro Carvalho Chehab 	u32 b;	/* unsigned <integer_bits>.<16-integer_bits> */
469d4fa1a1SMauro Carvalho Chehab 	u32 gb;	/* unsigned <integer_bits>.<16-integer_bits> */
479d4fa1a1SMauro Carvalho Chehab };
489d4fa1a1SMauro Carvalho Chehab 
499d4fa1a1SMauro Carvalho Chehab #endif /* __IA_CSS_DP_TYPES_H */
50