Mailing List archive

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

[linux-dvb] Re: [RFC] Frontend API -- some words about hardware



Just for those ones who are interested - here a short description how 
common STB's and DVB cards implement the hardware part of H/V switching, 
22kHz signal generation and DiSEqC:

Let's start with the old linux-dvb driver on AV7110 based cards. Here 
everything is controlled in software by the AV7110 firmware. It switches 
the 13/18V voltage by it's GPIO pins, it generates the 22kHz by 
switching on and off the voltage. The DiSEqC commands are generated by 
modulating the 22kHz signal.

When an application sends a DiSEqC sequence, the kernel driver talks to 
the firmware that it should generate this message and afterwards switch 
on/off the 22kHz signal.

This was necessairy because in the early days there were some tuners on 
the market which could not generate DiSEqC. Today you can't buy a card 
anymore which contains a demodulator without a microcontroller which is 
capable of generating the DiSEqC sequence.

The first ones required some external logic which switched the 13/18V 
voltage and generated 22kHz. The frontend module had a pin called "LNB 
power" and muted this signal to generate the DiSEqC messages. Newer 
frontends can generate the 22kHz signal on their own and only need the 
13/18V input on the LNB power pin (examples are the Alps BSRU6 and the 
Grundig 29504-491). Really new frontends can even switch the 13/18V.

All real existing STB's I know generate the DiSEqC signal using the 
frontend. The 13/18V switch and 22kHz signal generation is usually done 
by external logic, either a microcontroller or a switch, often 
controlled by the i2c bus.

That's why we merged frontend- and sec-device. Most ioctl's go directly 
to the frontend, those ones that switch the voltage are catched by the 
special 'before-ioctl' that a box- or card-specific driver registers 
using the lowlevel frontend API of the driver. A userspace program 
doesn't needs to know anything about this mechanism, it's perfectly 
transparent.

- Holger



-- 
Info:
To unsubscribe send a mail to listar@linuxtv.org with "unsubscribe linux-dvb" as subject.


Home | Main Index | Thread Index