[linux-dvb] [PATCH] KWorld ATSC110,
ntsc only for now. but its a start.
Andrew Burri
andrew.burri at gmail.com
Sun Jan 8 11:45:53 CET 2006
? AndrewBurri.patch
Index: linux/drivers/media/video/saa7134/saa7134-cards.c
===================================================================
RCS file:
/cvs/video4linux/v4l-dvb/linux/drivers/media/video/saa7134/saa7134-cards.c,v
retrieving revision 1.121
diff -u -p -r1.121 saa7134-cards.c
--- linux/drivers/media/video/saa7134/saa7134-cards.c 4 Jan 2006 13:30:55
-0000 1.121
+++ linux/drivers/media/video/saa7134/saa7134-cards.c 8 Jan 2006 10:28:15
-0000
@@ -2624,6 +2624,34 @@ struct saa7134_board saa7134_boards[] =
.gpio = 0x000000, /* GPIO21=Low for FM radio antenna */
},
},
+ [SAA7134_BOARD_KWORLD_ATSC110] = {
+ .name = "KWORLD ATSC110",
+ .audio_clock = 0x00187de7,
+ .tuner_type = TUNER_PHILIPS_TUV1236D,
+ .radio_type = UNSET,
+ .tuner_addr = ADDR_UNSET,
+ .radio_addr = ADDR_UNSET,
+ /* .tda9887_conf = TDA9887_PRESENT, unknown if it really
there. unverifed */
+ .mpeg = SAA7134_MPEG_DVB,
+ .inputs = {{
+ .name = name_tv, /* a and v seem correct */
+ .vmux = 1,
+ .amux = TV,
+ .tv = 1,
+ },{
+ .name = name_comp1, /* not yet verified */
+ .vmux = 4,
+ .amux = LINE2,
+ },{
+ .name = name_svideo, /* not yet verified */
+ .vmux = 8,
+ .amux = LINE2,
+ }},
+ .radio = {
+ .name = name_radio,
+ .amux = LINE1,
+ },
+ },
};
const unsigned int saa7134_bcount = ARRAY_SIZE(saa7134_boards);
@@ -3088,6 +3116,13 @@ struct pci_device_id saa7134_pci_tbl[] =
.subvendor = 0x5168,
.subdevice = 0x0319,
.driver_data = SAA7134_BOARD_FLYDVB_TRIO,
+
+ },{
+ .vendor = PCI_VENDOR_ID_PHILIPS,
+ .device = PCI_DEVICE_ID_PHILIPS_SAA7133, /* SAA7135HL */
+ .subvendor = 0x17de,
+ .subdevice = 0x7350,
+ .driver_data = SAA7134_BOARD_KWORLD_ATSC110,
},{
/* --- boards without eeprom + subsystem ID --- */
.vendor = PCI_VENDOR_ID_PHILIPS,
@@ -3390,6 +3425,14 @@ int saa7134_board_init2(struct saa7134_d
}
break;
case SAA7134_BOARD_PHILIPS_TIGER:
+ case SAA7134_BOARD_KWORLD_ATSC110:
+ {
+ /* enable tuner */
+ u8 buffer [] = { 0x10,0x12,0x13,0x04,0x16,0x00,0x14,0x04,0x017,0x00
};
+ struct i2c_msg msg= {.addr=0x0a, .flags=0, .buf=buffer, .len =
sizeof(buffer)};
+ i2c_transfer(&dev->i2c_adap, &msg, 1);
+ }
+ break;
case SAA7134_BOARD_ASUSTeK_P7131_DUAL:
/* this is a hybrid board, initialize to analog mode */
{
Index: linux/drivers/media/video/saa7134/saa7134-dvb.c
===================================================================
RCS file:
/cvs/video4linux/v4l-dvb/linux/drivers/media/video/saa7134/saa7134-dvb.c,v
retrieving revision 1.37
diff -u -p -r1.37 saa7134-dvb.c
--- linux/drivers/media/video/saa7134/saa7134-dvb.c 1 Jan 2006 17:17:39
-0000 1.37
+++ linux/drivers/media/video/saa7134/saa7134-dvb.c 8 Jan 2006 10:28:16
-0000
@@ -825,6 +825,11 @@ static struct nxt200x_config avertvhda18
.pll_address = 0x61,
.pll_desc = &dvb_pll_tdhu2,
};
+static struct nxt200x_config kworldatsc110 = {
+ .demod_address = 0x0a,
+ .pll_address = 0x61,
+ .pll_desc = &dvb_pll_tuv1236d,
+};
#endif
/* ------------------------------------------------------------------ */
@@ -892,6 +897,9 @@ static int dvb_init(struct saa7134_dev *
case SAA7134_BOARD_AVERMEDIA_AVERTVHD_A180:
dev->dvb.frontend = nxt200x_attach(&avertvhda180, &dev->i2c_adap);
break;
+ case SAA7134_BOARD_KWORLD_ATSC110:
+ dev->dvb.frontend = nxt200x_attach(&kworldatsc110, &dev->i2c_adap);
+ break;
#endif
default:
printk("%s: Huh? unknown DVB card?\n",dev->name);
Index: linux/drivers/media/video/saa7134/saa7134.h
===================================================================
RCS file:
/cvs/video4linux/v4l-dvb/linux/drivers/media/video/saa7134/saa7134.h,v
retrieving revision 1.88
diff -u -p -r1.88 saa7134.h
--- linux/drivers/media/video/saa7134/saa7134.h 4 Jan 2006 13:30:55
-0000 1.88
+++ linux/drivers/media/video/saa7134/saa7134.h 8 Jan 2006 10:28:17 -0000
@@ -218,6 +218,8 @@ struct saa7134_format {
#define SAA7134_BOARD_MSI_TVATANYWHERE_PLUS 82
#define SAA7134_BOARD_CINERGY250PCI 83
#define SAA7134_BOARD_FLYDVB_TRIO 84
+#define SAA7134_BOARD_KWORLD_ATSC110 85
+
#define SAA7134_MAXBOARDS 8
#define SAA7134_INPUT_MAX 8
Index: linux/include/media/tuner.h
===================================================================
RCS file: /cvs/video4linux/v4l-dvb/linux/include/media/tuner.h,v
retrieving revision 1.71
diff -u -p -r1.71 tuner.h
--- linux/include/media/tuner.h 2 Jan 2006 22:31:44 -0000 1.71
+++ linux/include/media/tuner.h 8 Jan 2006 10:28:17 -0000
@@ -113,7 +113,7 @@
#define TUNER_LG_NTSC_TALN_MINI 66
#define TUNER_PHILIPS_TD1316 67
-#define TUNER_PHILIPS_TUV1236D 68 /* ATI HDTV Wonder */
+#define TUNER_PHILIPS_TUV1236D 68 /* ATI HDTV Wonder and Kworld
ATSC110 */
#define TUNER_TNF_5335MF 69 /* Sabrent Bt848 */
/* tv card specific */
Signed-off-by: Andrew Burri <andrew.burri at gmail.com <email at addre.ss>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.linuxtv.org/pipermail/linux-dvb/attachments/20060108/13fb2dfc/attachment-0001.htm
More information about the linux-dvb
mailing list