Re: [RFC] Change dvb-pll handling of IF frequency

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

 



On 3/13/07, Trent Piepho <xyzzy@xxxxxxxxxxxxx> wrote:
The basic frequency calculation done in dvb-pll is to take the desired
frequency, add the IF frequency, and then divide by the reference
frequency.

When dvb-pll does the division, it just rounds the result down.  It would
make more sense to round to the nearest integer, which is done by adding
1/2 the divisor (the reference frequency) before dividing.

Some PLL definitions already do this, by adding one half the reference
frequency to the IF frequency.  The effect is the same, except one looking
at the code doesn't know if they are seeing the IF frequency, or the IF
frequency plus 1/2 the reference frequency.  Of course some PLL defintions
do it one way and some do it the other and there is no record of which is
which.

I think it makes a lot more sense put just the IF frequency in the PLL
definition, and take care of rounding properly in the dvb-pll code.  So I
have attached a patch which does this.  In order to do this, I had to guess
which PLLs had stepsize/2 added to the offset and which didn't.

The second patch moves the IF frequency out of the per-band data.  There is
no reason for the IF to change from one band to another, and in all of the
PLLs defined the IF is constant across bands.

As far as which PLLs had offsets with stepsize/2 added and which didn't,
I've made a list of all the IF frequencies defined in dvb-pll:

dvb_pll_thomson_dtt7610         44
dvb_pll_microtune_4042          44
dvb_pll_thomson_dtt761x         44
dvb_pll_lg_tdvs_h06xf           44
dvb_pll_tdhu2                   44
dvb_pll_tuv1236d                44
dvb_pll_samsung_tbmv            44
dvb_pll_tua6010xs               36 1/8
dvb_pll_thomson_dtt7579         36 1/6
dvb_pll_tded4                   36 1/6
dvb_pll_tua6034                 36 1/6
dvb_pll_unknown_1               36 1/6
dvb_pll_thomson_dtt759x         36 1/6
dvb_pll_lg_z201                 36 1/6
dvb_pll_philips_td1316          36 1/6 (rounded to nearest kHz)
dvb_pll_tda665x                 36 1/6 (rounded to nearest kHz) + step/2
dvb_pll_fmd1216me               36 1/8 (rounded to two decimals) + step/2
dvb_pll_thomson_fe6600          36 1/8 (rounded to two decimals) + step/2
dvb_pll_env57h1xd5              36 1/8 + step


dvb_pll_philips_sd1878_tda8261  499

IF doesn't apply to this device as it is a ZIF MOPLL


manu

_______________________________________________
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