summaryrefslogtreecommitdiff
path: root/linux/drivers/media
diff options
context:
space:
mode:
authorGerd Knorr <devnull@localhost>2005-02-18 13:26:20 +0000
committerGerd Knorr <devnull@localhost>2005-02-18 13:26:20 +0000
commit5b61adadcb3d9c7bf4d368c21f0ff7857c60f455 (patch)
treec12c8f8027b6010c6799237dfa1101cfdd4ad069 /linux/drivers/media
parente6d7b8f1e4a898fcb632e33c15ba44be8059b65c (diff)
downloadmediapointer-dvb-s2-5b61adadcb3d9c7bf4d368c21f0ff7857c60f455.tar.gz
mediapointer-dvb-s2-5b61adadcb3d9c7bf4d368c21f0ff7857c60f455.tar.bz2
- more HD3000 stuff from Rusty Scott.
Diffstat (limited to 'linux/drivers/media')
-rw-r--r--linux/drivers/media/video/cx88/cx88-dvb.c12
-rw-r--r--linux/drivers/media/video/cx88/cx88-mpeg.c15
-rw-r--r--linux/drivers/media/video/cx88/cx88.h5
3 files changed, 18 insertions, 14 deletions
diff --git a/linux/drivers/media/video/cx88/cx88-dvb.c b/linux/drivers/media/video/cx88/cx88-dvb.c
index 7d801c51f..e62067fbd 100644
--- a/linux/drivers/media/video/cx88/cx88-dvb.c
+++ b/linux/drivers/media/video/cx88/cx88-dvb.c
@@ -1,5 +1,5 @@
/*
- * $Id: cx88-dvb.c,v 1.28 2005/02/17 10:24:08 kraxel Exp $
+ * $Id: cx88-dvb.c,v 1.29 2005/02/18 13:26:20 kraxel Exp $
*
* device driver for Conexant 2388x based TV cards
* MPEG Transport Stream (DVB) routines
@@ -183,10 +183,19 @@ static struct cx22702_config hauppauge_novat_config = {
#endif
#if HAVE_OR51132
+static int or51132_set_ts_param(struct dvb_frontend* fe,
+ int is_punctured)
+{
+ struct cx8802_dev *dev= fe->dvb->priv;
+ dev->ts_gen_cntrl = is_punctured ? 0x04 : 0x00;
+ return 0;
+}
+
struct or51132_config pchdtv_hd3000 = {
.demod_address = 0x15,
.pll_address = 0x61,
.pll_desc = &dvb_pll_thomson_dtt7610,
+ .set_ts_params = or51132_set_ts_param,
};
#endif
@@ -194,6 +203,7 @@ static int dvb_register(struct cx8802_dev *dev)
{
/* init struct videobuf_dvb */
dev->dvb.name = dev->core->name;
+ dev->ts_gen_cntrl = 0xc0;
/* init frontend */
switch (dev->core->board) {
diff --git a/linux/drivers/media/video/cx88/cx88-mpeg.c b/linux/drivers/media/video/cx88/cx88-mpeg.c
index 0987d8a8f..2f3d0e07a 100644
--- a/linux/drivers/media/video/cx88/cx88-mpeg.c
+++ b/linux/drivers/media/video/cx88/cx88-mpeg.c
@@ -1,5 +1,5 @@
/*
- * $Id: cx88-mpeg.c,v 1.21 2005/02/15 10:51:53 kraxel Exp $
+ * $Id: cx88-mpeg.c,v 1.22 2005/02/18 13:26:20 kraxel Exp $
*
* Support for the mpeg transport stream transfers
* PCI function #2 of the cx2388x.
@@ -75,17 +75,8 @@ static int cx8802_start_dma(struct cx8802_dev *dev,
cx_write(MO_PINMUX_IO, 0x00);
cx_write(TS_HW_SOP_CNTRL,47<<16|188<<4|0x00);
cx_write(TS_SOP_STAT,0x00);
-
- switch (core->board) {
- case CX88_BOARD_PCHDTV_HD3000:
- /* non-punctured clock TS */
- cx_write(TS_GEN_CNTRL, 0x00);
- udelay(100);
- break;
- default:
- cx_write(TS_GEN_CNTRL, 0x0c);
- break;
- }
+ cx_write(TS_GEN_CNTRL, dev->ts_gen_cntrl);
+ udelay(100);
}
if (cx88_boards[core->board].blackbird) {
diff --git a/linux/drivers/media/video/cx88/cx88.h b/linux/drivers/media/video/cx88/cx88.h
index de7547b17..7a72aa556 100644
--- a/linux/drivers/media/video/cx88/cx88.h
+++ b/linux/drivers/media/video/cx88/cx88.h
@@ -1,5 +1,5 @@
/*
- * $Id: cx88.h,v 1.53 2005/02/16 13:11:55 kraxel Exp $
+ * $Id: cx88.h,v 1.54 2005/02/18 13:26:20 kraxel Exp $
*
* v4l2 device driver for cx2388x based TV cards
*
@@ -395,6 +395,9 @@ struct cx8802_dev {
struct videobuf_dvb dvb;
void* fe_handle;
int (*fe_release)(void *handle);
+
+ /* for switching modulation types */
+ unsigned char ts_gen_cntrl;
};
/* ----------------------------------------------------------- */