The patch number 8530 was added via Michael Krufky <[EMAIL PROTECTED]>
to http://linuxtv.org/hg/v4l-dvb master development tree.

Kernel patches in this development tree may be modified to be backward
compatible with older kernels. Compatibility modifications will be
removed before inclusion into the mainstream Kernel

If anyone has any objections, please let us know by sending a message to:
        [EMAIL PROTECTED]

------

From: Michael Krufky  <[EMAIL PROTECTED]>
au0828: add support for new revision of HVR950Q


Signed-off-by: Michael Krufky <[EMAIL PROTECTED]>


---

 linux/Documentation/video4linux/CARDLIST.au0828 |    1 +
 linux/drivers/media/video/au0828/Kconfig        |    1 +
 linux/drivers/media/video/au0828/au0828-cards.c |   12 ++++++++++++
 linux/drivers/media/video/au0828/au0828-cards.h |    1 +
 linux/drivers/media/video/au0828/au0828-dvb.c   |   15 +++++++++++++++
 5 files changed, 30 insertions(+)

diff -r 779f14e0a563 -r 38aa3b45bfe6 
linux/Documentation/video4linux/CARDLIST.au0828
--- a/linux/Documentation/video4linux/CARDLIST.au0828   Sat Jul 12 17:22:38 
2008 -0400
+++ b/linux/Documentation/video4linux/CARDLIST.au0828   Tue Jul 08 23:23:08 
2008 -0400
@@ -2,3 +2,4 @@
   1 -> Hauppauge HVR950Q                        (au0828)        
[2040:7200,2040:7210,2040:7217,2040:721b,2040:721f,2040:7280,0fd9:0008]
   2 -> Hauppauge HVR850                         (au0828)        [2040:7240]
   3 -> DViCO FusionHDTV USB                     (au0828)        [0fe9:d620]
+  4 -> Hauppauge HVR950Q rev xxF8               (au0828)        
[2040:7201,2040:7211,2040:7281]
diff -r 779f14e0a563 -r 38aa3b45bfe6 linux/drivers/media/video/au0828/Kconfig
--- a/linux/drivers/media/video/au0828/Kconfig  Sat Jul 12 17:22:38 2008 -0400
+++ b/linux/drivers/media/video/au0828/Kconfig  Tue Jul 08 23:23:08 2008 -0400
@@ -6,6 +6,7 @@ config VIDEO_AU0828
        select VIDEO_TVEEPROM
        select DVB_AU8522 if !DVB_FE_CUSTOMIZE
        select MEDIA_TUNER_XC5000 if !DVB_FE_CUSTOMIZE
+       select MEDIA_TUNER_MXL5007T if !DVB_FE_CUSTOMIZE
        ---help---
          This is a video4linux driver for Auvitek's USB device.
 
