Add the rt linux 4.1.3-rt3 as base
[kvmfornfv.git] / kernel / Documentation / DocBook / media / dvb / dvbproperty.xml
diff --git a/kernel/Documentation/DocBook/media/dvb/dvbproperty.xml b/kernel/Documentation/DocBook/media/dvb/dvbproperty.xml
new file mode 100644 (file)
index 0000000..3018564
--- /dev/null
@@ -0,0 +1,1317 @@
+<section id="FE_GET_SET_PROPERTY">
+<title><constant>FE_GET_PROPERTY/FE_SET_PROPERTY</constant></title>
+<para>This section describes the DVB version 5 extension of the DVB-API, also
+called "S2API", as this API were added to provide support for DVB-S2. It was
+designed to be able to replace the old frontend API. Yet, the DISEQC and
+the capability ioctls weren't implemented yet via the new way.</para>
+<para>The typical usage for the <constant>FE_GET_PROPERTY/FE_SET_PROPERTY</constant>
+API is to replace the ioctl's were the <link linkend="dvb-frontend-parameters">
+struct <constant>dvb_frontend_parameters</constant></link> were used.</para>
+<section id="dtv-stats">
+<title>DTV stats type</title>
+<programlisting>
+struct dtv_stats {
+       __u8 scale;     /* enum fecap_scale_params type */
+       union {
+               __u64 uvalue;   /* for counters and relative scales */
+               __s64 svalue;   /* for 1/1000 dB measures */
+       };
+} __packed;
+</programlisting>
+</section>
+<section id="dtv-fe-stats">
+<title>DTV stats type</title>
+<programlisting>
+#define MAX_DTV_STATS   4
+
+struct dtv_fe_stats {
+       __u8 len;
+       struct dtv_stats stat[MAX_DTV_STATS];
+} __packed;
+</programlisting>
+</section>
+
+<section id="dtv-property">
+<title>DTV property type</title>
+<programlisting>
+/* Reserved fields should be set to 0 */
+
+struct dtv_property {
+       __u32 cmd;
+       __u32 reserved[3];
+       union {
+               __u32 data;
+               struct dtv_fe_stats st;
+               struct {
+                       __u8 data[32];
+                       __u32 len;
+                       __u32 reserved1[3];
+                       void *reserved2;
+               } buffer;
+       } u;
+       int result;
+} __attribute__ ((packed));
+
+/* num of properties cannot exceed DTV_IOCTL_MAX_MSGS per ioctl */
+#define DTV_IOCTL_MAX_MSGS 64
+</programlisting>
+</section>
+<section id="dtv-properties">
+<title>DTV properties type</title>
+<programlisting>
+struct dtv_properties {
+       __u32 num;
+       struct dtv_property *props;
+};
+</programlisting>
+</section>
+
+<section id="FE_GET_PROPERTY">
+<title>FE_GET_PROPERTY</title>
+<para>DESCRIPTION
+</para>
+<informaltable><tgroup cols="1"><tbody><row><entry
+ align="char">
+<para>This ioctl call returns one or more frontend properties. This call only
+ requires read-only access to the device.</para>
+</entry>
+ </row></tbody></tgroup></informaltable>
+<para>SYNOPSIS
+</para>
+<informaltable><tgroup cols="1"><tbody><row><entry
+ align="char">
+<para>int ioctl(int fd, int request = <link linkend="FE_GET_PROPERTY">FE_GET_PROPERTY</link>,
+ dtv_properties &#x22C6;props);</para>
+</entry>
+ </row></tbody></tgroup></informaltable>
+<para>PARAMETERS
+</para>
+<informaltable><tgroup cols="2"><tbody><row><entry align="char">
+<para>int fd</para>
+</entry><entry
+ align="char">
+<para>File descriptor returned by a previous call to open().</para>
+</entry>
+ </row><row><entry
+ align="char">
+<para>int num</para>
+</entry><entry
+ align="char">
+<para>Equals <link linkend="FE_GET_PROPERTY">FE_GET_PROPERTY</link> for this command.</para>
+</entry>
+ </row><row><entry
+ align="char">
+<para>struct dtv_property *props</para>
+</entry><entry
+ align="char">
+<para>Points to the location where the front-end property commands are stored.</para>
+</entry>
+ </row></tbody></tgroup></informaltable>
+&return-value-dvb;
+<informaltable><tgroup cols="2"><tbody><row>
+  <entry align="char"><para>EOPNOTSUPP</para></entry>
+  <entry align="char"><para>Property type not supported.</para></entry>
+ </row></tbody></tgroup></informaltable>
+</section>
+
+<section id="FE_SET_PROPERTY">
+<title>FE_SET_PROPERTY</title>
+<para>DESCRIPTION
+</para>
+<informaltable><tgroup cols="1"><tbody><row><entry
+ align="char">
+<para>This ioctl call sets one or more frontend properties. This call
+ requires read/write access to the device.</para>
+</entry>
+ </row></tbody></tgroup></informaltable>
+<para>SYNOPSIS
+</para>
+<informaltable><tgroup cols="1"><tbody><row><entry
+ align="char">
+<para>int ioctl(int fd, int request = <link linkend="FE_SET_PROPERTY">FE_SET_PROPERTY</link>,
+ dtv_properties &#x22C6;props);</para>
+</entry>
+ </row></tbody></tgroup></informaltable>
+<para>PARAMETERS
+</para>
+<informaltable><tgroup cols="2"><tbody><row><entry align="char">
+<para>int fd</para>
+</entry><entry
+ align="char">
+<para>File descriptor returned by a previous call to open().</para>
+</entry>
+ </row><row><entry
+ align="char">
+<para>int num</para>
+</entry><entry
+ align="char">
+<para>Equals <link linkend="FE_SET_PROPERTY">FE_SET_PROPERTY</link> for this command.</para>
+</entry>
+ </row><row><entry
+ align="char">
+<para>struct dtv_property *props</para>
+</entry><entry
+ align="char">
+<para>Points to the location where the front-end property commands are stored.</para>
+</entry>
+ </row></tbody></tgroup></informaltable>
+&return-value-dvb;
+<informaltable><tgroup cols="2"><tbody><row>
+  <entry align="char"><para>EOPNOTSUPP</para></entry>
+  <entry align="char"><para>Property type not supported.</para></entry>
+ </row></tbody></tgroup></informaltable>
+</section>
+
+<section>
+       <title>Property types</title>
+<para>
+On <link linkend="FE_GET_PROPERTY">FE_GET_PROPERTY</link>/<link linkend="FE_SET_PROPERTY">FE_SET_PROPERTY</link>,
+the actual action is determined by the dtv_property cmd/data pairs. With one single ioctl, is possible to
+get/set up to 64 properties. The actual meaning of each property is described on the next sections.
+</para>
+
+<para>The available frontend property types are shown on the next section.</para>
+</section>
+
+<section id="fe_property_parameters">
+       <title>Digital TV property parameters</title>
+       <section id="DTV-UNDEFINED">
+       <title><constant>DTV_UNDEFINED</constant></title>
+       <para>Used internally. A GET/SET operation for it won't change or return anything.</para>
+       </section>
+       <section id="DTV-TUNE">
+       <title><constant>DTV_TUNE</constant></title>
+       <para>Interpret the cache of data, build either a traditional frontend tunerequest so we can pass validation in the <constant>FE_SET_FRONTEND</constant> ioctl.</para>
+       </section>
+       <section id="DTV-CLEAR">
+       <title><constant>DTV_CLEAR</constant></title>
+       <para>Reset a cache of data specific to the frontend here. This does not effect hardware.</para>
+       </section>
+       <section id="DTV-FREQUENCY">
+               <title><constant>DTV_FREQUENCY</constant></title>
+
+               <para>Central frequency of the channel.</para>
+
+               <para>Notes:</para>
+               <para>1)For satellital delivery systems, it is measured in kHz.
+                       For the other ones, it is measured in Hz.</para>
+               <para>2)For ISDB-T, the channels are usually transmitted with an offset of 143kHz.
+                       E.g. a valid frequency could be 474143 kHz. The stepping is bound to the bandwidth of
+                       the channel which is 6MHz.</para>
+
+               <para>3)As in ISDB-Tsb the channel consists of only one or three segments the
+                       frequency step is 429kHz, 3*429 respectively. As for ISDB-T the
+                       central frequency of the channel is expected.</para>
+       </section>
+       <section id="DTV-MODULATION">
+       <title><constant>DTV_MODULATION</constant></title>
+<para>Specifies the frontend modulation type for cable and satellite types. The modulation can be one of the types bellow:</para>
+<programlisting>
+ typedef enum fe_modulation {
+       QPSK,
+       QAM_16,
+       QAM_32,
+       QAM_64,
+       QAM_128,
+       QAM_256,
+       QAM_AUTO,
+       VSB_8,
+       VSB_16,
+       PSK_8,
+       APSK_16,
+       APSK_32,
+       DQPSK,
+       QAM_4_NR,
+ } fe_modulation_t;
+</programlisting>
+       </section>
+       <section id="DTV-BANDWIDTH-HZ">
+               <title><constant>DTV_BANDWIDTH_HZ</constant></title>
+
+               <para>Bandwidth for the channel, in HZ.</para>
+
+               <para>Possible values:
+                       <constant>1712000</constant>,
+                       <constant>5000000</constant>,
+                       <constant>6000000</constant>,
+                       <constant>7000000</constant>,
+                       <constant>8000000</constant>,
+                       <constant>10000000</constant>.
+               </para>
+
+               <para>Notes:</para>
+
+               <para>1) For ISDB-T it should be always 6000000Hz (6MHz)</para>
+               <para>2) For ISDB-Tsb it can vary depending on the number of connected segments</para>
+               <para>3) Bandwidth doesn't apply for DVB-C transmissions, as the bandwidth
+                        for DVB-C depends on the symbol rate</para>
+               <para>4) Bandwidth in ISDB-T is fixed (6MHz) or can be easily derived from
+                       other parameters (DTV_ISDBT_SB_SEGMENT_IDX,
+                       DTV_ISDBT_SB_SEGMENT_COUNT).</para>
+               <para>5) DVB-T supports 6, 7 and 8MHz.</para>
+               <para>6) In addition, DVB-T2 supports 1.172, 5 and 10MHz.</para>
+       </section>
+       <section id="DTV-INVERSION">
+       <title><constant>DTV_INVERSION</constant></title>
+       <para>The Inversion field can take one of these values:
+       </para>
+       <programlisting>
+       typedef enum fe_spectral_inversion {
+               INVERSION_OFF,
+               INVERSION_ON,
+               INVERSION_AUTO
+       } fe_spectral_inversion_t;
+       </programlisting>
+       <para>It indicates if spectral inversion should be presumed or not. In the automatic setting
+       (<constant>INVERSION_AUTO</constant>) the hardware will try to figure out the correct setting by
+       itself.
+       </para>
+       </section>
+       <section id="DTV-DISEQC-MASTER">
+       <title><constant>DTV_DISEQC_MASTER</constant></title>
+       <para>Currently not implemented.</para>
+       </section>
+       <section id="DTV-SYMBOL-RATE">
+       <title><constant>DTV_SYMBOL_RATE</constant></title>
+       <para>Digital TV symbol rate, in bauds (symbols/second). Used on cable standards.</para>
+       </section>
+       <section id="DTV-INNER-FEC">
+       <title><constant>DTV_INNER_FEC</constant></title>
+       <para>Used cable/satellite transmissions. The acceptable values are:
+       </para>
+       <programlisting>
+typedef enum fe_code_rate {
+       FEC_NONE = 0,
+       FEC_1_2,
+       FEC_2_3,
+       FEC_3_4,
+       FEC_4_5,
+       FEC_5_6,
+       FEC_6_7,
+       FEC_7_8,
+       FEC_8_9,
+       FEC_AUTO,
+       FEC_3_5,
+       FEC_9_10,
+       FEC_2_5,
+} fe_code_rate_t;
+       </programlisting>
+       <para>which correspond to error correction rates of 1/2, 2/3, etc.,
+       no error correction or auto detection.</para>
+       </section>
+       <section id="DTV-VOLTAGE">
+       <title><constant>DTV_VOLTAGE</constant></title>
+       <para>The voltage is usually used with non-DiSEqC capable LNBs to switch
+       the polarzation (horizontal/vertical). When using DiSEqC epuipment this
+       voltage has to be switched consistently to the DiSEqC commands as
+       described in the DiSEqC spec.</para>
+       <programlisting>
+               typedef enum fe_sec_voltage {
+               SEC_VOLTAGE_13,
+               SEC_VOLTAGE_18
+               } fe_sec_voltage_t;
+       </programlisting>
+       </section>
+       <section id="DTV-TONE">
+       <title><constant>DTV_TONE</constant></title>
+       <para>Currently not used.</para>
+       </section>
+       <section id="DTV-PILOT">
+       <title><constant>DTV_PILOT</constant></title>
+       <para>Sets DVB-S2 pilot</para>
+       <section id="fe-pilot-t">
+               <title>fe_pilot type</title>
+               <programlisting>
+typedef enum fe_pilot {
+       PILOT_ON,
+       PILOT_OFF,
+       PILOT_AUTO,
+} fe_pilot_t;
+               </programlisting>
+               </section>
+       </section>
+       <section id="DTV-ROLLOFF">
+       <title><constant>DTV_ROLLOFF</constant></title>
+               <para>Sets DVB-S2 rolloff</para>
+
+       <section id="fe-rolloff-t">
+               <title>fe_rolloff type</title>
+               <programlisting>
+typedef enum fe_rolloff {
+       ROLLOFF_35, /* Implied value in DVB-S, default for DVB-S2 */
+       ROLLOFF_20,
+       ROLLOFF_25,
+       ROLLOFF_AUTO,
+} fe_rolloff_t;
+               </programlisting>
+               </section>
+       </section>
+       <section id="DTV-DISEQC-SLAVE-REPLY">
+       <title><constant>DTV_DISEQC_SLAVE_REPLY</constant></title>
+       <para>Currently not implemented.</para>
+       </section>
+       <section id="DTV-FE-CAPABILITY-COUNT">
+       <title><constant>DTV_FE_CAPABILITY_COUNT</constant></title>
+       <para>Currently not implemented.</para>
+       </section>
+       <section id="DTV-FE-CAPABILITY">
+       <title><constant>DTV_FE_CAPABILITY</constant></title>
+       <para>Currently not implemented.</para>
+       </section>
+       <section id="DTV-DELIVERY-SYSTEM">
+               <title><constant>DTV_DELIVERY_SYSTEM</constant></title>
+               <para>Specifies the type of Delivery system</para>
+               <section id="fe-delivery-system-t">
+               <title>fe_delivery_system type</title>
+               <para>Possible values: </para>
+<programlisting>
+
+typedef enum fe_delivery_system {
+       SYS_UNDEFINED,
+       SYS_DVBC_ANNEX_A,
+       SYS_DVBC_ANNEX_B,
+       SYS_DVBT,
+       SYS_DSS,
+       SYS_DVBS,
+       SYS_DVBS2,
+       SYS_DVBH,
+       SYS_ISDBT,
+       SYS_ISDBS,
+       SYS_ISDBC,
+       SYS_ATSC,
+       SYS_ATSCMH,
+       SYS_DTMB,
+       SYS_CMMB,
+       SYS_DAB,
+       SYS_DVBT2,
+       SYS_TURBO,
+       SYS_DVBC_ANNEX_C,
+} fe_delivery_system_t;
+</programlisting>
+               </section>
+       </section>
+       <section id="DTV-ISDBT-PARTIAL-RECEPTION">
+               <title><constant>DTV_ISDBT_PARTIAL_RECEPTION</constant></title>
+
+               <para>If <constant>DTV_ISDBT_SOUND_BROADCASTING</constant> is '0' this bit-field represents whether
+                       the channel is in partial reception mode or not.</para>
+
+               <para>If '1' <constant>DTV_ISDBT_LAYERA_*</constant> values are assigned to the center segment and
+                       <constant>DTV_ISDBT_LAYERA_SEGMENT_COUNT</constant> has to be '1'.</para>
+
+               <para>If in addition <constant>DTV_ISDBT_SOUND_BROADCASTING</constant> is '1'
+                       <constant>DTV_ISDBT_PARTIAL_RECEPTION</constant> represents whether this ISDB-Tsb channel
+                       is consisting of one segment and layer or three segments and two layers.</para>
+
+               <para>Possible values: 0, 1, -1 (AUTO)</para>
+       </section>
+       <section id="DTV-ISDBT-SOUND-BROADCASTING">
+               <title><constant>DTV_ISDBT_SOUND_BROADCASTING</constant></title>
+
+               <para>This field represents whether the other DTV_ISDBT_*-parameters are
+                       referring to an ISDB-T and an ISDB-Tsb channel. (See also
+                       <constant>DTV_ISDBT_PARTIAL_RECEPTION</constant>).</para>
+
+               <para>Possible values: 0, 1, -1 (AUTO)</para>
+       </section>
+       <section id="DTV-ISDBT-SB-SUBCHANNEL-ID">
+               <title><constant>DTV_ISDBT_SB_SUBCHANNEL_ID</constant></title>
+
+               <para>This field only applies if <constant>DTV_ISDBT_SOUND_BROADCASTING</constant> is '1'.</para>
+
+               <para>(Note of the author: This might not be the correct description of the
+                       <constant>SUBCHANNEL-ID</constant> in all details, but it is my understanding of the technical
+                       background needed to program a device)</para>
+
+               <para>An ISDB-Tsb channel (1 or 3 segments) can be broadcasted alone or in a
+                       set of connected ISDB-Tsb channels. In this set of channels every
+                       channel can be received independently. The number of connected
+                       ISDB-Tsb segment can vary, e.g. depending on the frequency spectrum
+                       bandwidth available.</para>
+
+               <para>Example: Assume 8 ISDB-Tsb connected segments are broadcasted. The
+                       broadcaster has several possibilities to put those channels in the
+                       air: Assuming a normal 13-segment ISDB-T spectrum he can align the 8
+                       segments from position 1-8 to 5-13 or anything in between.</para>
+
+               <para>The underlying layer of segments are subchannels: each segment is
+                       consisting of several subchannels with a predefined IDs. A sub-channel
+                       is used to help the demodulator to synchronize on the channel.</para>
+
+               <para>An ISDB-T channel is always centered over all sub-channels. As for
+                       the example above, in ISDB-Tsb it is no longer as simple as that.</para>
+
+               <para><constant>The DTV_ISDBT_SB_SUBCHANNEL_ID</constant> parameter is used to give the
+                       sub-channel ID of the segment to be demodulated.</para>
+
+               <para>Possible values: 0 .. 41, -1 (AUTO)</para>
+       </section>
+       <section id="DTV-ISDBT-SB-SEGMENT-IDX">
+               <title><constant>DTV_ISDBT_SB_SEGMENT_IDX</constant></title>
+               <para>This field only applies if <constant>DTV_ISDBT_SOUND_BROADCASTING</constant> is '1'.</para>
+               <para><constant>DTV_ISDBT_SB_SEGMENT_IDX</constant> gives the index of the segment to be
+                       demodulated for an ISDB-Tsb channel where several of them are
+                       transmitted in the connected manner.</para>
+               <para>Possible values: 0 .. <constant>DTV_ISDBT_SB_SEGMENT_COUNT</constant> - 1</para>
+               <para>Note: This value cannot be determined by an automatic channel search.</para>
+       </section>
+       <section id="DTV-ISDBT-SB-SEGMENT-COUNT">
+               <title><constant>DTV_ISDBT_SB_SEGMENT_COUNT</constant></title>
+               <para>This field only applies if <constant>DTV_ISDBT_SOUND_BROADCASTING</constant> is '1'.</para>
+               <para><constant>DTV_ISDBT_SB_SEGMENT_COUNT</constant> gives the total count of connected ISDB-Tsb
+                       channels.</para>
+               <para>Possible values: 1 .. 13</para>
+               <para>Note: This value cannot be determined by an automatic channel search.</para>
+       </section>
+       <section id="isdb-hierq-layers">
+               <title><constant>DTV-ISDBT-LAYER*</constant> parameters</title>
+               <para>ISDB-T channels can be coded hierarchically. As opposed to DVB-T in
+                       ISDB-T hierarchical layers can be decoded simultaneously. For that
+                       reason a ISDB-T demodulator has 3 Viterbi and 3 Reed-Solomon decoders.</para>
+               <para>ISDB-T has 3 hierarchical layers which each can use a part of the
+                       available segments. The total number of segments over all layers has
+                       to 13 in ISDB-T.</para>
+               <para>There are 3 parameter sets, for Layers A, B and C.</para>
+               <section id="DTV-ISDBT-LAYER-ENABLED">
+                       <title><constant>DTV_ISDBT_LAYER_ENABLED</constant></title>
+                       <para>Hierarchical reception in ISDB-T is achieved by enabling or disabling
+                               layers in the decoding process. Setting all bits of
+                               <constant>DTV_ISDBT_LAYER_ENABLED</constant> to '1' forces all layers (if applicable) to be
+                               demodulated. This is the default.</para>
+                       <para>If the channel is in the partial reception mode
+                               (<constant>DTV_ISDBT_PARTIAL_RECEPTION</constant> = 1) the central segment can be decoded
+                               independently of the other 12 segments. In that mode layer A has to
+                               have a <constant>SEGMENT_COUNT</constant> of 1.</para>
+                       <para>In ISDB-Tsb only layer A is used, it can be 1 or 3 in ISDB-Tsb
+                               according to <constant>DTV_ISDBT_PARTIAL_RECEPTION</constant>. <constant>SEGMENT_COUNT</constant> must be filled
+                               accordingly.</para>
+                       <para>Possible values: 0x1, 0x2, 0x4 (|-able)</para>
+                       <para><constant>DTV_ISDBT_LAYER_ENABLED[0:0]</constant> - layer A</para>
+                       <para><constant>DTV_ISDBT_LAYER_ENABLED[1:1]</constant> - layer B</para>
+                       <para><constant>DTV_ISDBT_LAYER_ENABLED[2:2]</constant> - layer C</para>
+                       <para><constant>DTV_ISDBT_LAYER_ENABLED[31:3]</constant> unused</para>
+               </section>
+               <section id="DTV-ISDBT-LAYER-FEC">
+                       <title><constant>DTV_ISDBT_LAYER*_FEC</constant></title>
+                       <para>Possible values: <constant>FEC_AUTO</constant>, <constant>FEC_1_2</constant>, <constant>FEC_2_3</constant>, <constant>FEC_3_4</constant>, <constant>FEC_5_6</constant>, <constant>FEC_7_8</constant></para>
+               </section>
+               <section id="DTV-ISDBT-LAYER-MODULATION">
+                       <title><constant>DTV_ISDBT_LAYER*_MODULATION</constant></title>
+                       <para>Possible values: <constant>QAM_AUTO</constant>, QP<constant>SK, QAM_16</constant>, <constant>QAM_64</constant>, <constant>DQPSK</constant></para>
+                       <para>Note: If layer C is <constant>DQPSK</constant> layer B has to be <constant>DQPSK</constant>. If layer B is <constant>DQPSK</constant>
+                               and <constant>DTV_ISDBT_PARTIAL_RECEPTION</constant>=0 layer has to be <constant>DQPSK</constant>.</para>
+               </section>
+               <section id="DTV-ISDBT-LAYER-SEGMENT-COUNT">
+                       <title><constant>DTV_ISDBT_LAYER*_SEGMENT_COUNT</constant></title>
+                       <para>Possible values: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, -1 (AUTO)</para>
+                       <para>Note: Truth table for <constant>DTV_ISDBT_SOUND_BROADCASTING</constant> and
+                               <constant>DTV_ISDBT_PARTIAL_RECEPTION</constant> and <constant>LAYER</constant>*_SEGMENT_COUNT</para>
+                       <informaltable id="isdbt-layer_seg-cnt-table">
+                               <tgroup cols="6">
+                                       <tbody>
+                                               <row>
+                                                       <entry>PR</entry>
+                                                       <entry>SB</entry>
+                                                       <entry>Layer A width</entry>
+                                                       <entry>Layer B width</entry>
+                                                       <entry>Layer C width</entry>
+                                                       <entry>total width</entry>
+                                               </row>
+                                               <row>
+                                                       <entry>0</entry>
+                                                       <entry>0</entry>
+                                                       <entry>1 .. 13</entry>
+                                                       <entry>1 .. 13</entry>
+                                                       <entry>1 .. 13</entry>
+                                                       <entry>13</entry>
+                                               </row>
+                                               <row>
+                                                       <entry>1</entry>
+                                                       <entry>0</entry>
+                                                       <entry>1</entry>
+                                                       <entry>1 .. 13</entry>
+                                                       <entry>1 .. 13</entry>
+                                                       <entry>13</entry>
+                                               </row>
+                                               <row>
+                                                       <entry>0</entry>
+                                                       <entry>1</entry>
+                                                       <entry>1</entry>
+                                                       <entry>0</entry>
+                                                       <entry>0</entry>
+                                                       <entry>1</entry>
+                                               </row>
+                                               <row>
+                                                       <entry>1</entry>
+                                                       <entry>1</entry>
+                                                       <entry>1</entry>
+                                                       <entry>2</entry>
+                                                       <entry>0</entry>
+                                                       <entry>13</entry>
+                                               </row>
+                                       </tbody>
+                               </tgroup>
+                       </informaltable>
+               </section>
+               <section id="DTV-ISDBT-LAYER-TIME-INTERLEAVING">
+                       <title><constant>DTV_ISDBT_LAYER*_TIME_INTERLEAVING</constant></title>
+                       <para>Valid values: 0, 1, 2, 4, -1 (AUTO)</para>
+                       <para>when DTV_ISDBT_SOUND_BROADCASTING is active, value 8 is also valid.</para>
+                       <para>Note: The real time interleaving length depends on the mode (fft-size). The values
+                               here are referring to what can be found in the TMCC-structure, as shown in the table below.</para>
+                       <informaltable id="isdbt-layer-interleaving-table">
+                               <tgroup cols="4" align="center">
+                                       <tbody>
+                                               <row>
+                                                       <entry>DTV_ISDBT_LAYER*_TIME_INTERLEAVING</entry>
+                                                       <entry>Mode 1 (2K FFT)</entry>
+                                                       <entry>Mode 2 (4K FFT)</entry>
+                                                       <entry>Mode 3 (8K FFT)</entry>
+                                               </row>
+                                               <row>
+                                                       <entry>0</entry>
+                                                       <entry>0</entry>
+                                                       <entry>0</entry>
+                                                       <entry>0</entry>
+                                               </row>
+                                               <row>
+                                                       <entry>1</entry>
+                                                       <entry>4</entry>
+                                                       <entry>2</entry>
+                                                       <entry>1</entry>
+                                               </row>
+                                               <row>
+                                                       <entry>2</entry>
+                                                       <entry>8</entry>
+                                                       <entry>4</entry>
+                                                       <entry>2</entry>
+                                               </row>
+                                               <row>
+                                                       <entry>4</entry>
+                                                       <entry>16</entry>
+                                                       <entry>8</entry>
+                                                       <entry>4</entry>
+                                               </row>
+                                       </tbody>
+                               </tgroup>
+                       </informaltable>
+               </section>
+               <section id="DTV-ATSCMH-FIC-VER">
+                       <title><constant>DTV_ATSCMH_FIC_VER</constant></title>
+                       <para>Version number of the FIC (Fast Information Channel) signaling data.</para>
+                       <para>FIC is used for relaying information to allow rapid service acquisition by the receiver.</para>
+                       <para>Possible values: 0, 1, 2, 3, ..., 30, 31</para>
+               </section>
+               <section id="DTV-ATSCMH-PARADE-ID">
+                       <title><constant>DTV_ATSCMH_PARADE_ID</constant></title>
+                       <para>Parade identification number</para>
+                       <para>A parade is a collection of up to eight MH groups, conveying one or two ensembles.</para>
+                       <para>Possible values: 0, 1, 2, 3, ..., 126, 127</para>
+               </section>
+               <section id="DTV-ATSCMH-NOG">
+                       <title><constant>DTV_ATSCMH_NOG</constant></title>
+                       <para>Number of MH groups per MH subframe for a designated parade.</para>
+                       <para>Possible values: 1, 2, 3, 4, 5, 6, 7, 8</para>
+               </section>
+               <section id="DTV-ATSCMH-TNOG">
+                       <title><constant>DTV_ATSCMH_TNOG</constant></title>
+                       <para>Total number of MH groups including all MH groups belonging to all MH parades in one MH subframe.</para>
+                       <para>Possible values: 0, 1, 2, 3, ..., 30, 31</para>
+               </section>
+               <section id="DTV-ATSCMH-SGN">
+                       <title><constant>DTV_ATSCMH_SGN</constant></title>
+                       <para>Start group number.</para>
+                       <para>Possible values: 0, 1, 2, 3, ..., 14, 15</para>
+               </section>
+               <section id="DTV-ATSCMH-PRC">
+                       <title><constant>DTV_ATSCMH_PRC</constant></title>
+                       <para>Parade repetition cycle.</para>
+                       <para>Possible values: 1, 2, 3, 4, 5, 6, 7, 8</para>
+               </section>
+               <section id="DTV-ATSCMH-RS-FRAME-MODE">
+                       <title><constant>DTV_ATSCMH_RS_FRAME_MODE</constant></title>
+                       <para>RS frame mode.</para>
+                       <para>Possible values are:</para>
+                 <para id="atscmh-rs-frame-mode">
+<programlisting>
+typedef enum atscmh_rs_frame_mode {
+       ATSCMH_RSFRAME_PRI_ONLY  = 0,
+       ATSCMH_RSFRAME_PRI_SEC   = 1,
+} atscmh_rs_frame_mode_t;
+</programlisting>
+                 </para>
+               </section>
+               <section id="DTV-ATSCMH-RS-FRAME-ENSEMBLE">
+                       <title><constant>DTV_ATSCMH_RS_FRAME_ENSEMBLE</constant></title>
+                       <para>RS frame ensemble.</para>
+                       <para>Possible values are:</para>
+                 <para id="atscmh-rs-frame-ensemble">
+<programlisting>
+typedef enum atscmh_rs_frame_ensemble {
+       ATSCMH_RSFRAME_ENS_PRI   = 0,
+       ATSCMH_RSFRAME_ENS_SEC   = 1,
+} atscmh_rs_frame_ensemble_t;
+</programlisting>
+                 </para>
+               </section>
+               <section id="DTV-ATSCMH-RS-CODE-MODE-PRI">
+                       <title><constant>DTV_ATSCMH_RS_CODE_MODE_PRI</constant></title>
+                       <para>RS code mode (primary).</para>
+                       <para>Possible values are:</para>
+                 <para id="atscmh-rs-code-mode">
+<programlisting>
+typedef enum atscmh_rs_code_mode {
+       ATSCMH_RSCODE_211_187    = 0,
+       ATSCMH_RSCODE_223_187    = 1,
+       ATSCMH_RSCODE_235_187    = 2,
+} atscmh_rs_code_mode_t;
+</programlisting>
+                 </para>
+               </section>
+               <section id="DTV-ATSCMH-RS-CODE-MODE-SEC">
+                       <title><constant>DTV_ATSCMH_RS_CODE_MODE_SEC</constant></title>
+                       <para>RS code mode (secondary).</para>
+                       <para>Possible values are:</para>
+<programlisting>
+typedef enum atscmh_rs_code_mode {
+       ATSCMH_RSCODE_211_187    = 0,
+       ATSCMH_RSCODE_223_187    = 1,
+       ATSCMH_RSCODE_235_187    = 2,
+} atscmh_rs_code_mode_t;
+</programlisting>
+               </section>
+               <section id="DTV-ATSCMH-SCCC-BLOCK-MODE">
+                       <title><constant>DTV_ATSCMH_SCCC_BLOCK_MODE</constant></title>
+                       <para>Series Concatenated Convolutional Code Block Mode.</para>
+                       <para>Possible values are:</para>
+                 <para id="atscmh-sccc-block-mode">
+<programlisting>
+typedef enum atscmh_sccc_block_mode {
+       ATSCMH_SCCC_BLK_SEP      = 0,
+       ATSCMH_SCCC_BLK_COMB     = 1,
+} atscmh_sccc_block_mode_t;
+</programlisting>
+                 </para>
+               </section>
+               <section id="DTV-ATSCMH-SCCC-CODE-MODE-A">
+                       <title><constant>DTV_ATSCMH_SCCC_CODE_MODE_A</constant></title>
+                       <para>Series Concatenated Convolutional Code Rate.</para>
+                       <para>Possible values are:</para>
+                 <para id="atscmh-sccc-code-mode">
+<programlisting>
+typedef enum atscmh_sccc_code_mode {
+       ATSCMH_SCCC_CODE_HLF     = 0,
+       ATSCMH_SCCC_CODE_QTR     = 1,
+} atscmh_sccc_code_mode_t;
+</programlisting>
+                 </para>
+               </section>
+               <section id="DTV-ATSCMH-SCCC-CODE-MODE-B">
+                       <title><constant>DTV_ATSCMH_SCCC_CODE_MODE_B</constant></title>
+                       <para>Series Concatenated Convolutional Code Rate.</para>
+                       <para>Possible values are:</para>
+<programlisting>
+typedef enum atscmh_sccc_code_mode {
+       ATSCMH_SCCC_CODE_HLF     = 0,
+       ATSCMH_SCCC_CODE_QTR     = 1,
+} atscmh_sccc_code_mode_t;
+</programlisting>
+               </section>
+               <section id="DTV-ATSCMH-SCCC-CODE-MODE-C">
+                       <title><constant>DTV_ATSCMH_SCCC_CODE_MODE_C</constant></title>
+                       <para>Series Concatenated Convolutional Code Rate.</para>
+                       <para>Possible values are:</para>
+<programlisting>
+typedef enum atscmh_sccc_code_mode {
+       ATSCMH_SCCC_CODE_HLF     = 0,
+       ATSCMH_SCCC_CODE_QTR     = 1,
+} atscmh_sccc_code_mode_t;
+</programlisting>
+               </section>
+               <section id="DTV-ATSCMH-SCCC-CODE-MODE-D">
+                       <title><constant>DTV_ATSCMH_SCCC_CODE_MODE_D</constant></title>
+                       <para>Series Concatenated Convolutional Code Rate.</para>
+                       <para>Possible values are:</para>
+<programlisting>
+typedef enum atscmh_sccc_code_mode {
+       ATSCMH_SCCC_CODE_HLF     = 0,
+       ATSCMH_SCCC_CODE_QTR     = 1,
+} atscmh_sccc_code_mode_t;
+</programlisting>
+               </section>
+       </section>
+       <section id="DTV-API-VERSION">
+       <title><constant>DTV_API_VERSION</constant></title>
+       <para>Returns the major/minor version of the DVB API</para>
+       </section>
+       <section id="DTV-CODE-RATE-HP">
+       <title><constant>DTV_CODE_RATE_HP</constant></title>
+       <para>Used on terrestrial transmissions. The acceptable values are:
+       </para>
+       <programlisting>
+typedef enum fe_code_rate {
+       FEC_NONE = 0,
+       FEC_1_2,
+       FEC_2_3,
+       FEC_3_4,
+       FEC_4_5,
+       FEC_5_6,
+       FEC_6_7,
+       FEC_7_8,
+       FEC_8_9,
+       FEC_AUTO,
+       FEC_3_5,
+       FEC_9_10,
+} fe_code_rate_t;
+       </programlisting>
+       </section>
+       <section id="DTV-CODE-RATE-LP">
+       <title><constant>DTV_CODE_RATE_LP</constant></title>
+       <para>Used on terrestrial transmissions. The acceptable values are:
+       </para>
+       <programlisting>
+typedef enum fe_code_rate {
+       FEC_NONE = 0,
+       FEC_1_2,
+       FEC_2_3,
+       FEC_3_4,
+       FEC_4_5,
+       FEC_5_6,
+       FEC_6_7,
+       FEC_7_8,
+       FEC_8_9,
+       FEC_AUTO,
+       FEC_3_5,
+       FEC_9_10,
+} fe_code_rate_t;
+       </programlisting>
+       </section>
+       <section id="DTV-GUARD-INTERVAL">
+               <title><constant>DTV_GUARD_INTERVAL</constant></title>
+
+               <para>Possible values are:</para>
+<programlisting>
+typedef enum fe_guard_interval {
+       GUARD_INTERVAL_1_32,
+       GUARD_INTERVAL_1_16,
+       GUARD_INTERVAL_1_8,
+       GUARD_INTERVAL_1_4,
+       GUARD_INTERVAL_AUTO,
+       GUARD_INTERVAL_1_128,
+       GUARD_INTERVAL_19_128,
+       GUARD_INTERVAL_19_256,
+       GUARD_INTERVAL_PN420,
+       GUARD_INTERVAL_PN595,
+       GUARD_INTERVAL_PN945,
+} fe_guard_interval_t;
+</programlisting>
+
+               <para>Notes:</para>
+               <para>1) If <constant>DTV_GUARD_INTERVAL</constant> is set the <constant>GUARD_INTERVAL_AUTO</constant> the hardware will
+                       try to find the correct guard interval (if capable) and will use TMCC to fill
+                       in the missing parameters.</para>
+               <para>2) Intervals 1/128, 19/128 and 19/256 are used only for DVB-T2 at present</para>
+               <para>3) DTMB specifies PN420, PN595 and PN945.</para>
+       </section>
+       <section id="DTV-TRANSMISSION-MODE">
+               <title><constant>DTV_TRANSMISSION_MODE</constant></title>
+
+               <para>Specifies the number of carriers used by the standard</para>
+
+               <para>Possible values are:</para>
+<programlisting>
+typedef enum fe_transmit_mode {
+       TRANSMISSION_MODE_2K,
+       TRANSMISSION_MODE_8K,
+       TRANSMISSION_MODE_AUTO,
+       TRANSMISSION_MODE_4K,
+       TRANSMISSION_MODE_1K,
+       TRANSMISSION_MODE_16K,
+       TRANSMISSION_MODE_32K,
+       TRANSMISSION_MODE_C1,
+       TRANSMISSION_MODE_C3780,
+} fe_transmit_mode_t;
+</programlisting>
+               <para>Notes:</para>
+               <para>1) ISDB-T supports three carrier/symbol-size: 8K, 4K, 2K. It is called
+                       'mode' in the standard: Mode 1 is 2K, mode 2 is 4K, mode 3 is 8K</para>
+
+               <para>2) If <constant>DTV_TRANSMISSION_MODE</constant> is set the <constant>TRANSMISSION_MODE_AUTO</constant> the
+                       hardware will try to find the correct FFT-size (if capable) and will
+                       use TMCC to fill in the missing parameters.</para>
+               <para>3) DVB-T specifies 2K and 8K as valid sizes.</para>
+               <para>4) DVB-T2 specifies 1K, 2K, 4K, 8K, 16K and 32K.</para>
+               <para>5) DTMB specifies C1 and C3780.</para>
+       </section>
+       <section id="DTV-HIERARCHY">
+       <title><constant>DTV_HIERARCHY</constant></title>
+       <para>Frontend hierarchy</para>
+       <programlisting>
+typedef enum fe_hierarchy {
+        HIERARCHY_NONE,
+        HIERARCHY_1,
+        HIERARCHY_2,
+        HIERARCHY_4,
+        HIERARCHY_AUTO
+ } fe_hierarchy_t;
+       </programlisting>
+       </section>
+       <section id="DTV-STREAM-ID">
+       <title><constant>DTV_STREAM_ID</constant></title>
+       <para>DVB-S2, DVB-T2 and ISDB-S support the transmission of several
+             streams on a single transport stream.
+             This property enables the DVB driver to handle substream filtering,
+             when supported by the hardware.
+             By default, substream filtering is disabled.
+       </para><para>
+             For DVB-S2 and DVB-T2, the valid substream id range is from 0 to 255.
+       </para><para>
+             For ISDB, the valid substream id range is from 1 to 65535.
+       </para><para>
+             To disable it, you should use the special macro NO_STREAM_ID_FILTER.
+       </para><para>
+             Note: any value outside the id range also disables filtering.
+       </para>
+       </section>
+       <section id="DTV-DVBT2-PLP-ID-LEGACY">
+               <title><constant>DTV_DVBT2_PLP_ID_LEGACY</constant></title>
+               <para>Obsolete, replaced with DTV_STREAM_ID.</para>
+       </section>
+       <section id="DTV-ENUM-DELSYS">
+               <title><constant>DTV_ENUM_DELSYS</constant></title>
+               <para>A Multi standard frontend needs to advertise the delivery systems provided.
+                       Applications need to enumerate the provided delivery systems, before using
+                       any other operation with the frontend. Prior to it's introduction,
+                       FE_GET_INFO was used to determine a frontend type. A frontend which
+                       provides more than a single delivery system, FE_GET_INFO doesn't help much.
+                       Applications which intends to use a multistandard frontend must enumerate
+                       the delivery systems associated with it, rather than trying to use
+                       FE_GET_INFO. In the case of a legacy frontend, the result is just the same
+                       as with FE_GET_INFO, but in a more structured format </para>
+       </section>
+       <section id="DTV-INTERLEAVING">
+       <title><constant>DTV_INTERLEAVING</constant></title>
+       <para id="fe-interleaving">Interleaving mode</para>
+       <programlisting>
+enum fe_interleaving {
+       INTERLEAVING_NONE,
+       INTERLEAVING_AUTO,
+       INTERLEAVING_240,
+       INTERLEAVING_720,
+};
+       </programlisting>
+       </section>
+       <section id="DTV-LNA">
+       <title><constant>DTV_LNA</constant></title>
+       <para>Low-noise amplifier.</para>
+       <para>Hardware might offer controllable LNA which can be set manually
+               using that parameter. Usually LNA could be found only from
+               terrestrial devices if at all.</para>
+       <para>Possible values: 0, 1, LNA_AUTO</para>
+       <para>0, LNA off</para>
+       <para>1, LNA on</para>
+       <para>use the special macro LNA_AUTO to set LNA auto</para>
+       </section>
+</section>
+
+       <section id="frontend-stat-properties">
+       <title>Frontend statistics indicators</title>
+       <para>The values are returned via <constant>dtv_property.stat</constant>.
+             If the property is supported, <constant>dtv_property.stat.len</constant> is bigger than zero.</para>
+       <para>For most delivery systems, <constant>dtv_property.stat.len</constant>
+             will be 1 if the stats is supported, and the properties will
+             return a single value for each parameter.</para>
+       <para>It should be noticed, however, that new OFDM delivery systems
+             like ISDB can use different modulation types for each group of
+             carriers. On such standards, up to 3 groups of statistics can be
+             provided, and <constant>dtv_property.stat.len</constant> is updated
+             to reflect the "global" metrics, plus one metric per each carrier
+             group (called "layer" on ISDB).</para>
+       <para>So, in order to be consistent with other delivery systems, the first
+             value at <link linkend="dtv-stats"><constant>dtv_property.stat.dtv_stats</constant></link>
+             array refers to the global metric. The other elements of the array
+             represent each layer, starting from layer A(index 1),
+             layer B (index 2) and so on.</para>
+       <para>The number of filled elements are stored at <constant>dtv_property.stat.len</constant>.</para>
+       <para>Each element of the <constant>dtv_property.stat.dtv_stats</constant> array consists on two elements:</para>
+       <itemizedlist mark='opencircle'>
+               <listitem><para><constant>svalue</constant> or <constant>uvalue</constant>, where
+                       <constant>svalue</constant> is for signed values of the measure (dB measures)
+                       and <constant>uvalue</constant> is for unsigned values (counters, relative scale)</para></listitem>
+               <listitem><para><constant>scale</constant> - Scale for the value. It can be:</para>
+                       <itemizedlist mark='bullet' id="fecap-scale-params">
+                               <listitem><para><constant>FE_SCALE_NOT_AVAILABLE</constant> - The parameter is supported by the frontend, but it was not possible to collect it (could be a transitory or permanent condition)</para></listitem>
+                               <listitem><para><constant>FE_SCALE_DECIBEL</constant> - parameter is a signed value, measured in 1/1000 dB</para></listitem>
+                               <listitem><para><constant>FE_SCALE_RELATIVE</constant> - parameter is a unsigned value, where 0 means 0% and 65535 means 100%.</para></listitem>
+                               <listitem><para><constant>FE_SCALE_COUNTER</constant> - parameter is a unsigned value that counts the occurrence of an event, like bit error, block error, or lapsed time.</para></listitem>
+                       </itemizedlist>
+               </listitem>
+       </itemizedlist>
+       <section id="DTV-STAT-SIGNAL-STRENGTH">
+               <title><constant>DTV_STAT_SIGNAL_STRENGTH</constant></title>
+               <para>Indicates the signal strength level at the analog part of the tuner or of the demod.</para>
+               <para>Possible scales for this metric are:</para>
+               <itemizedlist mark='bullet'>
+                       <listitem><para><constant>FE_SCALE_NOT_AVAILABLE</constant> - it failed to measure it, or the measurement was not complete yet.</para></listitem>
+                       <listitem><para><constant>FE_SCALE_DECIBEL</constant> - signal strength is in 0.0001 dBm units, power measured in miliwatts. This value is generally negative.</para></listitem>
+                       <listitem><para><constant>FE_SCALE_RELATIVE</constant> - The frontend provides a 0% to 100% measurement for power (actually, 0 to 65535).</para></listitem>
+               </itemizedlist>
+       </section>
+       <section id="DTV-STAT-CNR">
+               <title><constant>DTV_STAT_CNR</constant></title>
+               <para>Indicates the Signal to Noise ratio for the main carrier.</para>
+               <para>Possible scales for this metric are:</para>
+               <itemizedlist mark='bullet'>
+                       <listitem><para><constant>FE_SCALE_NOT_AVAILABLE</constant> - it failed to measure it, or the measurement was not complete yet.</para></listitem>
+                       <listitem><para><constant>FE_SCALE_DECIBEL</constant> - Signal/Noise ratio is in 0.0001 dB units.</para></listitem>
+                       <listitem><para><constant>FE_SCALE_RELATIVE</constant> - The frontend provides a 0% to 100% measurement for Signal/Noise (actually, 0 to 65535).</para></listitem>
+               </itemizedlist>
+       </section>
+       <section id="DTV-STAT-PRE-ERROR-BIT-COUNT">
+               <title><constant>DTV_STAT_PRE_ERROR_BIT_COUNT</constant></title>
+               <para>Measures the number of bit errors before the forward error correction (FEC) on the inner coding block (before Viterbi, LDPC or other inner code).</para>
+               <para>This measure is taken during the same interval as <constant>DTV_STAT_PRE_TOTAL_BIT_COUNT</constant>.</para>
+               <para>In order to get the BER (Bit Error Rate) measurement, it should be divided by
+               <link linkend="DTV-STAT-PRE-TOTAL-BIT-COUNT"><constant>DTV_STAT_PRE_TOTAL_BIT_COUNT</constant></link>.</para>
+               <para>This measurement is monotonically increased, as the frontend gets more bit count measurements.
+                     The frontend may reset it when a channel/transponder is tuned.</para>
+               <para>Possible scales for this metric are:</para>
+               <itemizedlist mark='bullet'>
+                       <listitem><para><constant>FE_SCALE_NOT_AVAILABLE</constant> - it failed to measure it, or the measurement was not complete yet.</para></listitem>
+                       <listitem><para><constant>FE_SCALE_COUNTER</constant> - Number of error bits counted before the inner coding.</para></listitem>
+               </itemizedlist>
+       </section>
+       <section id="DTV-STAT-PRE-TOTAL-BIT-COUNT">
+               <title><constant>DTV_STAT_PRE_TOTAL_BIT_COUNT</constant></title>
+               <para>Measures the amount of bits received before the inner code block, during the same period as
+               <link linkend="DTV-STAT-PRE-ERROR-BIT-COUNT"><constant>DTV_STAT_PRE_ERROR_BIT_COUNT</constant></link> measurement was taken.</para>
+               <para>It should be noticed that this measurement can be smaller than the total amount of bits on the transport stream,
+                     as the frontend may need to manually restart the measurement, losing some data between each measurement interval.</para>
+               <para>This measurement is monotonically increased, as the frontend gets more bit count measurements.
+                     The frontend may reset it when a channel/transponder is tuned.</para>
+               <para>Possible scales for this metric are:</para>
+               <itemizedlist mark='bullet'>
+                       <listitem><para><constant>FE_SCALE_NOT_AVAILABLE</constant> - it failed to measure it, or the measurement was not complete yet.</para></listitem>
+                       <listitem><para><constant>FE_SCALE_COUNTER</constant> - Number of bits counted while measuring
+                                <link linkend="DTV-STAT-PRE-ERROR-BIT-COUNT"><constant>DTV_STAT_PRE_ERROR_BIT_COUNT</constant></link>.</para></listitem>
+               </itemizedlist>
+       </section>
+       <section id="DTV-STAT-POST-ERROR-BIT-COUNT">
+               <title><constant>DTV_STAT_POST_ERROR_BIT_COUNT</constant></title>
+               <para>Measures the number of bit errors after the forward error correction (FEC) done by inner code block (after Viterbi, LDPC or other inner code).</para>
+               <para>This measure is taken during the same interval as <constant>DTV_STAT_POST_TOTAL_BIT_COUNT</constant>.</para>
+               <para>In order to get the BER (Bit Error Rate) measurement, it should be divided by
+               <link linkend="DTV-STAT-POST-TOTAL-BIT-COUNT"><constant>DTV_STAT_POST_TOTAL_BIT_COUNT</constant></link>.</para>
+               <para>This measurement is monotonically increased, as the frontend gets more bit count measurements.
+                     The frontend may reset it when a channel/transponder is tuned.</para>
+               <para>Possible scales for this metric are:</para>
+               <itemizedlist mark='bullet'>
+                       <listitem><para><constant>FE_SCALE_NOT_AVAILABLE</constant> - it failed to measure it, or the measurement was not complete yet.</para></listitem>
+                       <listitem><para><constant>FE_SCALE_COUNTER</constant> - Number of error bits counted after the inner coding.</para></listitem>
+               </itemizedlist>
+       </section>
+       <section id="DTV-STAT-POST-TOTAL-BIT-COUNT">
+               <title><constant>DTV_STAT_POST_TOTAL_BIT_COUNT</constant></title>
+               <para>Measures the amount of bits received after the inner coding, during the same period as
+               <link linkend="DTV-STAT-POST-ERROR-BIT-COUNT"><constant>DTV_STAT_POST_ERROR_BIT_COUNT</constant></link> measurement was taken.</para>
+               <para>It should be noticed that this measurement can be smaller than the total amount of bits on the transport stream,
+                     as the frontend may need to manually restart the measurement, losing some data between each measurement interval.</para>
+               <para>This measurement is monotonically increased, as the frontend gets more bit count measurements.
+                     The frontend may reset it when a channel/transponder is tuned.</para>
+               <para>Possible scales for this metric are:</para>
+               <itemizedlist mark='bullet'>
+                       <listitem><para><constant>FE_SCALE_NOT_AVAILABLE</constant> - it failed to measure it, or the measurement was not complete yet.</para></listitem>
+                       <listitem><para><constant>FE_SCALE_COUNTER</constant> - Number of bits counted while measuring
+                                <link linkend="DTV-STAT-POST-ERROR-BIT-COUNT"><constant>DTV_STAT_POST_ERROR_BIT_COUNT</constant></link>.</para></listitem>
+               </itemizedlist>
+       </section>
+       <section id="DTV-STAT-ERROR-BLOCK-COUNT">
+               <title><constant>DTV_STAT_ERROR_BLOCK_COUNT</constant></title>
+               <para>Measures the number of block errors after the outer forward error correction coding (after Reed-Solomon or other outer code).</para>
+               <para>This measurement is monotonically increased, as the frontend gets more bit count measurements.
+                     The frontend may reset it when a channel/transponder is tuned.</para>
+               <para>Possible scales for this metric are:</para>
+               <itemizedlist mark='bullet'>
+                       <listitem><para><constant>FE_SCALE_NOT_AVAILABLE</constant> - it failed to measure it, or the measurement was not complete yet.</para></listitem>
+                       <listitem><para><constant>FE_SCALE_COUNTER</constant> - Number of error blocks counted after the outer coding.</para></listitem>
+               </itemizedlist>
+       </section>
+       <section id="DTV-STAT-TOTAL-BLOCK-COUNT">
+               <title><constant>DTV-STAT_TOTAL_BLOCK_COUNT</constant></title>
+               <para>Measures the total number of blocks received during the same period as
+               <link linkend="DTV-STAT-ERROR-BLOCK-COUNT"><constant>DTV_STAT_ERROR_BLOCK_COUNT</constant></link> measurement was taken.</para>
+               <para>It can be used to calculate the PER indicator, by dividing
+               <link linkend="DTV-STAT-ERROR-BLOCK-COUNT"><constant>DTV_STAT_ERROR_BLOCK_COUNT</constant></link>
+               by <link linkend="DTV-STAT-TOTAL-BLOCK-COUNT"><constant>DTV-STAT-TOTAL-BLOCK-COUNT</constant></link>.</para>
+               <para>Possible scales for this metric are:</para>
+               <itemizedlist mark='bullet'>
+                       <listitem><para><constant>FE_SCALE_NOT_AVAILABLE</constant> - it failed to measure it, or the measurement was not complete yet.</para></listitem>
+                       <listitem><para><constant>FE_SCALE_COUNTER</constant> - Number of blocks counted while measuring
+                       <link linkend="DTV-STAT-ERROR-BLOCK-COUNT"><constant>DTV_STAT_ERROR_BLOCK_COUNT</constant></link>.</para></listitem>
+               </itemizedlist>
+       </section>
+       </section>
+
+       <section id="frontend-property-terrestrial-systems">
+       <title>Properties used on terrestrial delivery systems</title>
+               <section id="dvbt-params">
+                       <title>DVB-T delivery system</title>
+                       <para>The following parameters are valid for DVB-T:</para>
+                       <itemizedlist mark='opencircle'>
+                               <listitem><para><link linkend="DTV-API-VERSION"><constant>DTV_API_VERSION</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-DELIVERY-SYSTEM"><constant>DTV_DELIVERY_SYSTEM</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-TUNE"><constant>DTV_TUNE</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-CLEAR"><constant>DTV_CLEAR</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-FREQUENCY"><constant>DTV_FREQUENCY</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-MODULATION"><constant>DTV_MODULATION</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-BANDWIDTH-HZ"><constant>DTV_BANDWIDTH_HZ</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-INVERSION"><constant>DTV_INVERSION</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-CODE-RATE-HP"><constant>DTV_CODE_RATE_HP</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-CODE-RATE-LP"><constant>DTV_CODE_RATE_LP</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-GUARD-INTERVAL"><constant>DTV_GUARD_INTERVAL</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-TRANSMISSION-MODE"><constant>DTV_TRANSMISSION_MODE</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-HIERARCHY"><constant>DTV_HIERARCHY</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-LNA"><constant>DTV_LNA</constant></link></para></listitem>
+                       </itemizedlist>
+                       <para>In addition, the <link linkend="frontend-stat-properties">DTV QoS statistics</link> are also valid.</para>
+               </section>
+               <section id="dvbt2-params">
+                       <title>DVB-T2 delivery system</title>
+                       <para>DVB-T2 support is currently in the early stages
+                       of development, so expect that this section maygrow and become
+                       more detailed with time.</para>
+               <para>The following parameters are valid for DVB-T2:</para>
+               <itemizedlist mark='opencircle'>
+                       <listitem><para><link linkend="DTV-API-VERSION"><constant>DTV_API_VERSION</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-DELIVERY-SYSTEM"><constant>DTV_DELIVERY_SYSTEM</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-TUNE"><constant>DTV_TUNE</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-CLEAR"><constant>DTV_CLEAR</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-FREQUENCY"><constant>DTV_FREQUENCY</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-MODULATION"><constant>DTV_MODULATION</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-BANDWIDTH-HZ"><constant>DTV_BANDWIDTH_HZ</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-INVERSION"><constant>DTV_INVERSION</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-CODE-RATE-HP"><constant>DTV_CODE_RATE_HP</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-CODE-RATE-LP"><constant>DTV_CODE_RATE_LP</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-GUARD-INTERVAL"><constant>DTV_GUARD_INTERVAL</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-TRANSMISSION-MODE"><constant>DTV_TRANSMISSION_MODE</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-HIERARCHY"><constant>DTV_HIERARCHY</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-STREAM-ID"><constant>DTV_STREAM_ID</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-LNA"><constant>DTV_LNA</constant></link></para></listitem>
+               </itemizedlist>
+               <para>In addition, the <link linkend="frontend-stat-properties">DTV QoS statistics</link> are also valid.</para>
+               </section>
+               <section id="isdbt">
+               <title>ISDB-T delivery system</title>
+               <para>This ISDB-T/ISDB-Tsb API extension should reflect all information
+                       needed to tune any ISDB-T/ISDB-Tsb hardware. Of course it is possible
+                       that some very sophisticated devices won't need certain parameters to
+                       tune.</para>
+               <para>The information given here should help application writers to know how
+                       to handle ISDB-T and ISDB-Tsb hardware using the Linux DVB-API.</para>
+               <para>The details given here about ISDB-T and ISDB-Tsb are just enough to
+                       basically show the dependencies between the needed parameter values,
+                       but surely some information is left out. For more detailed information
+                       see the following documents:</para>
+               <para>ARIB STD-B31 - "Transmission System for Digital Terrestrial
+                       Television Broadcasting" and</para>
+               <para>ARIB TR-B14 - "Operational Guidelines for Digital Terrestrial
+                       Television Broadcasting".</para>
+               <para>In order to understand the ISDB specific parameters,
+                       one has to have some knowledge the channel structure in
+                       ISDB-T and ISDB-Tsb. I.e. it has to be known to
+                       the reader that an ISDB-T channel consists of 13 segments,
+                       that it can have up to 3 layer sharing those segments,
+                       and things like that.</para>
+               <para>The following parameters are valid for ISDB-T:</para>
+               <itemizedlist mark='opencircle'>
+                       <listitem><para><link linkend="DTV-API-VERSION"><constant>DTV_API_VERSION</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-DELIVERY-SYSTEM"><constant>DTV_DELIVERY_SYSTEM</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-TUNE"><constant>DTV_TUNE</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-CLEAR"><constant>DTV_CLEAR</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-FREQUENCY"><constant>DTV_FREQUENCY</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-BANDWIDTH-HZ"><constant>DTV_BANDWIDTH_HZ</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-INVERSION"><constant>DTV_INVERSION</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-GUARD-INTERVAL"><constant>DTV_GUARD_INTERVAL</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-TRANSMISSION-MODE"><constant>DTV_TRANSMISSION_MODE</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-ISDBT-LAYER-ENABLED"><constant>DTV_ISDBT_LAYER_ENABLED</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-ISDBT-PARTIAL-RECEPTION"><constant>DTV_ISDBT_PARTIAL_RECEPTION</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-ISDBT-SOUND-BROADCASTING"><constant>DTV_ISDBT_SOUND_BROADCASTING</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-ISDBT-SB-SUBCHANNEL-ID"><constant>DTV_ISDBT_SB_SUBCHANNEL_ID</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-ISDBT-SB-SEGMENT-IDX"><constant>DTV_ISDBT_SB_SEGMENT_IDX</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-ISDBT-SB-SEGMENT-COUNT"><constant>DTV_ISDBT_SB_SEGMENT_COUNT</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-ISDBT-LAYER-FEC"><constant>DTV_ISDBT_LAYERA_FEC</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-ISDBT-LAYER-MODULATION"><constant>DTV_ISDBT_LAYERA_MODULATION</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-ISDBT-LAYER-SEGMENT-COUNT"><constant>DTV_ISDBT_LAYERA_SEGMENT_COUNT</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-ISDBT-LAYER-TIME-INTERLEAVING"><constant>DTV_ISDBT_LAYERA_TIME_INTERLEAVING</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-ISDBT-LAYER-FEC"><constant>DTV_ISDBT_LAYERB_FEC</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-ISDBT-LAYER-MODULATION"><constant>DTV_ISDBT_LAYERB_MODULATION</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-ISDBT-LAYER-SEGMENT-COUNT"><constant>DTV_ISDBT_LAYERB_SEGMENT_COUNT</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-ISDBT-LAYER-TIME-INTERLEAVING"><constant>DTV_ISDBT_LAYERB_TIME_INTERLEAVING</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-ISDBT-LAYER-FEC"><constant>DTV_ISDBT_LAYERC_FEC</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-ISDBT-LAYER-MODULATION"><constant>DTV_ISDBT_LAYERC_MODULATION</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-ISDBT-LAYER-SEGMENT-COUNT"><constant>DTV_ISDBT_LAYERC_SEGMENT_COUNT</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-ISDBT-LAYER-TIME-INTERLEAVING"><constant>DTV_ISDBT_LAYERC_TIME_INTERLEAVING</constant></link></para></listitem>
+               </itemizedlist>
+               <para>In addition, the <link linkend="frontend-stat-properties">DTV QoS statistics</link> are also valid.</para>
+               </section>
+               <section id="atsc-params">
+                       <title>ATSC delivery system</title>
+                       <para>The following parameters are valid for ATSC:</para>
+                       <itemizedlist mark='opencircle'>
+                               <listitem><para><link linkend="DTV-API-VERSION"><constant>DTV_API_VERSION</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-DELIVERY-SYSTEM"><constant>DTV_DELIVERY_SYSTEM</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-TUNE"><constant>DTV_TUNE</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-CLEAR"><constant>DTV_CLEAR</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-FREQUENCY"><constant>DTV_FREQUENCY</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-MODULATION"><constant>DTV_MODULATION</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-BANDWIDTH-HZ"><constant>DTV_BANDWIDTH_HZ</constant></link></para></listitem>
+                       </itemizedlist>
+                       <para>In addition, the <link linkend="frontend-stat-properties">DTV QoS statistics</link> are also valid.</para>
+               </section>
+               <section id="atscmh-params">
+                       <title>ATSC-MH delivery system</title>
+                       <para>The following parameters are valid for ATSC-MH:</para>
+                       <itemizedlist mark='opencircle'>
+                               <listitem><para><link linkend="DTV-API-VERSION"><constant>DTV_API_VERSION</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-DELIVERY-SYSTEM"><constant>DTV_DELIVERY_SYSTEM</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-TUNE"><constant>DTV_TUNE</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-CLEAR"><constant>DTV_CLEAR</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-FREQUENCY"><constant>DTV_FREQUENCY</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-BANDWIDTH-HZ"><constant>DTV_BANDWIDTH_HZ</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-ATSCMH-FIC-VER"><constant>DTV_ATSCMH_FIC_VER</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-ATSCMH-PARADE-ID"><constant>DTV_ATSCMH_PARADE_ID</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-ATSCMH-NOG"><constant>DTV_ATSCMH_NOG</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-ATSCMH-TNOG"><constant>DTV_ATSCMH_TNOG</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-ATSCMH-SGN"><constant>DTV_ATSCMH_SGN</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-ATSCMH-PRC"><constant>DTV_ATSCMH_PRC</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-ATSCMH-RS-FRAME-MODE"><constant>DTV_ATSCMH_RS_FRAME_MODE</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-ATSCMH-RS-FRAME-ENSEMBLE"><constant>DTV_ATSCMH_RS_FRAME_ENSEMBLE</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-ATSCMH-RS-CODE-MODE-PRI"><constant>DTV_ATSCMH_RS_CODE_MODE_PRI</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-ATSCMH-RS-CODE-MODE-SEC"><constant>DTV_ATSCMH_RS_CODE_MODE_SEC</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-ATSCMH-SCCC-BLOCK-MODE"><constant>DTV_ATSCMH_SCCC_BLOCK_MODE</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-ATSCMH-SCCC-CODE-MODE-A"><constant>DTV_ATSCMH_SCCC_CODE_MODE_A</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-ATSCMH-SCCC-CODE-MODE-B"><constant>DTV_ATSCMH_SCCC_CODE_MODE_B</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-ATSCMH-SCCC-CODE-MODE-C"><constant>DTV_ATSCMH_SCCC_CODE_MODE_C</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-ATSCMH-SCCC-CODE-MODE-D"><constant>DTV_ATSCMH_SCCC_CODE_MODE_D</constant></link></para></listitem>
+                       </itemizedlist>
+                       <para>In addition, the <link linkend="frontend-stat-properties">DTV QoS statistics</link> are also valid.</para>
+               </section>
+               <section id="dtmb-params">
+                       <title>DTMB delivery system</title>
+                       <para>The following parameters are valid for DTMB:</para>
+                       <itemizedlist mark='opencircle'>
+                               <listitem><para><link linkend="DTV-API-VERSION"><constant>DTV_API_VERSION</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-DELIVERY-SYSTEM"><constant>DTV_DELIVERY_SYSTEM</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-TUNE"><constant>DTV_TUNE</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-CLEAR"><constant>DTV_CLEAR</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-FREQUENCY"><constant>DTV_FREQUENCY</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-MODULATION"><constant>DTV_MODULATION</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-BANDWIDTH-HZ"><constant>DTV_BANDWIDTH_HZ</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-INVERSION"><constant>DTV_INVERSION</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-INNER-FEC"><constant>DTV_INNER_FEC</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-GUARD-INTERVAL"><constant>DTV_GUARD_INTERVAL</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-TRANSMISSION-MODE"><constant>DTV_TRANSMISSION_MODE</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-INTERLEAVING"><constant>DTV_INTERLEAVING</constant></link></para></listitem>
+                               <listitem><para><link linkend="DTV-LNA"><constant>DTV_LNA</constant></link></para></listitem>
+                       </itemizedlist>
+                       <para>In addition, the <link linkend="frontend-stat-properties">DTV QoS statistics</link> are also valid.</para>
+               </section>
+       </section>
+       <section id="frontend-property-cable-systems">
+       <title>Properties used on cable delivery systems</title>
+       <section id="dvbc-params">
+               <title>DVB-C delivery system</title>
+               <para>The DVB-C Annex-A is the widely used cable standard. Transmission uses QAM modulation.</para>
+               <para>The DVB-C Annex-C is optimized for 6MHz, and is used in Japan. It supports a subset of the Annex A modulation types, and a roll-off of 0.13, instead of 0.15</para>
+               <para>The following parameters are valid for DVB-C Annex A/C:</para>
+               <itemizedlist mark='opencircle'>
+                       <listitem><para><link linkend="DTV-API-VERSION"><constant>DTV_API_VERSION</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-DELIVERY-SYSTEM"><constant>DTV_DELIVERY_SYSTEM</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-TUNE"><constant>DTV_TUNE</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-CLEAR"><constant>DTV_CLEAR</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-FREQUENCY"><constant>DTV_FREQUENCY</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-MODULATION"><constant>DTV_MODULATION</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-INVERSION"><constant>DTV_INVERSION</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-SYMBOL-RATE"><constant>DTV_SYMBOL_RATE</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-INNER-FEC"><constant>DTV_INNER_FEC</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-LNA"><constant>DTV_LNA</constant></link></para></listitem>
+               </itemizedlist>
+               <para>In addition, the <link linkend="frontend-stat-properties">DTV QoS statistics</link> are also valid.</para>
+       </section>
+       <section id="dvbc-annex-b-params">
+               <title>DVB-C Annex B delivery system</title>
+               <para>The DVB-C Annex-B is only used on a few Countries like the United States.</para>
+               <para>The following parameters are valid for DVB-C Annex B:</para>
+               <itemizedlist mark='opencircle'>
+                       <listitem><para><link linkend="DTV-API-VERSION"><constant>DTV_API_VERSION</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-DELIVERY-SYSTEM"><constant>DTV_DELIVERY_SYSTEM</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-TUNE"><constant>DTV_TUNE</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-CLEAR"><constant>DTV_CLEAR</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-FREQUENCY"><constant>DTV_FREQUENCY</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-MODULATION"><constant>DTV_MODULATION</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-INVERSION"><constant>DTV_INVERSION</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-LNA"><constant>DTV_LNA</constant></link></para></listitem>
+               </itemizedlist>
+               <para>In addition, the <link linkend="frontend-stat-properties">DTV QoS statistics</link> are also valid.</para>
+       </section>
+       </section>
+       <section id="frontend-property-satellital-systems">
+       <title>Properties used on satellital delivery systems</title>
+       <section id="dvbs-params">
+               <title>DVB-S delivery system</title>
+               <para>The following parameters are valid for DVB-S:</para>
+               <itemizedlist mark='opencircle'>
+                       <listitem><para><link linkend="DTV-API-VERSION"><constant>DTV_API_VERSION</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-DELIVERY-SYSTEM"><constant>DTV_DELIVERY_SYSTEM</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-TUNE"><constant>DTV_TUNE</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-CLEAR"><constant>DTV_CLEAR</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-FREQUENCY"><constant>DTV_FREQUENCY</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-INVERSION"><constant>DTV_INVERSION</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-SYMBOL-RATE"><constant>DTV_SYMBOL_RATE</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-INNER-FEC"><constant>DTV_INNER_FEC</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-VOLTAGE"><constant>DTV_VOLTAGE</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-TONE"><constant>DTV_TONE</constant></link></para></listitem>
+               </itemizedlist>
+               <para>In addition, the <link linkend="frontend-stat-properties">DTV QoS statistics</link> are also valid.</para>
+               <para>Future implementations might add those two missing parameters:</para>
+               <itemizedlist mark='opencircle'>
+                       <listitem><para><link linkend="DTV-DISEQC-MASTER"><constant>DTV_DISEQC_MASTER</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-DISEQC-SLAVE-REPLY"><constant>DTV_DISEQC_SLAVE_REPLY</constant></link></para></listitem>
+               </itemizedlist>
+       </section>
+       <section id="dvbs2-params">
+               <title>DVB-S2 delivery system</title>
+               <para>In addition to all parameters valid for DVB-S, DVB-S2 supports the following parameters:</para>
+               <itemizedlist mark='opencircle'>
+                       <listitem><para><link linkend="DTV-MODULATION"><constant>DTV_MODULATION</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-PILOT"><constant>DTV_PILOT</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-ROLLOFF"><constant>DTV_ROLLOFF</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-STREAM-ID"><constant>DTV_STREAM_ID</constant></link></para></listitem>
+               </itemizedlist>
+               <para>In addition, the <link linkend="frontend-stat-properties">DTV QoS statistics</link> are also valid.</para>
+       </section>
+       <section id="turbo-params">
+               <title>Turbo code delivery system</title>
+               <para>In addition to all parameters valid for DVB-S, turbo code supports the following parameters:</para>
+               <itemizedlist mark='opencircle'>
+                       <listitem><para><link linkend="DTV-MODULATION"><constant>DTV_MODULATION</constant></link></para></listitem>
+               </itemizedlist>
+       </section>
+       <section id="isdbs-params">
+               <title>ISDB-S delivery system</title>
+               <para>The following parameters are valid for ISDB-S:</para>
+               <itemizedlist mark='opencircle'>
+                       <listitem><para><link linkend="DTV-API-VERSION"><constant>DTV_API_VERSION</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-DELIVERY-SYSTEM"><constant>DTV_DELIVERY_SYSTEM</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-TUNE"><constant>DTV_TUNE</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-CLEAR"><constant>DTV_CLEAR</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-FREQUENCY"><constant>DTV_FREQUENCY</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-INVERSION"><constant>DTV_INVERSION</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-SYMBOL-RATE"><constant>DTV_SYMBOL_RATE</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-INNER-FEC"><constant>DTV_INNER_FEC</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-VOLTAGE"><constant>DTV_VOLTAGE</constant></link></para></listitem>
+                       <listitem><para><link linkend="DTV-STREAM-ID"><constant>DTV_STREAM_ID</constant></link></para></listitem>
+               </itemizedlist>
+       </section>
+       </section>
+</section>