diff options
author | Michael Krufky <mkrufky@linuxtv.org> | 2008-04-05 19:55:14 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2008-10-13 05:15:57 -0400 |
commit | adeeac3b7989ad9f03651e9224c9c63e221d4310 (patch) | |
tree | c969ddd4d4ff0c45f2d41e690f6290ca1e0e07fc /drivers/media/video/au0828/au0828-dvb.c | |
parent | 641015ab2c452e8e554625e2a8e95218182acb4b (diff) |
V4L/DVB (9149): hvr950q: led feedback based on snr
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/au0828/au0828-dvb.c')
-rw-r--r-- | drivers/media/video/au0828/au0828-dvb.c | 39 |
1 files changed, 38 insertions, 1 deletions
diff --git a/drivers/media/video/au0828/au0828-dvb.c b/drivers/media/video/au0828/au0828-dvb.c index a52abce16e1a..f0fcdb4769d7 100644 --- a/drivers/media/video/au0828/au0828-dvb.c +++ b/drivers/media/video/au0828/au0828-dvb.c | |||
@@ -36,11 +36,39 @@ DVB_DEFINE_MOD_OPT_ADAPTER_NR(adapter_nr); | |||
36 | #define _AU0828_BULKPIPE 0x83 | 36 | #define _AU0828_BULKPIPE 0x83 |
37 | #define _BULKPIPESIZE 0xe522 | 37 | #define _BULKPIPESIZE 0xe522 |
38 | 38 | ||
39 | static u8 hauppauge_hvr950q_led_states[] = { | ||
40 | 0x00, /* off */ | ||
41 | 0x02, /* yellow */ | ||
42 | 0x04, /* green */ | ||
43 | }; | ||
44 | |||
45 | static struct au8522_led_config hauppauge_hvr950q_led_cfg = { | ||
46 | .gpio_output = 0x00e0, | ||
47 | .gpio_output_enable = 0x6006, | ||
48 | .gpio_output_disable = 0x0660, | ||
49 | |||
50 | .gpio_leds = 0x00e2, | ||
51 | .led_states = hauppauge_hvr950q_led_states, | ||
52 | .num_led_states = sizeof(hauppauge_hvr950q_led_states), | ||
53 | |||
54 | .vsb8_strong = 20 /* dB */ * 10, | ||
55 | .qam64_strong = 25 /* dB */ * 10, | ||
56 | .qam256_strong = 32 /* dB */ * 10, | ||
57 | }; | ||
58 | |||
39 | static struct au8522_config hauppauge_hvr950q_config = { | 59 | static struct au8522_config hauppauge_hvr950q_config = { |
40 | .demod_address = 0x8e >> 1, | 60 | .demod_address = 0x8e >> 1, |
41 | .status_mode = AU8522_DEMODLOCKING, | 61 | .status_mode = AU8522_DEMODLOCKING, |
42 | .qam_if = AU8522_IF_6MHZ, | 62 | .qam_if = AU8522_IF_6MHZ, |
43 | .vsb_if = AU8522_IF_6MHZ, | 63 | .vsb_if = AU8522_IF_6MHZ, |
64 | .led_cfg = &hauppauge_hvr950q_led_cfg, | ||
65 | }; | ||
66 | |||
67 | static struct au8522_config fusionhdtv7usb_config = { | ||
68 | .demod_address = 0x8e >> 1, | ||
69 | .status_mode = AU8522_DEMODLOCKING, | ||
70 | .qam_if = AU8522_IF_6MHZ, | ||
71 | .vsb_if = AU8522_IF_6MHZ, | ||
44 | }; | 72 | }; |
45 | 73 | ||
46 | static struct au8522_config hauppauge_woodbury_config = { | 74 | static struct au8522_config hauppauge_woodbury_config = { |
@@ -352,7 +380,6 @@ int au0828_dvb_register(struct au0828_dev *dev) | |||
352 | switch (dev->board) { | 380 | switch (dev->board) { |
353 | case AU0828_BOARD_HAUPPAUGE_HVR850: | 381 | case AU0828_BOARD_HAUPPAUGE_HVR850: |
354 | case AU0828_BOARD_HAUPPAUGE_HVR950Q: | 382 | case AU0828_BOARD_HAUPPAUGE_HVR950Q: |
355 | case AU0828_BOARD_DVICO_FUSIONHDTV7: | ||
356 | dvb->frontend = dvb_attach(au8522_attach, | 383 | dvb->frontend = dvb_attach(au8522_attach, |
357 | &hauppauge_hvr950q_config, | 384 | &hauppauge_hvr950q_config, |
358 | &dev->i2c_adap); | 385 | &dev->i2c_adap); |
@@ -378,6 +405,16 @@ int au0828_dvb_register(struct au0828_dev *dev) | |||
378 | 0x60, &dev->i2c_adap, | 405 | 0x60, &dev->i2c_adap, |
379 | &hauppauge_woodbury_tunerconfig); | 406 | &hauppauge_woodbury_tunerconfig); |
380 | break; | 407 | break; |
408 | case AU0828_BOARD_DVICO_FUSIONHDTV7: | ||
409 | dvb->frontend = dvb_attach(au8522_attach, | ||
410 | &fusionhdtv7usb_config, | ||
411 | &dev->i2c_adap); | ||
412 | if (dvb->frontend != NULL) { | ||
413 | dvb_attach(xc5000_attach, dvb->frontend, | ||
414 | &dev->i2c_adap, | ||
415 | &hauppauge_hvr950q_tunerconfig); | ||
416 | } | ||
417 | break; | ||
381 | default: | 418 | default: |
382 | printk(KERN_WARNING "The frontend of your DVB/ATSC card " | 419 | printk(KERN_WARNING "The frontend of your DVB/ATSC card " |
383 | "isn't supported yet\n"); | 420 | "isn't supported yet\n"); |