Browse Source

V4L/DVB (7925): cx18: ensure that the xceive pin is always asserted on init.

Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Hans Verkuil 17 years ago
parent
commit
7f3917f648
1 changed files with 5 additions and 3 deletions
  1. 5 3
      drivers/media/video/cx18/cx18-gpio.c

+ 5 - 3
drivers/media/video/cx18/cx18-gpio.c

@@ -62,12 +62,14 @@ void cx18_gpio_init(struct cx18 *cx)
 	gpio_dir = cx->card->gpio_init.direction;
 	gpio_val = cx->card->gpio_init.initial_value;
 
+	if (cx->card->xceive_pin) {
+		gpio_dir |= 1 << cx->card->xceive_pin;
+		gpio_val |= 1 << cx->card->xceive_pin;
+	}
+
 	if (gpio_dir == 0)
 		return;
 
-	gpio_dir |= 1 << cx->card->xceive_pin;
-	gpio_val |= 1 << cx->card->xceive_pin;
-
 	CX18_DEBUG_INFO("GPIO initial dir: %08x/%08x out: %08x/%08x\n",
 		   read_reg(CX18_REG_GPIO_DIR1), read_reg(CX18_REG_GPIO_DIR2),
 		   read_reg(CX18_REG_GPIO_OUT1), read_reg(CX18_REG_GPIO_OUT2));