[linux-dvb] Re: [PATCH] FusionHDTV 5 Gold card --> fix v4l compile
against 2.6.13 (NOT YET)
Michael Krufky
mkrufky at m1k.net
Thu Aug 11 02:30:58 CEST 2005
Mac Michaels wrote:
> This pair of patches addresses valid objections to
> experimental code used to mute the tda9887 when the tuner
> is used for digital TV reception. That code is removed and
> replaced by a better solution.
>
> Attached are patches for dvb-kernel CVS and video4linux CVS.
> Signed-off-by Mac Michaels <wmichaels1 at earthlink.net>
Please, don't anybody apply this yet.... The dvb-kernel portion of this
patch looks like it can be applied without hurting anything, however, in
the video4linux portion of this patch, Mac has removed the backwards
compatibility of cx88-dvb with the older version of lgdt330x. The rest
of the video4linux stuff looks okay to me.
Yes, newer lgdt330x code has already made it to Linus' -git tree,
however, Mauro and I have decided not to update cx88-dvb.c within cvs
until the next -rc is released. However, if you use the tree-merging
scripts, you WILL be using the latest code, except for Mac's patch here.
*I* am using the latest -git kernel (2.6.13-rc6-git2), but Mauro, and
possibly others, are working with 2.6.13-rc6.
Currently, video4linux cvs is compatible with the latest -mm kernel and
the latest -rc kernel. It is NOT compatible right now with the latest
-git kernel, (without using tree-merging scripts) due to some #ifdef's
... We wish to keep it this way until the next -rc kernel comes out, or
2.6.13 mainline. In the meantime, I might apply this patch and test it
here for myself... If it works, (which I dont doubt that it will), and
*if* I get around to it, I'll re-patch this again by hand (not fun), and
respond to this email with a patch that doesnt break the backwards
compatibility.
Mac- If you had run scripts/unmerge-trees.sh before generating the
patch, this would have been a non-issue.
I have a patch sitting here waiting to be committed once we see
2.6.13-rc7 or 2.6.13-mainline. The patch fixes compile against 2.6.13,
and removes backwards compatibility with old lgdt330x code from
cx88-dvb.c, and it adjusts the tree-merging scripts to handle this
change. I will attach this patch to this email, for the convenience of
those wishing to build cvs against -git.
I repeat, we are waiting for either 2.6.13-rc7 or 2.6.13 mainline before
we apply the attached patch.
Signed-off-by: Michael Krufky <mkrufky at m1k.net>
-------------- next part --------------
diff -upr video4linux.orig/cx88-dvb.c video4linux/cx88-dvb.c
--- video4linux.orig/cx88-dvb.c 2005-08-08 20:35:00.000000000 +0000
+++ video4linux/cx88-dvb.c 2005-08-08 20:38:29.000000000 +0000
@@ -216,7 +216,6 @@ static struct or51132_config pchdtv_hd30
#endif
#ifdef HAVE_LGDT330X
-#if LINUX_VERSION_CODE > KERNEL_VERSION(2,6,13)
static int lgdt330x_pll_set(struct dvb_frontend* fe,
struct dvb_frontend_parameters* params)
{
@@ -251,18 +250,6 @@ static int lgdt330x_pll_set(struct dvb_f
}
return 0;
}
-#else
-static int lgdt330x_pll_set(struct dvb_frontend* fe,
- struct dvb_frontend_parameters* params, u8* pllbuf)
-{
- struct cx8802_dev *dev= fe->dvb->priv;
-
- pllbuf[0] = dev->core->pll_addr;
- dvb_pll_configure(dev->core->pll_desc, &pllbuf[1],
- params->frequency, 0);
- return 0;
-}
-#endif
static int lgdt330x_pll_rf_set(struct dvb_frontend* fe, int index)
{
@@ -289,7 +276,6 @@ static int lgdt330x_set_ts_param(struct
static struct lgdt330x_config fusionhdtv_3_gold = {
.demod_address = 0x0e,
-#if LINUX_VERSION_CODE > KERNEL_VERSION(2,6,13)
.demod_chip = LGDT3302,
.serial_mpeg = 0x04, /* TPSERIAL for 3302 in TOP_CONTROL */
.pll_set = lgdt330x_pll_set,
@@ -300,7 +286,6 @@ static struct lgdt330x_config fusionhdtv
.demod_address = 0x0e,
.demod_chip = LGDT3303,
.serial_mpeg = 0x40, /* TPSERIAL for 3303 in TOP_CONTROL */
-#endif
.pll_set = lgdt330x_pll_set,
.set_ts_params = lgdt330x_set_ts_param,
};
@@ -389,7 +374,6 @@ static int dvb_register(struct cx8802_de
&dev->core->i2c_adap);
}
break;
-#if LINUX_VERSION_CODE > KERNEL_VERSION(2,6,13)
case CX88_BOARD_DVICO_FUSIONHDTV_5_GOLD:
dev->ts_gen_cntrl = 0x08;
{
@@ -407,7 +391,6 @@ static int dvb_register(struct cx8802_de
}
break;
#endif
-#endif
default:
printk("%s: The frontend of your DVB/ATSC card isn't supported yet\n",
dev->core->name);
diff -upr video4linux.orig/scripts/merge-trees.sh video4linux/scripts/merge-trees.sh
--- video4linux.orig/scripts/merge-trees.sh 2005-08-08 20:35:00.000000000 +0000
+++ video4linux/scripts/merge-trees.sh 2005-08-08 20:41:04.000000000 +0000
@@ -70,33 +70,6 @@ diff -upr video4linux.orig/cx88-dvb.c vi
#include "cx88.h"
#include "dvb-pll.h"
-@@ -216,7 +212,7 @@ static struct or51132_config pchdtv_hd30
- #endif
-
- #ifdef HAVE_LGDT330X
--#if LINUX_VERSION_CODE > KERNEL_VERSION(2,6,13)
-+#if 1
- static int lgdt330x_pll_set(struct dvb_frontend* fe,
- struct dvb_frontend_parameters* params)
- {
-@@ -289,7 +285,7 @@ static int lgdt330x_set_ts_param(struct
-
- static struct lgdt330x_config fusionhdtv_3_gold = {
- .demod_address = 0x0e,
--#if LINUX_VERSION_CODE > KERNEL_VERSION(2,6,13)
-+#if 1
- .demod_chip = LGDT3302,
- .serial_mpeg = 0x04, /* TPSERIAL for 3302 in TOP_CONTROL */
- .pll_set = lgdt330x_pll_set,
-@@ -389,7 +385,7 @@ static int dvb_register(struct cx8802_de
- &dev->core->i2c_adap);
- }
- break;
--#if LINUX_VERSION_CODE > KERNEL_VERSION(2,6,13)
-+#if 1
- case CX88_BOARD_DVICO_FUSIONHDTV_5_GOLD:
- dev->ts_gen_cntrl = 0x08;
- {
diff -upr video4linux.orig/saa7134-dvb.c video4linux/saa7134-dvb.c
--- video4linux.orig/saa7134-dvb.c 2005-07-29 21:40:53.000000000 +0000
+++ video4linux/saa7134-dvb.c 2005-07-29 21:41:59.000000000 +0000
diff -upr video4linux.orig/scripts/unmerge-trees.sh video4linux/scripts/unmerge-trees.sh
--- video4linux.orig/scripts/unmerge-trees.sh 2005-08-08 20:35:00.000000000 +0000
+++ video4linux/scripts/unmerge-trees.sh 2005-08-08 20:41:35.000000000 +0000
@@ -70,33 +70,6 @@ diff -upr video4linux/cx88-dvb.c video4l
#include "cx88.h"
#include "dvb-pll.h"
-@@ -212,7 +216,7 @@ static struct or51132_config pchdtv_hd30
- #endif
-
- #ifdef HAVE_LGDT330X
--#if 1
-+#if LINUX_VERSION_CODE > KERNEL_VERSION(2,6,13)
- static int lgdt330x_pll_set(struct dvb_frontend* fe,
- struct dvb_frontend_parameters* params)
- {
-@@ -285,7 +289,7 @@ static int lgdt330x_set_ts_param(struct
-
- static struct lgdt330x_config fusionhdtv_3_gold = {
- .demod_address = 0x0e,
--#if 1
-+#if LINUX_VERSION_CODE > KERNEL_VERSION(2,6,13)
- .demod_chip = LGDT3302,
- .serial_mpeg = 0x04, /* TPSERIAL for 3302 in TOP_CONTROL */
- .pll_set = lgdt330x_pll_set,
-@@ -385,7 +389,7 @@ static int dvb_register(struct cx8802_de
- &dev->core->i2c_adap);
- }
- break;
--#if 1
-+#if LINUX_VERSION_CODE > KERNEL_VERSION(2,6,13)
- case CX88_BOARD_DVICO_FUSIONHDTV_5_GOLD:
- dev->ts_gen_cntrl = 0x08;
- {
diff -upr video4linux/saa7134-dvb.c video4linux.orig/saa7134-dvb.c
--- video4linux/saa7134-dvb.c 2005-07-29 21:44:41.000000000 +0000
+++ video4linux.orig/saa7134-dvb.c 2005-07-29 21:44:31.000000000 +0000
More information about the linux-dvb
mailing list