Re: [PATCH] dvb_frontend: fix typos in comments and one function

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

 



Hello Steven,

> I've had an open TDA10048 bug on my list for quite a while, I think
> you've already made reference to this in an earlier email. Essentially
> I'm told my a number of Australian users that the 10048 isn't
> broad-locking when tuned +- 167Khz away from the carrier, which it
> should definitely do. If you're in the mood for patching the 10048 and
> want to find and flip the broad-locking bit then I'd be certainly
> thrilled to test this. :)

Well, this is an interesting subject and there is a lot to say. Sorry in
advance if you already know what I will explain:
- the channel distribution is usually well known in DVB-T. For example,
from 474MHz to 858MHz in UHF/8MHz. This channel distribution depends on
each country.
- due to the existing analogue channels, some FIXED frequency offsets have
been introduced here and there to move the DVB-T channel away from the
analogue channels depending on how critical it can be.
These frequency offsets are commonly +/-166KHz everywhere, except in
France (+/-N*166KHz with N=1,2,3) and in Australia (+/-125KHz) as far as I
know.
- hence the DVB-T channel can be shifted in IF by +/-125KHz, +/-166KHz,
+/-333KHz, +/-500KHz. The channel decoder will or will not recover such an
offset depending on the strategy. If it can lock, the IF signal will be
partially filtered out by the IF filter and this impacts the performance.
The best approach is to detect the potential frequency offset and
re-program the tuner to the new frequency.

Now about the TDA10048:
- it naturally recovers the small offsets during the lock (error returned
in FREQERR_R at 0x28 & 0x29):
in 8MHz: +/-93KHz
in 7MHz: +/-82KHz
in 6MHz: +/-70KHz
- the AUTOOFFSET bit allows to detect the fixed frequency offset whose
value is returned in OFFSET_F (in 0x14) when there is no lock. If an
offset is detected, it is applied to the tuner, then AUTOOFFSET is set to
0 and the acquisition is checked again. This is the normal and preferred
way.

The non-recommended option is to force the lock when a fixed offset is
detected without reprogramming the tuner. This is possible only with
certain firmware versions (>=0x34), in forcing 1 in register 0x19[0], the
fixed offset will still be available in OFFSET_F after the lock. For
earlier firmware versions, the 0x19[0] bit has no effect.

Ideally, for the channel demodulator driver, the API should provide an
interface to set the frequency offset recovery (AUTO, NONE...) and to get
the detected frequency offset if any.

-- 
Guillaume

--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux