diff options
author | Kassey Li <ygli@marvell.com> | 2011-04-07 13:01:29 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2011-05-20 11:00:41 -0400 |
commit | ee1b6f4bf3aa827b0daf65d7441e75212604b1c9 (patch) | |
tree | 3c22262d97e71391e71c7a464affbcd10835b8de | |
parent | 64149deb6a9ec35cc8a3ac3e7b5bc19d4a79ff44 (diff) |
[media] V4L: soc-camera: add MIPI bus flags
Signed-off-by: Kassey Lee <ygli@marvell.com>
Signed-off-by: Qing Xu <qingx@marvell.com>
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
-rw-r--r-- | include/media/soc_camera.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/include/media/soc_camera.h b/include/media/soc_camera.h index 844cd09d7d3e..238bd334fd83 100644 --- a/include/media/soc_camera.h +++ b/include/media/soc_camera.h | |||
@@ -109,6 +109,12 @@ struct soc_camera_host_ops { | |||
109 | #define SOCAM_SENSOR_INVERT_HSYNC (1 << 2) | 109 | #define SOCAM_SENSOR_INVERT_HSYNC (1 << 2) |
110 | #define SOCAM_SENSOR_INVERT_VSYNC (1 << 3) | 110 | #define SOCAM_SENSOR_INVERT_VSYNC (1 << 3) |
111 | #define SOCAM_SENSOR_INVERT_DATA (1 << 4) | 111 | #define SOCAM_SENSOR_INVERT_DATA (1 << 4) |
112 | #define SOCAM_MIPI_1LANE (1 << 5) | ||
113 | #define SOCAM_MIPI_2LANE (1 << 6) | ||
114 | #define SOCAM_MIPI_3LANE (1 << 7) | ||
115 | #define SOCAM_MIPI_4LANE (1 << 8) | ||
116 | #define SOCAM_MIPI (SOCAM_MIPI_1LANE | SOCAM_MIPI_2LANE | \ | ||
117 | SOCAM_MIPI_3LANE | SOCAM_MIPI_4LANE) | ||
112 | 118 | ||
113 | struct i2c_board_info; | 119 | struct i2c_board_info; |
114 | struct regulator_bulk_data; | 120 | struct regulator_bulk_data; |
@@ -273,6 +279,7 @@ static inline unsigned long soc_camera_bus_param_compatible( | |||
273 | unsigned long camera_flags, unsigned long bus_flags) | 279 | unsigned long camera_flags, unsigned long bus_flags) |
274 | { | 280 | { |
275 | unsigned long common_flags, hsync, vsync, pclk, data, buswidth, mode; | 281 | unsigned long common_flags, hsync, vsync, pclk, data, buswidth, mode; |
282 | unsigned long mipi; | ||
276 | 283 | ||
277 | common_flags = camera_flags & bus_flags; | 284 | common_flags = camera_flags & bus_flags; |
278 | 285 | ||
@@ -282,8 +289,9 @@ static inline unsigned long soc_camera_bus_param_compatible( | |||
282 | data = common_flags & (SOCAM_DATA_ACTIVE_HIGH | SOCAM_DATA_ACTIVE_LOW); | 289 | data = common_flags & (SOCAM_DATA_ACTIVE_HIGH | SOCAM_DATA_ACTIVE_LOW); |
283 | mode = common_flags & (SOCAM_MASTER | SOCAM_SLAVE); | 290 | mode = common_flags & (SOCAM_MASTER | SOCAM_SLAVE); |
284 | buswidth = common_flags & SOCAM_DATAWIDTH_MASK; | 291 | buswidth = common_flags & SOCAM_DATAWIDTH_MASK; |
292 | mipi = common_flags & SOCAM_MIPI; | ||
285 | 293 | ||
286 | return (!hsync || !vsync || !pclk || !data || !mode || !buswidth) ? 0 : | 294 | return ((!hsync || !vsync || !pclk || !data || !mode || !buswidth) && !mipi) ? 0 : |
287 | common_flags; | 295 | common_flags; |
288 | } | 296 | } |
289 | 297 | ||