aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/video/au0828/au0828-dvb.c
diff options
context:
space:
mode:
authorMichael Krufky <mkrufky@linuxtv.org>2008-09-03 15:46:36 -0400
committerMauro Carvalho Chehab <mchehab@redhat.com>2008-09-03 17:36:19 -0400
commit8e8bd229eef385ab420d4fa51c611d4ddc7cb0c8 (patch)
tree2166b68220863441317f0027b9912397fbfa8d5b /drivers/media/video/au0828/au0828-dvb.c
parent2e7acd75cba3b7afa4007f20f22a86dbbdb21753 (diff)
V4L/DVB (8556): au0828: add support for Hauppauge Woodbury
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Diffstat (limited to 'drivers/media/video/au0828/au0828-dvb.c')
-rw-r--r--drivers/media/video/au0828/au0828-dvb.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/drivers/media/video/au0828/au0828-dvb.c b/drivers/media/video/au0828/au0828-dvb.c
index 584a83a94a2..c862f9e4d2f 100644
--- a/drivers/media/video/au0828/au0828-dvb.c
+++ b/drivers/media/video/au0828/au0828-dvb.c
@@ -29,6 +29,7 @@
29#include "au8522.h" 29#include "au8522.h"
30#include "xc5000.h" 30#include "xc5000.h"
31#include "mxl5007t.h" 31#include "mxl5007t.h"
32#include "tda18271.h"
32 33
33DVB_DEFINE_MOD_OPT_ADAPTER_NR(adapter_nr); 34DVB_DEFINE_MOD_OPT_ADAPTER_NR(adapter_nr);
34 35
@@ -40,6 +41,13 @@ static struct au8522_config hauppauge_hvr950q_config = {
40 .status_mode = AU8522_DEMODLOCKING, 41 .status_mode = AU8522_DEMODLOCKING,
41}; 42};
42 43
44static struct au8522_config hauppauge_woodbury_config = {
45 .demod_address = 0x8e >> 1,
46 .status_mode = AU8522_DEMODLOCKING,
47 .qam_if = AU8522_IF_4MHZ,
48 .vsb_if = AU8522_IF_3_25MHZ,
49};
50
43static struct xc5000_config hauppauge_hvr950q_tunerconfig = { 51static struct xc5000_config hauppauge_hvr950q_tunerconfig = {
44 .i2c_address = 0x61, 52 .i2c_address = 0x61,
45 .if_khz = 6000, 53 .if_khz = 6000,
@@ -51,6 +59,10 @@ static struct mxl5007t_config mxl5007t_hvr950q_config = {
51 .if_freq_hz = MxL_IF_6_MHZ, 59 .if_freq_hz = MxL_IF_6_MHZ,
52}; 60};
53 61
62static struct tda18271_config hauppauge_woodbury_tunerconfig = {
63 .gate = TDA18271_GATE_DIGITAL,
64};
65
54/*-------------------------------------------------------------------*/ 66/*-------------------------------------------------------------------*/
55static void urb_completion(struct urb *purb) 67static void urb_completion(struct urb *purb)
56{ 68{
@@ -357,6 +369,15 @@ int au0828_dvb_register(struct au0828_dev *dev)
357 &dev->i2c_adap, 0x60, 369 &dev->i2c_adap, 0x60,
358 &mxl5007t_hvr950q_config); 370 &mxl5007t_hvr950q_config);
359 break; 371 break;
372 case AU0828_BOARD_HAUPPAUGE_WOODBURY:
373 dvb->frontend = dvb_attach(au8522_attach,
374 &hauppauge_woodbury_config,
375 &dev->i2c_adap);
376 if (dvb->frontend != NULL)
377 dvb_attach(tda18271_attach, dvb->frontend,
378 0x60, &dev->i2c_adap,
379 &hauppauge_woodbury_tunerconfig);
380 break;
360 default: 381 default:
361 printk(KERN_WARNING "The frontend of your DVB/ATSC card " 382 printk(KERN_WARNING "The frontend of your DVB/ATSC card "
362 "isn't supported yet\n"); 383 "isn't supported yet\n");