diff options
-rw-r--r-- | linux/drivers/media/video/cx88/cx88-cards.c | 38 | ||||
-rw-r--r-- | linux/drivers/media/video/cx88/cx88-mpeg.c | 12 | ||||
-rw-r--r-- | linux/drivers/media/video/cx88/cx88.h | 3 |
3 files changed, 40 insertions, 13 deletions
diff --git a/linux/drivers/media/video/cx88/cx88-cards.c b/linux/drivers/media/video/cx88/cx88-cards.c index fc43a3af7..b7065abfc 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.59 2005/02/04 11:42:14 kraxel Exp $ + * $Id: cx88-cards.c,v 1.60 2005/02/09 12:59:19 kraxel Exp $ * * device driver for Conexant 2388x based TV cards * card-specific stuff. @@ -477,6 +477,37 @@ struct cx88_board cx88_boards[] = { }}, .dvb = 1, }, + [CX88_BOARD_HAUPPAUGE_ROSLYN] = { + // entry added by Kaustubh D. Bhalerao <bhalerao.1@osu.edu> + // GPIO values obtained from regspy, courtesy Sean Covel + .name = "Hauppauge WinTV 28xxx (Roslyn) models", + .tuner_type = UNSET, + .input = {{ + .type = CX88_VMUX_TELEVISION, + .vmux = 0, + .gpio0 = 0xed12, // internal decoder + .gpio2 = 0x00ff, + },{ + .type = CX88_VMUX_DEBUG, + .vmux = 0, + .gpio0 = 0xff01, // mono from tuner chip + },{ + .type = CX88_VMUX_COMPOSITE1, + .vmux = 1, + .gpio0 = 0xff02, + },{ + .type = CX88_VMUX_SVIDEO, + .vmux = 2, + .gpio0 = 0xed92, + .gpio2 = 0x00ff, + }}, + .radio = { + .type = CX88_RADIO, + .gpio0 = 0xed96, + .gpio2 = 0x00ff, + }, + .blackbird = 1, + }, }; const unsigned int cx88_bcount = ARRAY_SIZE(cx88_boards); @@ -580,6 +611,10 @@ struct cx88_subid cx88_subids[] = { .subvendor = 0x17DE, .subdevice = 0xA8A6, .card = CX88_BOARD_DNTV_LIVE_DVB_T, + },{ + .subvendor = 0x0070, + .subdevice = 0x2801, + .card = CX88_BOARD_HAUPPAUGE_ROSLYN, } }; const unsigned int cx88_idcount = ARRAY_SIZE(cx88_subids); @@ -749,6 +784,7 @@ void cx88_card_setup(struct cx88_core *core) switch (core->board) { case CX88_BOARD_HAUPPAUGE: + case CX88_BOARD_HAUPPAUGE_ROSLYN: if (0 == core->i2c_rc) hauppauge_eeprom(core,eeprom+8); break; diff --git a/linux/drivers/media/video/cx88/cx88-mpeg.c b/linux/drivers/media/video/cx88/cx88-mpeg.c index e820ed269..a5a2c48c0 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.18 2005/01/04 13:34:11 kraxel Exp $ + * $Id: cx88-mpeg.c,v 1.19 2005/02/09 12:59:19 kraxel Exp $ * * Support for the mpeg transport stream transfers * PCI function #2 of the cx2388x. @@ -355,11 +355,6 @@ int cx8802_init_common(struct cx8802_dev *dev) cx88_risc_stopper(dev->pci,&dev->mpegq.stopper, MO_TS_DMACNTRL,0x11,0x00); -#if 0 /* FIXME */ - /* initialize hardware */ - cx8802_reset(dev); -#endif - /* get irq */ err = request_irq(dev->pci->irq, cx8802_irq, SA_SHIRQ | SA_INTERRUPT, dev->core->name, dev); @@ -370,11 +365,6 @@ int cx8802_init_common(struct cx8802_dev *dev) } cx_set(MO_PCI_INTMSK, core->pci_irqmask); -#if 0 /* FIXME */ - /* register i2c bus + load i2c helpers */ - cx88_card_setup(dev); -#endif - /* everything worked */ pci_set_drvdata(dev->pci,dev); return 0; diff --git a/linux/drivers/media/video/cx88/cx88.h b/linux/drivers/media/video/cx88/cx88.h index 5bcf322bb..4d94faf00 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.50 2005/02/04 11:42:14 kraxel Exp $ + * $Id: cx88.h,v 1.51 2005/02/09 12:59:19 kraxel Exp $ * * v4l2 device driver for cx2388x based TV cards * @@ -160,6 +160,7 @@ extern struct sram_channel cx88_sram_channels[]; #define CX88_BOARD_DVICO_FUSIONHDTV_DVB_T_PLUS 21 #define CX88_BOARD_PCHDTV_HD3000 22 #define CX88_BOARD_DNTV_LIVE_DVB_T 23 +#define CX88_BOARD_HAUPPAUGE_ROSLYN 24 enum cx88_itype { CX88_VMUX_COMPOSITE1 = 1, |