summary refs log tree commit diff
path: root/drivers/media
diff options
context:
space:
mode:
authorSteven Toth <stoth@hauppauge.com>2008-01-22 01:03:10 -0300
committerMauro Carvalho Chehab <mchehab@infradead.org>2008-01-25 19:05:12 -0200
commit72e04f720f23cfa8d4400d832784f3a424379227 (patch)
treec568faca0124d03d8e6bdeabf708208dcb4da561 /drivers/media
parent9121106a7f149f9702ed7c2ac0d86e9feb54ede8 (diff)
downloadlinux-72e04f720f23cfa8d4400d832784f3a424379227.tar.gz
V4L/DVB (7059): cx88: Ensure the tuner is reset correctly
Previous patches assume the tuner was on a different gpio. This patch
corrects this.

Signed-off-by: Steven Toth <stoth@hauppauge.com>
Signed-off-by: Chaogui Zhang <czhang1974@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Diffstat (limited to 'drivers/media')
-rw-r--r--drivers/media/video/cx88/cx88-cards.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/drivers/media/video/cx88/cx88-cards.c b/drivers/media/video/cx88/cx88-cards.c
index 254290975cdb..e6b7f518c56e 100644
--- a/drivers/media/video/cx88/cx88-cards.c
+++ b/drivers/media/video/cx88/cx88-cards.c
@@ -1893,12 +1893,10 @@ int cx88_tuner_callback(void *priv, int command, int arg)
 	switch(core->boardnr) {
 	case CX88_BOARD_PINNACLE_PCTV_HD_800i:
 		if(command == 0) { /* This is the reset command from xc5000 */
-			/* Reset XC5000 tuner via GPIO pin #2 */
-			cx_set(MO_GP0_IO, 0x00000400);
-			cx_clear(MO_GP0_IO, 0x00000004);
-			mdelay(200);
-			cx_set(MO_GP0_IO, 0x00000004);
-			mdelay(200);
+			/* Reset XC5000 tuner via SYS_RSTO_pin */
+			cx_write(MO_SRST_IO, 0);
+			msleep(10);
+			cx_write(MO_SRST_IO, 1);
 			return 0;
 		}
 		else {