1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * Support for Medifield PNW Camera Imaging ISP subsystem.
4  *
5  * Copyright (c) 2010 Intel Corporation. All Rights Reserved.
6  *
7  * Copyright (c) 2010 Silicon Hive www.siliconhive.com.
8  */
9 
10 #ifndef	__ATOMISP_COMMON_H__
11 #define	__ATOMISP_COMMON_H__
12 
13 #include "../../include/linux/atomisp.h"
14 
15 #include <linux/v4l2-mediabus.h>
16 
17 #include <media/videobuf2-v4l2.h>
18 
19 #include "atomisp_compat.h"
20 
21 #include "ia_css.h"
22 
23 extern int dbg_level;
24 extern int dbg_func;
25 extern int pad_w;
26 extern int pad_h;
27 
28 /* Minimum padding requirements for ISP2400 (BYT) */
29 #define ISP2400_MIN_PAD_W		12
30 #define ISP2400_MIN_PAD_H		12
31 
32 #define CSS_DTRACE_VERBOSITY_LEVEL	5	/* Controls trace verbosity */
33 #define CSS_DTRACE_VERBOSITY_TIMEOUT	9	/* Verbosity on ISP timeout */
34 #define MRFLD_MAX_ZOOM_FACTOR	1024
35 
36 /* ISP2401 */
37 #define ATOMISP_CSS_ISP_PIPE_VERSION_2_7    1
38 
39 struct atomisp_format_bridge {
40 	unsigned int pixelformat;
41 	unsigned int depth;
42 	u32 mbus_code;
43 	enum ia_css_frame_format sh_fmt;
44 	unsigned char description[32];	/* the same as struct v4l2_fmtdesc */
45 	bool planar;
46 };
47 
48 struct atomisp_fmt {
49 	u32 pixelformat;
50 	u32 depth;
51 	u32 bytesperline;
52 	u32 framesize;
53 	u32 imagesize;
54 	u32 width;
55 	u32 height;
56 	u32 bayer_order;
57 };
58 
59 #endif
60