[linux-dvb] Hauppauge WinTV NOVA T USB2 not working any more

Patrick Boettcher patrick.boettcher at desy.de
Fri Sep 22 08:58:14 CEST 2006


Hi,

Mario, can you please try the attached patch and see, if this fixes your 
problem ?

Thanks Jose for finding it. I knew I would forget this thing when changing 
the set_pwm-function...

Sorry,
Patrick.

--
  Mail: patrick.boettcher at desy.de
  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=gitweb
> 
> 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 at linuxtv.org
> http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
> 
-------------- next part --------------
diff -r 8ff390db8a57 linux/drivers/media/dvb/dvb-usb/dibusb-common.c
--- a/linux/drivers/media/dvb/dvb-usb/dibusb-common.c	Wed Sep 20 11:06:58 2006 +0200
+++ b/linux/drivers/media/dvb/dvb-usb/dibusb-common.c	Fri Sep 22 08:57:29 2006 +0200
@@ -169,7 +169,7 @@ EXPORT_SYMBOL(dibusb_read_eeprom_byte);
 // Config Adjacent channels  Perf -cal22
 static struct dibx000_agc_config dib3000p_mt2060_agc_config = {
 	.band_caps = BAND_VHF | BAND_UHF,
-	.setup     = (0 << 15) | (0 << 14) | (1 << 13) | (1 << 12) | (29 << 0),
+	.setup    =  (1 << 8) | (5 << 5) | (1 << 4) | (1 << 3) | (0 << 2) | (2 << 0),
 
 	.agc1_max = 48497,
 	.agc1_min = 23593,
@@ -199,7 +199,7 @@ static struct dib3000mc_config stk3000p_
 };
 
 static struct dibx000_agc_config dib3000p_panasonic_agc_config = {
-	.setup    = (0 << 15) | (0 << 14) | (1 << 13) | (1 << 12) | (29 << 0),
+	.setup    =  (1 << 8) | (5 << 5) | (1 << 4) | (1 << 3) | (0 << 2) | (2 << 0),
 
 	.agc1_max = 56361,
 	.agc1_min = 22282,


More information about the linux-dvb mailing list