diff options
author | Mauro Carvalho Chehab <devnull@localhost> | 2005-12-05 02:31:46 +0000 |
---|---|---|
committer | Mauro Carvalho Chehab <devnull@localhost> | 2005-12-05 02:31:46 +0000 |
commit | 612c907e788235feb98ab5fa3f4610f57f588ad7 (patch) | |
tree | e2e2cd73e8013e94867a1ea3942d40146f8ddc05 | |
parent | 59f6dfc471e70d46707befa95db7a23472fb90e2 (diff) | |
download | mediapointer-dvb-s2-612c907e788235feb98ab5fa3f4610f57f588ad7.tar.gz mediapointer-dvb-s2-612c907e788235feb98ab5fa3f4610f57f588ad7.tar.bz2 |
Several fixes for Hauppauge Roselyn Design (blackbird)
From: Steven Toth <stoth@hauppauge.com>
- This patch adds eeprom awareness for the Roslyn. In effect, the
blackbird will query the tuner V4L2_STD_xxxx definitions to determine
whether it's connected to a NTSC or PAL tuner. Based on that, various
default values will change for blackbird encoding.
- Fixes back panel SVIDEO/COMPOSITE with audio, work properly.
- Fixes a problem with lip sync issues, due to bad framerate vs
audio rate assumptions.
- Fixed a problem with the GPIO configuration in cx88-cards.
- Removed the comments in cx88-cards that made no sense.
Signed-off-by: Steven Toth <stoth@hauppauge.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br>
-rw-r--r-- | linux/drivers/media/video/cx88/cx88-blackbird.c | 14 | ||||
-rw-r--r-- | linux/drivers/media/video/cx88/cx88-cards.c | 8 | ||||
-rw-r--r-- | linux/drivers/media/video/cx88/cx88-tvaudio.c | 8 | ||||
-rw-r--r-- | linux/drivers/media/video/cx88/cx88.h | 5 | ||||
-rw-r--r-- | v4l/ChangeLog | 23 |
5 files changed, 51 insertions, 7 deletions
diff --git a/linux/drivers/media/video/cx88/cx88-blackbird.c b/linux/drivers/media/video/cx88/cx88-blackbird.c index 5b915503a..3191486b9 100644 --- a/linux/drivers/media/video/cx88/cx88-blackbird.c +++ b/linux/drivers/media/video/cx88/cx88-blackbird.c @@ -1,5 +1,5 @@ /* - * $Id: cx88-blackbird.c,v 1.38 2005/10/16 12:13:58 mchehab Exp $ + * $Id: cx88-blackbird.c,v 1.39 2005/12/05 02:31:46 mchehab Exp $ * * Support for a cx23416 mpeg encoder via cx2388x host port. * "blackbird" reference design. @@ -1722,6 +1722,18 @@ static int __devinit blackbird_probe(struct pci_dev *pci_dev, memcpy(&dev->params,&default_mpeg_params,sizeof(default_mpeg_params)); memcpy(&dev->dnr_params,&default_dnr_params,sizeof(default_dnr_params)); + if (core->board == CX88_BOARD_HAUPPAUGE_ROSLYN) { + + if (core->tuner_formats & V4L2_STD_525_60) { + dev->height = 480; + dev->params.vi_frame_rate = 30; + } else { + dev->height = 576; + dev->params.vi_frame_rate = 25; + } + + } + err = cx8802_init_common(dev); if (0 != err) goto fail_free; diff --git a/linux/drivers/media/video/cx88/cx88-cards.c b/linux/drivers/media/video/cx88/cx88-cards.c index 67f697c80..c251ffbfe 100644 --- a/linux/drivers/media/video/cx88/cx88-cards.c +++ b/linux/drivers/media/video/cx88/cx88-cards.c @@ -1,5 +1,5 @@ /* - * $Id: cx88-cards.c,v 1.112 2005/12/02 04:38:14 mkrufky Exp $ + * $Id: cx88-cards.c,v 1.113 2005/12/05 02:31:46 mchehab Exp $ * * device driver for Conexant 2388x based TV cards * card-specific stuff. @@ -613,12 +613,12 @@ struct cx88_board cx88_boards[] = { .input = {{ .type = CX88_VMUX_TELEVISION, .vmux = 0, - .gpio0 = 0xed12, /* internal decoder */ + .gpio0 = 0xed1a, .gpio2 = 0x00ff, },{ .type = CX88_VMUX_DEBUG, .vmux = 0, - .gpio0 = 0xff01, /* mono from tuner chip */ + .gpio0 = 0xff01, },{ .type = CX88_VMUX_COMPOSITE1, .vmux = 1, @@ -1204,11 +1204,13 @@ static void hauppauge_eeprom(struct cx88_core *core, u8 *eeprom_data) tveeprom_hauppauge_analog(&core->i2c_client, &tv, eeprom_data); core->tuner_type = tv.tuner_type; + core->tuner_formats = tv.tuner_formats; core->has_radio = tv.has_radio; /* Make sure we support the board model */ switch (tv.model) { + case 28552: /* WinTV-PVR 'Roslyn' (No IR) */ case 90002: /* Nova-T-PCI (9002) */ case 92001: /* Nova-S-Plus (Video and IR) */ case 92002: /* Nova-S-Plus (Video and IR) */ diff --git a/linux/drivers/media/video/cx88/cx88-tvaudio.c b/linux/drivers/media/video/cx88/cx88-tvaudio.c index e5190ef96..478723ca5 100644 --- a/linux/drivers/media/video/cx88/cx88-tvaudio.c +++ b/linux/drivers/media/video/cx88/cx88-tvaudio.c @@ -1,5 +1,5 @@ /* - $Id: cx88-tvaudio.c,v 1.50 2005/11/18 20:20:47 mchehab Exp $ + $Id: cx88-tvaudio.c,v 1.51 2005/12/05 02:31:46 mchehab Exp $ cx88x-audio.c - Conexant CX23880/23881 audio downstream driver driver @@ -147,7 +147,11 @@ static void set_audio_finish(struct cx88_core *core, u32 ctl) if (cx88_boards[core->board].blackbird) { /* sets sound input from external adc */ - cx_set(AUD_CTL, EN_I2SIN_ENABLE); + if (core->board == CX88_BOARD_HAUPPAUGE_ROSLYN) + cx_clear(AUD_CTL, EN_I2SIN_ENABLE); + else + cx_set(AUD_CTL, EN_I2SIN_ENABLE); + cx_write(AUD_I2SINPUTCNTL, 4); cx_write(AUD_BAUDRATE, 1); /* 'pass-thru mode': this enables the i2s output to the mpeg encoder */ diff --git a/linux/drivers/media/video/cx88/cx88.h b/linux/drivers/media/video/cx88/cx88.h index a418ad54f..89a7fd2a6 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.92 2005/12/02 04:16:47 mkrufky Exp $ + * $Id: cx88.h,v 1.93 2005/12/05 02:31:46 mchehab Exp $ * * v4l2 device driver for cx2388x based TV cards * @@ -295,6 +295,9 @@ struct cx88_core { unsigned int tda9887_conf; unsigned int has_radio; + /* Supported V4L _STD_ tuner formats */ + unsigned int tuner_formats; + /* config info -- dvb */ struct dvb_pll_desc *pll_desc; unsigned int pll_addr; diff --git a/v4l/ChangeLog b/v4l/ChangeLog index c09a791fb..c19075d0c 100644 --- a/v4l/ChangeLog +++ b/v4l/ChangeLog @@ -1,3 +1,26 @@ +2005-12-05 02:21 mchehab + + * linux/drivers/media/video/cx88/cx88-tvaudio.c: + (set_audio_finish): + * linux/drivers/media/video/cx88/cx88.h: + * linux/drivers/media/video/cx88/cx88-blackbird.c: + (blackbird_probe): + - This patch adds eeprom awareness for the Roslyn. In effect, the + blackbird will query the tuner V4L2_STD_xxxx definitions to determine + whether it's connected to a NTSC or PAL tuner. Based on that, various + default values will change for blackbird encoding. + + - Fixes back panel SVIDEO/COMPOSITE with audio, work properly. + - Fixes a problem with lip sync issues, due to bad framerate vs + audio rate assumptions. + + * linux/drivers/media/video/cx88/cx88-cards.c: (hauppauge_eeprom): + - Fixed a problem with the GPIO configuration in cx88-cards. + - Removed the comments in cx88-cards that made no sense. + + Signed-off-by: Steven Toth <stoth@hauppauge.com> + Signed-off-by: Mauro Carvalho Chehab <mchehab@brturbo.com.br> + 2005-12-04 21:01 mkrufky * linux/drivers/media/video/bttv-driver.c: |