[linux-dvb] Re: DVB-S on quad TV tuner card from Medion PC MD8800

Steven Toth stoth at hauppauge.com
Mon Oct 9 17:30:38 CEST 2006

Hartmut Hackmann wrote:
> Hi,
> Michael Krufky wrote:
>> Hartmut Hackmann wrote:
>>> There is a driver for the DVB-S channel decoder of this
>>> card available now. The problem is: how to select the frontends.
>> Hello Hartmut,
>> I changed the list cc from v4l to dvb, as that would be more appropriate.
>> I'm just curious... Will saa713x with multiple frontends be able to use
>> both frontends at once?  Or just one at a time?  (I would assume the latter)
>> In the case of the cx2388x cards, Hauppauge has an HVR3000 card that has
>> both DVB-T and DVB-S demods on it.  Only one can be used at a time, as
>> they would share a single transport to move the ts data.
>> Steve Toth has been working on the 8802-mpeg port functionality of the
>> cx88 driver, and he has created this device_acquire method, that allows
>> the driver to select which frontend has access to a bus at any given moment.
>> You might want to take a look at his tree for ideas:
>> http://linuxtv.org/hg/~stoth/hvr1300-final?cmd=changeset;node=4b846f1d939b;style=gitweb
>> This tree doesnt yet deal with multiple DVB frontends, but it does deal
>> with MPEG Encoder vs. DVB-T demod.  I believe the multiple frontend
>> support is coming next, but I havent asked him about that.
>> Of course, if the saa713x will allow both demods to function
>> simultaneously, then the suggestion above will not apply at all.
>> I'm just shooting ideas around, and asking for my curiousity... Dont
>> feel pressured to act on this immediately.  ;-)
> Thanks that you pointed me to this, i will have a look. Your assumption
> is right, the saa173x have only 1 TS interface, so both decoders can't
> be active simultanously.
> The easiest solution is to select the demodulator with an insmod option,
> it can be done with a very simple hack.
I've been working on some generic patches for the cx88 and saa7134 
drivers to add support for multiple frontends on a single adapter. 
Specifically, I'm defining some generic videobuf_dvb_X structures which 
move the struct videobuf_dvb member from the cx8802_dev and 
(saa7134_dev?) core structures down into a list with some other 
elements. (This can be extended for multiple adapters multiple frontends)

I'm also changing the dvb_register functions. Instead of calling 
videobuf_dvb_register (which implicitly creates a single adapter with a 
single frontend), I'm calling a new function videobuf_dvb_register_bus 
which registers a single adapter and any number of frontends.

Based on replies to my earlier question, my feeling is that cx88 boards 
are a single adapter with multiple frontends. Other bridges could be 
multiple adapters and multiple frontends (MD8800).

The saa7134 framework will also need it's own version of 
cx88_hw_bus_ctrl() and will need to override feops.hw_bus_ctrl to ensure 
all the frontends call and try to determine whether access is available. 
This mechanism stops two different frontends from trying to 
access/configure the same hardware. <---- I'm _NOT_ working on these 
patches. The cx88 framework is a good reference for this.

The patches are done but I need to test. If everything goes well I'll 
post the patches fore review later this week.


More information about the linux-dvb mailing list