2010-10-07 17:06:16 +04:00
/*
* Samsung S5P SoC camera interface driver header
*
* Copyright ( c ) 2010 Samsung Electronics Co . , Ltd
* Author : Sylwester Nawrocki , < s . nawrocki @ samsung . com >
*
* This program is free software ; you can redistribute it and / or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation .
*/
2010-12-27 20:42:15 +03:00
# ifndef S5P_FIMC_H_
# define S5P_FIMC_H_
2010-10-07 17:06:16 +04:00
enum cam_bus_type {
FIMC_ITU_601 = 1 ,
FIMC_ITU_656 ,
FIMC_MIPI_CSI2 ,
FIMC_LCD_WB , /* FIFO link from LCD mixer */
} ;
# define FIMC_CLK_INV_PCLK (1 << 0)
# define FIMC_CLK_INV_VSYNC (1 << 1)
# define FIMC_CLK_INV_HREF (1 << 2)
# define FIMC_CLK_INV_HSYNC (1 << 3)
struct i2c_board_info ;
/**
2010-12-27 20:42:15 +03:00
* struct s5p_fimc_isp_info - image sensor information required for host
2010-10-07 17:06:16 +04:00
* interace configuration .
*
* @ board_info : pointer to I2C subdevice ' s board info
* @ bus_type : determines bus type , MIPI , ITU - R BT .601 etc .
* @ i2c_bus_num : i2c control bus id the sensor is attached to
* @ mux_id : FIMC camera interface multiplexer index ( separate for MIPI and ITU )
* @ flags : flags defining bus signals polarity inversion ( High by default )
*/
2010-12-27 20:42:15 +03:00
struct s5p_fimc_isp_info {
2010-10-07 17:06:16 +04:00
struct i2c_board_info * board_info ;
enum cam_bus_type bus_type ;
u16 i2c_bus_num ;
u16 mux_id ;
u16 flags ;
} ;
# define FIMC_MAX_CAMIF_CLIENTS 2
/**
2010-12-27 20:42:15 +03:00
* struct s5p_platform_fimc - camera host interface platform data
2010-10-07 17:06:16 +04:00
*
* @ isp_info : properties of camera sensor required for host interface setup
*/
2010-12-27 20:42:15 +03:00
struct s5p_platform_fimc {
struct s5p_fimc_isp_info * isp_info [ FIMC_MAX_CAMIF_CLIENTS ] ;
2010-10-07 17:06:16 +04:00
} ;
2010-12-27 20:42:15 +03:00
# endif /* S5P_FIMC_H_ */