diff -r 779f14e0a563 -r 38aa3b45bfe6 
linux/drivers/media/video/au0828/au0828-cards.c
--- a/linux/drivers/media/video/au0828/au0828-cards.c   Sat Jul 12 17:22:38 
2008 -0400
+++ b/linux/drivers/media/video/au0828/au0828-cards.c   Tue Jul 08 23:23:08 
2008 -0400
@@ -32,6 +32,9 @@ struct au0828_board au0828_boards[] = {
        [AU0828_BOARD_HAUPPAUGE_HVR950Q] = {
                .name   = "Hauppauge HVR950Q",
        },
+       [AU0828_BOARD_HAUPPAUGE_HVR950Q_MXL] = {
+               .name   = "Hauppauge HVR950Q rev xxF8",
+       },
        [AU0828_BOARD_DVICO_FUSIONHDTV7] = {
                .name   = "DViCO FusionHDTV USB",
        },
@@ -49,6 +52,7 @@ int au0828_tuner_callback(void *priv, in
        switch (dev->board) {
        case AU0828_BOARD_HAUPPAUGE_HVR850:
        case AU0828_BOARD_HAUPPAUGE_HVR950Q:
+       case AU0828_BOARD_HAUPPAUGE_HVR950Q_MXL:
        case AU0828_BOARD_DVICO_FUSIONHDTV7:
                if (command == 0) {
                        /* Tuner Reset Command from xc5000 */
@@ -110,6 +114,7 @@ void au0828_card_setup(struct au0828_dev
        switch (dev->board) {
        case AU0828_BOARD_HAUPPAUGE_HVR850:
        case AU0828_BOARD_HAUPPAUGE_HVR950Q:
+       case AU0828_BOARD_HAUPPAUGE_HVR950Q_MXL:
                if (dev->i2c_rc == 0)
                        hauppauge_eeprom(dev, eeprom+0xa0);
                break;
@@ -128,6 +133,7 @@ void au0828_gpio_setup(struct au0828_dev
        switch (dev->board) {
        case AU0828_BOARD_HAUPPAUGE_HVR850:
        case AU0828_BOARD_HAUPPAUGE_HVR950Q:
+       case AU0828_BOARD_HAUPPAUGE_HVR950Q_MXL:
                /* GPIO's
                 * 4 - CS5340
                 * 5 - AU8522 Demodulator
@@ -193,6 +199,12 @@ struct usb_device_id au0828_usb_id_table
                .driver_info = AU0828_BOARD_HAUPPAUGE_HVR950Q },
        { USB_DEVICE(0x0fd9, 0x0008),
                .driver_info = AU0828_BOARD_HAUPPAUGE_HVR950Q },
+       { USB_DEVICE(0x2040, 0x7201),
+               .driver_info = AU0828_BOARD_HAUPPAUGE_HVR950Q_MXL },
+       { USB_DEVICE(0x2040, 0x7211),
+               .driver_info = AU0828_BOARD_HAUPPAUGE_HVR950Q_MXL },
+       { USB_DEVICE(0x2040, 0x7281),
+               .driver_info = AU0828_BOARD_HAUPPAUGE_HVR950Q_MXL },
        { },
 };
 
diff -r 779f14e0a563 -r 38aa3b45bfe6 
linux/drivers/media/video/au0828/au0828-cards.h
--- a/linux/drivers/media/video/au0828/au0828-cards.h   Sat Jul 12 17:22:38 
2008 -0400
+++ b/linux/drivers/media/video/au0828/au0828-cards.h   Tue Jul 08 23:23:08 
2008 -0400
@@ -23,3 +23,4 @@
 #define AU0828_BOARD_HAUPPAUGE_HVR950Q 1
 #define AU0828_BOARD_HAUPPAUGE_HVR850  2
 #define AU0828_BOARD_DVICO_FUSIONHDTV7 3
+#define AU0828_BOARD_HAUPPAUGE_HVR950Q_MXL     4
diff -r 779f14e0a563 -r 38aa3b45bfe6 
linux/drivers/media/video/au0828/au0828-dvb.c
--- a/linux/drivers/media/video/au0828/au0828-dvb.c     Sat Jul 12 17:22:38 
2008 -0400
+++ b/linux/drivers/media/video/au0828/au0828-dvb.c     Tue Jul 08 23:23:08 
2008 -0400
@@ -29,6 +29,7 @@
 #include "au0828.h"
 #include "au8522.h"
 #include "xc5000.h"
+#include "mxl5007t.h"
 
 DVB_DEFINE_MOD_OPT_ADAPTER_NR(adapter_nr);
 
@@ -44,6 +45,11 @@ static struct xc5000_config hauppauge_hv
        .i2c_address      = 0x61,
        .if_khz           = 6000,
        .tuner_callback   = au0828_tuner_callback
+};
+
+static struct mxl5007t_config mxl5007t_hvr950q_config = {
+       .xtal_freq_hz = MxL_XTAL_24_MHZ,
+       .if_freq_hz = MxL_IF_6_MHZ,
 };
 
 /*-------------------------------------------------------------------*/
@@ -347,6 +353,15 @@ int au0828_dvb_register(struct au0828_de
                                &dev->i2c_adap,
                                &hauppauge_hvr950q_tunerconfig, dev);
                break;
+       case AU0828_BOARD_HAUPPAUGE_HVR950Q_MXL:
+               dvb->frontend = dvb_attach(au8522_attach,
+                               &hauppauge_hvr950q_config,
+                               &dev->i2c_adap);
+               if (dvb->frontend != NULL)
+                       dvb_attach(mxl5007t_attach, dvb->frontend,
+                                  &dev->i2c_adap, 0x60,
+                                  &mxl5007t_hvr950q_config);
+               break;
        default:
                printk(KERN_WARNING "The frontend of your DVB/ATSC card "
                       "isn't supported yet\n");


---

Patch is available at: 
http://linuxtv.org/hg/v4l-dvb/rev/38aa3b45bfe61475139f22a3fb6b36a85f201947

_______________________________________________
linuxtv-commits mailing list
linuxtv-commits@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linuxtv-commits

Reply via email to