xref: /openbmc/linux/Documentation/driver-api/media/dtv-core.rst (revision 4b4193256c8d3bc3a5397b5cd9494c2ad386317d)
1*ff768f59SMauro Carvalho Chehab.. SPDX-License-Identifier: GPL-2.0
2*ff768f59SMauro Carvalho Chehab
3*ff768f59SMauro Carvalho ChehabDigital TV (DVB) devices
4*ff768f59SMauro Carvalho Chehab------------------------
5*ff768f59SMauro Carvalho Chehab
6*ff768f59SMauro Carvalho ChehabDigital TV devices are implemented by several different drivers:
7*ff768f59SMauro Carvalho Chehab
8*ff768f59SMauro Carvalho Chehab- A bridge driver that is responsible to talk with the bus where the other
9*ff768f59SMauro Carvalho Chehab  devices are connected (PCI, USB, SPI), bind to the other drivers and
10*ff768f59SMauro Carvalho Chehab  implement the digital demux logic (either in software or in hardware);
11*ff768f59SMauro Carvalho Chehab
12*ff768f59SMauro Carvalho Chehab- Frontend drivers that are usually implemented as two separate drivers:
13*ff768f59SMauro Carvalho Chehab
14*ff768f59SMauro Carvalho Chehab  - A tuner driver that implements the logic which commands the part of
15*ff768f59SMauro Carvalho Chehab    the hardware responsible for tuning into a digital TV transponder or
16*ff768f59SMauro Carvalho Chehab    physical channel. The output of a tuner is usually a baseband or
17*ff768f59SMauro Carvalho Chehab    Intermediate Frequency (IF) signal;
18*ff768f59SMauro Carvalho Chehab
19*ff768f59SMauro Carvalho Chehab  - A demodulator driver (a.k.a "demod") that implements the logic which
20*ff768f59SMauro Carvalho Chehab    commands the digital TV decoding hardware. The output of a demod is
21*ff768f59SMauro Carvalho Chehab    a digital stream, with multiple audio, video and data channels typically
22*ff768f59SMauro Carvalho Chehab    multiplexed using MPEG Transport Stream [#f1]_.
23*ff768f59SMauro Carvalho Chehab
24*ff768f59SMauro Carvalho ChehabOn most hardware, the frontend drivers talk with the bridge driver using an
25*ff768f59SMauro Carvalho ChehabI2C bus.
26*ff768f59SMauro Carvalho Chehab
27*ff768f59SMauro Carvalho Chehab.. [#f1] Some standards use TCP/IP for multiplexing data, like DVB-H (an
28*ff768f59SMauro Carvalho Chehab   abandoned standard, not used anymore) and ATSC version 3.0 current
29*ff768f59SMauro Carvalho Chehab   proposals. Currently, the DVB subsystem doesn't implement those standards.
30*ff768f59SMauro Carvalho Chehab
31*ff768f59SMauro Carvalho Chehab
32*ff768f59SMauro Carvalho Chehab.. toctree::
33*ff768f59SMauro Carvalho Chehab    :maxdepth: 1
34*ff768f59SMauro Carvalho Chehab
35*ff768f59SMauro Carvalho Chehab    dtv-common
36*ff768f59SMauro Carvalho Chehab    dtv-frontend
37*ff768f59SMauro Carvalho Chehab    dtv-demux
38*ff768f59SMauro Carvalho Chehab    dtv-ca
39*ff768f59SMauro Carvalho Chehab    dtv-net
40