[linux-dvb] HowTo for new tuner

Markus Rechberger mrechberger at gmail.com
Thu Aug 2 16:56:48 CEST 2007

On 8/2/07, Michael Krufky <mkrufky at linuxtv.org> wrote:
> MikeW wrote:
> > Markus Rechberger <mrechberger <at> gmail.com> writes:
> >
> >> Hi Mike,
> >>
> >> Can you shed some more light about the capabilities of the tuner you
> >> intend to add support for?
> >>
> >> regards,
> >> Markus
> >
> > Example:
> > http://www.nxp.com/acrobat_download/literature/9397/75015475.pdf
> >
> > Regards,
> > MikeW
> Mike,
> I have already written a completely functional driver for the TDA18271 silicon.
>  DVB-T has not yet been tested on it, but I doubt it will be any problem.  I
> understand that you are working with the TDA18211 -- do you know how similar it
> is to the 18271?  I haven't google'd the 18211 yet, but I'll take a look.
> I am currently working to refactor the tuning api between the dvb and v4l
> subsystems -- this is my reasoning for not having released my tda18271 code
> publicly, as of yet.  It does work, however, and I have only tested it so far
> using analog broadcasts.  The difference for tuning DVB-T is only some small
> changes to certain registers.
> Based on what I see in the pdf that you linked above, I wouldn't be surprised if
> the tda18211 featureset is merely a small subset of the tda18271, meant
> specifically for DVB-T.
> How much progress have you already made with your driver?
> I'd be happy to help you if you have any further questions... If the 18211 is
> indeed program compatible with the 18271, except for the limited featureset,
> then I'd hate to see somebody do double-work.
> Regards,
> Michael Krufky

As already mentioned in the IRC channel, following userspace library
adds support for multistandard/hybrid tuners which can do DVB and/or
analogue TV

(code sample for a userspace tuner library)

current features:
* it's easy to reuse tuners within v4l and dvb
* floating point calculations
* abstraction of the v4l and dvb framework, which helps reusing that
code for OSX lateron
* bugs will moreover crash the userspace client and leave the kernel
in a stable state

of course there's still space for some additional features.

this code is intended to be merged with linux 2.6.24.
A small userspace daemon will take care that the requested tuner
module gets loaded.

The usuage of such userspace tuner is straightforward and similar like
the other DVB tuners.

config.tunerid = /* tunerid */
config.vendorid = /* vendorid */;
config.productid = /* productid */
config.config = 0; /* configuration 1 in demod client, can match up
with vendor & productid */
dvb_attach(tuner_stub_attach, dvb_dev->frontend, &dev->i2c_adap, NULL,
NULL, &config);

A more accurate documentation about it will come ab later when I have
more time for that.

Mike I hope that's fine now :-)

More information about the linux-dvb mailing list