diff options
author | Michael Krufky <mkrufky@kernellabs.com> | 2009-05-12 16:32:17 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2009-06-16 17:21:04 -0400 |
commit | 6b926eca9824568b18825d3eade5fb39e3b5a9fb (patch) | |
tree | c66d044249ea8087f51c172d812b417752399098 /drivers/media/video/cx23885/cx23885-cards.c | |
parent | 19bc57968cc854c7da4846c21b3ef2a39e43f97d (diff) |
V4L/DVB (11771): cx23885: add DVB-T tuning support for Hauppauge WinTV-HVR1210
Signed-off-by: Michael Krufky <mkrufky@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/cx23885/cx23885-cards.c')
-rw-r--r-- | drivers/media/video/cx23885/cx23885-cards.c | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/drivers/media/video/cx23885/cx23885-cards.c b/drivers/media/video/cx23885/cx23885-cards.c index 604ceb180522..82fc2577b5ee 100644 --- a/drivers/media/video/cx23885/cx23885-cards.c +++ b/drivers/media/video/cx23885/cx23885-cards.c | |||
@@ -193,6 +193,10 @@ struct cx23885_board cx23885_boards[] = { | |||
193 | .name = "Hauppauge WinTV-HVR1255", | 193 | .name = "Hauppauge WinTV-HVR1255", |
194 | .portc = CX23885_MPEG_DVB, | 194 | .portc = CX23885_MPEG_DVB, |
195 | }, | 195 | }, |
196 | [CX23885_BOARD_HAUPPAUGE_HVR1210] = { | ||
197 | .name = "Hauppauge WinTV-HVR1210", | ||
198 | .portc = CX23885_MPEG_DVB, | ||
199 | }, | ||
196 | }; | 200 | }; |
197 | const unsigned int cx23885_bcount = ARRAY_SIZE(cx23885_boards); | 201 | const unsigned int cx23885_bcount = ARRAY_SIZE(cx23885_boards); |
198 | 202 | ||
@@ -304,6 +308,14 @@ struct cx23885_subid cx23885_subids[] = { | |||
304 | .subvendor = 0x0070, | 308 | .subvendor = 0x0070, |
305 | .subdevice = 0x2251, | 309 | .subdevice = 0x2251, |
306 | .card = CX23885_BOARD_HAUPPAUGE_HVR1255, | 310 | .card = CX23885_BOARD_HAUPPAUGE_HVR1255, |
311 | }, { | ||
312 | .subvendor = 0x0070, | ||
313 | .subdevice = 0x2291, | ||
314 | .card = CX23885_BOARD_HAUPPAUGE_HVR1210, | ||
315 | }, { | ||
316 | .subvendor = 0x0070, | ||
317 | .subdevice = 0x2295, | ||
318 | .card = CX23885_BOARD_HAUPPAUGE_HVR1210, | ||
307 | }, | 319 | }, |
308 | }; | 320 | }; |
309 | const unsigned int cx23885_idcount = ARRAY_SIZE(cx23885_subids); | 321 | const unsigned int cx23885_idcount = ARRAY_SIZE(cx23885_subids); |
@@ -646,9 +658,10 @@ void cx23885_gpio_setup(struct cx23885_dev *dev) | |||
646 | case CX23885_BOARD_HAUPPAUGE_HVR1270: | 658 | case CX23885_BOARD_HAUPPAUGE_HVR1270: |
647 | case CX23885_BOARD_HAUPPAUGE_HVR1275: | 659 | case CX23885_BOARD_HAUPPAUGE_HVR1275: |
648 | case CX23885_BOARD_HAUPPAUGE_HVR1255: | 660 | case CX23885_BOARD_HAUPPAUGE_HVR1255: |
661 | case CX23885_BOARD_HAUPPAUGE_HVR1210: | ||
649 | /* GPIO-5 RF Control: 0 = RF1 Terrestrial, 1 = RF2 Cable */ | 662 | /* GPIO-5 RF Control: 0 = RF1 Terrestrial, 1 = RF2 Cable */ |
650 | /* GPIO-6 I2C Gate which can isolate the 3305 from the bus */ | 663 | /* GPIO-6 I2C Gate which can isolate the demod from the bus */ |
651 | /* GPIO-9 LG3305 reset */ | 664 | /* GPIO-9 Demod reset */ |
652 | 665 | ||
653 | /* Put the parts into reset and back */ | 666 | /* Put the parts into reset and back */ |
654 | cx23885_gpio_enable(dev, GPIO_9 | GPIO_6 | GPIO_5, 1); | 667 | cx23885_gpio_enable(dev, GPIO_9 | GPIO_6 | GPIO_5, 1); |
@@ -672,6 +685,7 @@ int cx23885_ir_init(struct cx23885_dev *dev) | |||
672 | case CX23885_BOARD_HAUPPAUGE_HVR1270: | 685 | case CX23885_BOARD_HAUPPAUGE_HVR1270: |
673 | case CX23885_BOARD_HAUPPAUGE_HVR1275: | 686 | case CX23885_BOARD_HAUPPAUGE_HVR1275: |
674 | case CX23885_BOARD_HAUPPAUGE_HVR1255: | 687 | case CX23885_BOARD_HAUPPAUGE_HVR1255: |
688 | case CX23885_BOARD_HAUPPAUGE_HVR1210: | ||
675 | /* FIXME: Implement me */ | 689 | /* FIXME: Implement me */ |
676 | break; | 690 | break; |
677 | case CX23885_BOARD_DVICO_FUSIONHDTV_DVB_T_DUAL_EXP: | 691 | case CX23885_BOARD_DVICO_FUSIONHDTV_DVB_T_DUAL_EXP: |
@@ -710,6 +724,7 @@ void cx23885_card_setup(struct cx23885_dev *dev) | |||
710 | case CX23885_BOARD_HAUPPAUGE_HVR1270: | 724 | case CX23885_BOARD_HAUPPAUGE_HVR1270: |
711 | case CX23885_BOARD_HAUPPAUGE_HVR1275: | 725 | case CX23885_BOARD_HAUPPAUGE_HVR1275: |
712 | case CX23885_BOARD_HAUPPAUGE_HVR1255: | 726 | case CX23885_BOARD_HAUPPAUGE_HVR1255: |
727 | case CX23885_BOARD_HAUPPAUGE_HVR1210: | ||
713 | if (dev->i2c_bus[0].i2c_rc == 0) | 728 | if (dev->i2c_bus[0].i2c_rc == 0) |
714 | hauppauge_eeprom(dev, eeprom+0xc0); | 729 | hauppauge_eeprom(dev, eeprom+0xc0); |
715 | break; | 730 | break; |
@@ -770,6 +785,7 @@ void cx23885_card_setup(struct cx23885_dev *dev) | |||
770 | case CX23885_BOARD_HAUPPAUGE_HVR1270: | 785 | case CX23885_BOARD_HAUPPAUGE_HVR1270: |
771 | case CX23885_BOARD_HAUPPAUGE_HVR1275: | 786 | case CX23885_BOARD_HAUPPAUGE_HVR1275: |
772 | case CX23885_BOARD_HAUPPAUGE_HVR1255: | 787 | case CX23885_BOARD_HAUPPAUGE_HVR1255: |
788 | case CX23885_BOARD_HAUPPAUGE_HVR1210: | ||
773 | default: | 789 | default: |
774 | ts2->gen_ctrl_val = 0xc; /* Serial bus + punctured clock */ | 790 | ts2->gen_ctrl_val = 0xc; /* Serial bus + punctured clock */ |
775 | ts2->ts_clk_en_val = 0x1; /* Enable TS_CLK */ | 791 | ts2->ts_clk_en_val = 0x1; /* Enable TS_CLK */ |