[linux-dvb] vp7045-fe.c

Jeremy Nysen jnysen-linux-dvb at triaptic.com.au
Wed Apr 12 04:44:38 CEST 2006

Hi Patrick,

I've applied your fixes for multiple VP7045 USB DVB-T devices (I'm using 
a Digitalnow dual DVB-T) and it has been working flawlessly here for 
over a week.

There is still a problem with the read signal strength function in 
vp7045-fe.c. To bring it in line with mt352.c in the frontends/ 
directory, the function should be changed to: (As per the Zarlink data 
sheets, frontends/mt352.c is correct).

static int vp7045_fe_read_signal_strength(struct dvb_frontend* fe, u16 
        struct vp7045_fe_state *state = fe->demodulator_priv;
        u16 signal = ((vp7045_read_reg(state->d, 0x14) & 0x0f) << 12) |
                (vp7045_read_reg(state->d, 0x15) << 4);

        *strength = ~signal;
        return 0;

Ideally this function should also have a logarithmic scaling factor 
applied to make it more usable in the 0 - 100% range - the same scaling 
should also be applied to the frontends/mt352.c code. Then again, 
scaling should be applied to a lot of the TV/DVB decoders (both USB and 
non-USB alike) and in quite a few areas. :-)


More information about the linux-dvb mailing list