Re: NOVA-S problems with 2.6.17

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sunday 02 July 2006 20:34, Tamas, Gergely wrote:
> hI1
>
>  > >  > cd linux-2.6.17-rc1
>  > >  > patch -R -p1 < budget-av-cam-reset.patch
>  > >
>  > > I tried this with 2.6.17 final. Applied this patch, got a reject on
>  > > dvb_frontend.c
>  >
>  > yeah - there were later patches in final; that one will only work
>  > against -rc1.
>
> Sure. But it helped.
>
> Tried the same with 2.6.17-rc1. It worked too... More-or-less...
> Only one try failed out of 20 or so...
>
> uploaded kernel.log to
> http://dice.mfa.kfki.hu/tmp/kernel.log-2.6.17-rc1-without_budget-av-cam-res
>et.patch.txt

OK, I've regenerated the patch; been a bit tired today, so I was worried I'd 
done something wrong. This patch is against 2.6.17 final. It _should_ do the 
same as your hand applied patch, but also keep the reinitialisation 
functionality needed for the budget-av. I added printks to we can check I 
haven't got it wrong again.

Can you give it a go please?
diff -Naur linux-2.6.17.orig/drivers/media/dvb/dvb-core/dvb_frontend.c linux-2.6.17/drivers/media/dvb/dvb-core/dvb_frontend.c
--- linux-2.6.17.orig/drivers/media/dvb/dvb-core/dvb_frontend.c	2006-06-18 02:49:35.000000000 +0100
+++ linux-2.6.17/drivers/media/dvb/dvb-core/dvb_frontend.c	2006-07-02 23:33:12.000000000 +0100
@@ -519,7 +519,9 @@
 	fepriv->delay = 3*HZ;
 	fepriv->status = 0;
 	fepriv->wakeup = 0;
-	fepriv->reinitialise = 1;
+	fepriv->reinitialise = 0;
+	printk("Init first time\n");
+	dvb_frontend_init(fe);
 
 	while (1) {
 		up(&fepriv->sem);	    /* is locked when we enter the thread... */
@@ -538,6 +540,7 @@
 			break;
 
 		if (fepriv->reinitialise) {
+			printk("Reinit\n");
 			dvb_frontend_init(fe);
 			if (fepriv->tone != -1) {
 				fe->ops->set_tone(fe, fepriv->tone);
@@ -996,17 +999,17 @@
 		return ret;
 
 	if ((file->f_flags & O_ACCMODE) != O_RDONLY) {
+		/* normal tune mode when opened R/W */
+		fepriv->tune_mode_flags &= ~FE_TUNE_MODE_ONESHOT;
+		fepriv->tone = -1;
+		fepriv->voltage = -1;
+
 		ret = dvb_frontend_start (fe);
 		if (ret)
 			dvb_generic_release (inode, file);
 
 		/*  empty event queue */
 		fepriv->events.eventr = fepriv->events.eventw = 0;
-
-		/* normal tune mode when opened R/W */
-		fepriv->tune_mode_flags &= ~FE_TUNE_MODE_ONESHOT;
-		fepriv->tone = -1;
-		fepriv->voltage = -1;
 	}
 
 	return ret;
_______________________________________________

linux-dvb@xxxxxxxxxxx
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb

[Index of Archives]     [Linux Media]     [Video 4 Linux]     [Asterisk]     [Samba]     [Xorg]     [Xfree86]     [Linux USB]

  Powered by Linux