aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/video/mt9m001.c
diff options
context:
space:
mode:
authorGuennadi Liakhovetski <g.liakhovetski@pengutronix.de>2008-04-22 13:42:08 -0400
committerMauro Carvalho Chehab <mchehab@infradead.org>2008-04-24 13:07:43 -0400
commitef6ad5c35ed7233e7aafcc5645a1470199b10cc7 (patch)
treeb6a540d8e7ce973b65e139bd0185d8002a5ed36f /drivers/media/video/mt9m001.c
parentb4333a3baecfeee35317c03cf08952cc04bd149a (diff)
V4L/DVB (7218): Fix breakage in mt9m001 and mt9v022 driver if "CONFIG_GENERIC_GPIO is not set"
Both camera drivers can function without GPIO support, in which case they will only support the 10 bit data width mode. But the two respective switch have to depend on CONFIG_GENERIC_GPIO. Additionally remove redundant gpio_is_valid tests - they are repeated in bus_switch_request() functions. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@pengutronix.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Diffstat (limited to 'drivers/media/video/mt9m001.c')
-rw-r--r--drivers/media/video/mt9m001.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/media/video/mt9m001.c b/drivers/media/video/mt9m001.c
index b65ff7745b8d..e3afc82050af 100644
--- a/drivers/media/video/mt9m001.c
+++ b/drivers/media/video/mt9m001.c
@@ -17,7 +17,9 @@
17#include <media/v4l2-chip-ident.h> 17#include <media/v4l2-chip-ident.h>
18#include <media/soc_camera.h> 18#include <media/soc_camera.h>
19 19
20#ifdef CONFIG_MT9M001_PCA9536_SWITCH
20#include <asm/gpio.h> 21#include <asm/gpio.h>
22#endif
21 23
22/* mt9m001 i2c address 0x5d 24/* mt9m001 i2c address 0x5d
23 * The platform has to define i2c_board_info 25 * The platform has to define i2c_board_info
@@ -223,10 +225,6 @@ static int mt9m001_set_capture_format(struct soc_camera_device *icd,
223 if ((mt9m001->datawidth != 10 && (width_flag == IS_DATAWIDTH_10)) || 225 if ((mt9m001->datawidth != 10 && (width_flag == IS_DATAWIDTH_10)) ||
224 (mt9m001->datawidth != 9 && (width_flag == IS_DATAWIDTH_9)) || 226 (mt9m001->datawidth != 9 && (width_flag == IS_DATAWIDTH_9)) ||
225 (mt9m001->datawidth != 8 && (width_flag == IS_DATAWIDTH_8))) { 227 (mt9m001->datawidth != 8 && (width_flag == IS_DATAWIDTH_8))) {
226 /* data width switch requested */
227 if (!gpio_is_valid(mt9m001->switch_gpio))
228 return -EINVAL;
229
230 /* Well, we actually only can do 10 or 8 bits... */ 228 /* Well, we actually only can do 10 or 8 bits... */
231 if (width_flag == IS_DATAWIDTH_9) 229 if (width_flag == IS_DATAWIDTH_9)
232 return -EINVAL; 230 return -EINVAL;