summaryrefslogtreecommitdiff
path: root/linux/drivers/media/video/cx88/cx88-blackbird.c
diff options
context:
space:
mode:
authorMauro Carvalho Chehab <mchehab@redhat.com>2008-12-18 07:28:35 -0200
committerMauro Carvalho Chehab <mchehab@redhat.com>2008-12-18 07:28:35 -0200
commitf7e86b8ee653d423731cb9a1c8a081a111d3d83b (patch)
treeca04a5756f1d893d968a675af9bca971a9198de3 /linux/drivers/media/video/cx88/cx88-blackbird.c
parent5f031edf628f28dd28156ee7df488107f5dc3725 (diff)
downloadmediapointer-dvb-s2-f7e86b8ee653d423731cb9a1c8a081a111d3d83b.tar.gz
mediapointer-dvb-s2-f7e86b8ee653d423731cb9a1c8a081a111d3d83b.tar.bz2
cx88: advise/acquire clean-up for HVR-1300/3000/4000
From: Darron Broad <darron@kewl.org> This cleans-up the advise/acquire methods. This has been tested on the hvr-1300/4000 and assumed to be correct on the hvr-3000. This update also fixes analogue tuning on the hvr-1300 when in blackbird mode. Priority: normal Signed-off-by: Darron Broad <darron@kewl.org> CC: Steven Toth <stoth@hauppauge.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'linux/drivers/media/video/cx88/cx88-blackbird.c')
-rw-r--r--linux/drivers/media/video/cx88/cx88-blackbird.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/linux/drivers/media/video/cx88/cx88-blackbird.c b/linux/drivers/media/video/cx88/cx88-blackbird.c
index b090c6620..561dc7f0b 100644
--- a/linux/drivers/media/video/cx88/cx88-blackbird.c
+++ b/linux/drivers/media/video/cx88/cx88-blackbird.c
@@ -1263,8 +1263,16 @@ static int cx8802_blackbird_advise_acquire(struct cx8802_driver *drv)
* We're being given access to re-arrange the GPIOs.
* Take the bus off the cx22702 and put the cx23416 on it.
*/
- cx_clear(MO_GP0_IO, 0x00000080); /* cx22702 in reset */
- cx_set(MO_GP0_IO, 0x00000004); /* Disable the cx22702 */
+ /* Toggle reset on cx22702 leaving i2c active */
+ cx_set(MO_GP0_IO, 0x00000080);
+ udelay(1000);
+ cx_clear(MO_GP0_IO, 0x00000080);
+ udelay(50);
+ cx_set(MO_GP0_IO, 0x00000080);
+ udelay(1000);
+ /* tri-state the cx22702 pins */
+ cx_set(MO_GP0_IO, 0x00000004);
+ udelay(1000);
break;
default:
err = -ENODEV;