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