Re: Hauppauge WinTV NOVA T USB2 not working any more

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

 



I attach a patch that leave the good values for both NOVA-T 500 and AverTV 
DVB-T USB 2.0.

Jose Alberto

El Sábado, 23 de Septiembre de 2006 12:29, Jose Alberto Reguero escribió:
> El Viernes, 22 de Septiembre de 2006 08:58, Patrick Boettcher escribió:
> > Hi,
> >
> > Mario, can you please try the attached patch and see, if this fixes your
> > problem ?
>
> With this patch AverTV DVB-T USB 2.0 still don't work.
>
> Jose Alberto
>
> > Thanks Jose for finding it. I knew I would forget this thing when
> > changing the set_pwm-function...
> >
> > Sorry,
> > Patrick.
> >
> > --
> >   Mail: patrick.boettcher@xxxxxxx
> >   WWW:  http://www.wi-bw.tfh-wildau.de/~pboettch/
> >
> > On Thu, 21 Sep 2006, Jose Alberto Reguero wrote:
> > > El Miércoles, 20 de Septiembre de 2006 22:56, Mario Rossi escribió:
> > > > I've tried with the new patches
> > > >
> > > > 1) module loading works fine now
> > > > 2) I cannot tune or scan anything
> > > > 3) make unload works fine
> > >
> > > Also AverTV DVB-T USB 2.0 don't work.
> > > Looking at the code I thing that this changset:
> > >
> > > http://linuxtv.org/hg/v4l-dvb?cmd=changeset;node=51f233c864c5;style=git
> > >we b
> > >
> > > breaks dib3000mc devices especialy this part:
> > >
> > > @@ -167,15 +150,18 @@ static int dib3000mc_set_timing(struct d
> > > return 0;
> > > }
> > > -static int dib3000mc_setup_pwm3_state(struct dib3000mc_state *state)
> > > -{
> > > +static int dib3000mc_setup_pwm_state(struct dib3000mc_state *state)
> > > +{
> > > + u16 reg_51, reg_52 = state->cfg->agc->setup & 0xfefb;
> > > if (state->cfg->pwm3_inversion) {
> > > - dib3000mc_write_word(state, 51, (2 << 14) | (0 << 10) | (7 << 6) | (2
> > > << 2) | (2 << 0));
> > > - dib3000mc_write_word(state, 52, (0 << 8) | (5 << 5) | (1 << 4) | (1
> > > << 3) | (1 << 2) | (2 << 0));
> > > + reg_51 = (2 << 14) | (0 << 10) | (7 << 6) | (2 << 2) | (2 << 0);
> > > + reg_52 |= (1 << 2);
> > > } else {
> > > - dib3000mc_write_word(state, 51, (2 << 14) | (4 << 10) | (7 << 6) | (2
> > > << 2) | (2 << 0));
> > > - dib3000mc_write_word(state, 52, (1 << 8) | (5 << 5) | (1 << 4) | (1
> > > << 3) | (0 << 2) | (2 << 0));
> > > - }
> > > + reg_51 = (2 << 14) | (4 << 10) | (7 << 6) | (2 << 2) | (2 << 0);
> > > + reg_52 |= (1 << 8);
> > > + }
> > > + dib3000mc_write_word(state, 51, reg_51);
> > > + dib3000mc_write_word(state, 52, reg_52);
> > > if (state->cfg->use_pwm3)
> > > dib3000mc_write_word(state, 245, (1 << 3) | (1 << 0));
> > >
> > > This change the values for reg_52 which are good for NOVA T 500 but are
> > > not good for other devices.
> > >
> > > Jose Alberto
> > >
> > >
> > > _______________________________________________
> > > linux-dvb mailing list
> > > linux-dvb@xxxxxxxxxxx
> > > http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
>
> _______________________________________________
> linux-dvb mailing list
> linux-dvb@xxxxxxxxxxx
> http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
diff -r e0f7c5608bd9 linux/drivers/media/dvb/frontends/dib3000mc.c
--- a/linux/drivers/media/dvb/frontends/dib3000mc.c	Mon Sep 25 12:43:45 2006 -0300
+++ b/linux/drivers/media/dvb/frontends/dib3000mc.c	Thu Sep 28 01:34:47 2006 +0200
@@ -152,13 +152,17 @@ static int dib3000mc_set_timing(struct d
 
 static int dib3000mc_setup_pwm_state(struct dib3000mc_state *state)
 {
-	u16 reg_51, reg_52 = state->cfg->agc->setup & 0xfefb;
+	u16 reg_51, reg_52 = state->cfg->agc->setup & 0xcefa;
     if (state->cfg->pwm3_inversion) {
 		reg_51 =  (2 << 14) | (0 << 10) | (7 << 6) | (2 << 2) | (2 << 0);
 		reg_52 |= (1 << 2);
+		reg_52 |= (2 << 0);
+		reg_52 |= (5 << 5);
 	} else {
 		reg_51 = (2 << 14) | (4 << 10) | (7 << 6) | (2 << 2) | (2 << 0);
 		reg_52 |= (1 << 8);
+		reg_52 |= (2 << 0);
+		reg_52 |= (5 << 5);
 	}
 	dib3000mc_write_word(state, 51, reg_51);
 	dib3000mc_write_word(state, 52, reg_52);
_______________________________________________
linux-dvb mailing list
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