Extend the DVB frontend parameter enums with additional values specified by the DVB-C2 (ETSI EN 302 769) and DVB-S2X (ETSI EN 302 307-2) standards to be ready for frontend drivers for such receivers. While most parameters will be "read-only" due to being autodetected by the receiver and only being reported back for informational purposes, the addition of SYS_DVBC2 to the delivery systems enum is required, because there are DVB-C2 capable receivers which are not capable of DVB-C/C2 autodetection and thus need this enum value to be explicitly instructed to search for a DVB-C2 signal. As for DVB-S2X, as that is an extension to DVB-S2, the same delivery system enum as for DVB-S2 can be used. Add the additional enum values and comments to the documentation.
Unified · Split
| @@ -89,16 +89,21 @@ ATSC (version 1) 8-VSB and 16-VSB. · 88 unmodified lines | ||
| 89 | 89 | DMTB 4-QAM, 16-QAM, 32-QAM, 64-QAM and 4-QAM-NR. |
| 90 | 90 | DVB-C Annex A/C 16-QAM, 32-QAM, 64-QAM and 256-QAM. |
| 91 | 91 | DVB-C Annex B 64-QAM. |
| 92 | +DVB-C2 QPSK, 16-QAM, 64-QAM, 256-QAM, 1024-QAM and 4096-QAM. | |
| 92 | 93 | DVB-T QPSK, 16-QAM and 64-QAM. |
| 93 | 94 | DVB-T2 QPSK, 16-QAM, 64-QAM and 256-QAM. |
| 94 | 95 | DVB-S No need to set. It supports only QPSK. |
| 95 | 96 | DVB-S2 QPSK, 8-PSK, 16-APSK and 32-APSK. |
| 97 | +DVB-S2X 8-APSK-L, 16-APSK-L, 32-APSK-L, 64-APSK and 64-APSK-L. | |
| 96 | 98 | ISDB-T QPSK, DQPSK, 16-QAM and 64-QAM. |
| 97 | 99 | ISDB-S 8-PSK, QPSK and BPSK. |
| 98 | 100 | ======================= ======================================================= |
| 99 | 101 | |
| 100 | 102 | .. note:: |
| 101 | 103 | |
| 104 | + As DVB-S2X specifies extensions to the DVB-S2 standard, the same | |
| 105 | + delivery system enum value is used (SYS_DVBS2). | |
| 106 | + | |
| 102 | 107 | Please notice that some of the above modulation types may not be |
| 103 | 108 | defined currently at the Kernel. The reason is simple: no driver |
| 104 | 109 | needed such definition yet. |
| @@ -854,9 +859,10 @@ The acceptable values are defined by :c:type:`fe_guard_interval`. · 749 unmodified lines | ||
| 854 | 859 | #. If ``DTV_GUARD_INTERVAL`` is set the ``GUARD_INTERVAL_AUTO`` the |
| 855 | 860 | hardware will try to find the correct guard interval (if capable) and |
| 856 | 861 | will use TMCC to fill in the missing parameters. |
| 857 | − #. Intervals ``GUARD_INTERVAL_1_128``, ``GUARD_INTERVAL_19_128`` | |
| 858 | − and ``GUARD_INTERVAL_19_256`` are used only for DVB-T2 at | |
| 859 | − present. | |
| 862 | + #. Interval ``GUARD_INTERVAL_1_64`` is used only for DVB-C2. | |
| 863 | + #. Interval ``GUARD_INTERVAL_1_128`` is used for both DVB-C2 and DVB_T2. | |
| 864 | + #. Intervals ``GUARD_INTERVAL_19_128`` and ``GUARD_INTERVAL_19_256`` are | |
| 865 | + used only for DVB-T2. | |
| 860 | 866 | #. Intervals ``GUARD_INTERVAL_PN420``, ``GUARD_INTERVAL_PN595`` and |
| 861 | 867 | ``GUARD_INTERVAL_PN945`` are used only for DMTB at the present. |
| 862 | 868 | On such standard, only those intervals and ``GUARD_INTERVAL_AUTO`` |
| @@ -916,14 +922,15 @@ The acceptable values are defined by :c:type:`fe_hierarchy`. · 53 unmodified lines | ||
| 916 | 922 | DTV_STREAM_ID |
| 917 | 923 | ============= |
| 918 | 924 | |
| 919 | −Used on DVB-S2, DVB-T2 and ISDB-S. | |
| 925 | +Used on DVB-C2, DVB-S2, DVB-T2 and ISDB-S. | |
| 920 | 926 | |
| 921 | −DVB-S2, DVB-T2 and ISDB-S support the transmission of several streams on | |
| 922 | −a single transport stream. This property enables the digital TV driver to | |
| 923 | −handle substream filtering, when supported by the hardware. By default, | |
| 924 | −substream filtering is disabled. | |
| 927 | +DVB-C2, DVB-S2, DVB-T2 and ISDB-S support the transmission of several | |
| 928 | +streams on a single transport stream. This property enables the digital | |
| 929 | +TV driver to handle substream filtering, when supported by the hardware. | |
| 930 | +By default, substream filtering is disabled. | |
| 925 | 931 | |
| 926 | −For DVB-S2 and DVB-T2, the valid substream id range is from 0 to 255. | |
| 932 | +For DVB-C2, DVB-S2 and DVB-T2, the valid substream id range is from 0 to | |
| 933 | +255. | |
| 927 | 934 | |
| 928 | 935 | For ISDB, the valid substream id range is from 1 to 65535. |
| 929 | 936 | |
| @@ -296,6 +296,22 @@ enum fe_spectral_inversion { · 295 unmodified lines | ||
| 296 | 296 | * @FEC_3_5: Forward Error Correction Code 3/5 |
| 297 | 297 | * @FEC_9_10: Forward Error Correction Code 9/10 |
| 298 | 298 | * @FEC_2_5: Forward Error Correction Code 2/5 |
| 299 | + * @FEC_1_3: Forward Error Correction Code 1/3 | |
| 300 | + * @FEC_1_4: Forward Error Correction Code 1/4 | |
| 301 | + * @FEC_5_9: Forward Error Correction Code 5/9 | |
| 302 | + * @FEC_7_9: Forward Error Correction Code 7/9 | |
| 303 | + * @FEC_8_15: Forward Error Correction Code 8/15 | |
| 304 | + * @FEC_11_15: Forward Error Correction Code 11/15 | |
| 305 | + * @FEC_13_18: Forward Error Correction Code 13/18 | |
| 306 | + * @FEC_9_20: Forward Error Correction Code 9/20 | |
| 307 | + * @FEC_11_20: Forward Error Correction Code 11/20 | |
| 308 | + * @FEC_23_36: Forward Error Correction Code 23/36 | |
| 309 | + * @FEC_25_36: Forward Error Correction Code 25/36 | |
| 310 | + * @FEC_13_45: Forward Error Correction Code 13/45 | |
| 311 | + * @FEC_26_45: Forward Error Correction Code 26/45 | |
| 312 | + * @FEC_28_45: Forward Error Correction Code 28/45 | |
| 313 | + * @FEC_32_45: Forward Error Correction Code 32/45 | |
| 314 | + * @FEC_77_90: Forward Error Correction Code 77/90 | |
| 299 | 315 | * |
| 300 | 316 | * Please note that not all FEC types are supported by a given standard. |
| 301 | 317 | */ |
| @@ -313,6 +329,22 @@ enum fe_code_rate { · 11 unmodified lines | ||
| 313 | 329 | FEC_3_5, |
| 314 | 330 | FEC_9_10, |
| 315 | 331 | FEC_2_5, |
| 332 | + FEC_1_3, | |
| 333 | + FEC_1_4, | |
| 334 | + FEC_5_9, | |
| 335 | + FEC_7_9, | |
| 336 | + FEC_8_15, | |
| 337 | + FEC_11_15, | |
| 338 | + FEC_13_18, | |
| 339 | + FEC_9_20, | |
| 340 | + FEC_11_20, | |
| 341 | + FEC_23_36, | |
| 342 | + FEC_25_36, | |
| 343 | + FEC_13_45, | |
| 344 | + FEC_26_45, | |
| 345 | + FEC_28_45, | |
| 346 | + FEC_32_45, | |
| 347 | + FEC_77_90, | |
| 316 | 348 | }; |
| 317 | 349 | |
| 318 | 350 | /** |
| @@ -331,6 +363,13 @@ enum fe_code_rate { · 12 unmodified lines | ||
| 331 | 363 | * @APSK_32: 32-APSK modulation |
| 332 | 364 | * @DQPSK: DQPSK modulation |
| 333 | 365 | * @QAM_4_NR: 4-QAM-NR modulation |
| 366 | + * @QAM-1024: 1024-QAM modulation | |
| 367 | + * @QAM-4096: 4096-QAM modulation | |
| 368 | + * @APSK_8_L: 8APSK-L modulation | |
| 369 | + * @APSK_16_L: 16APSK-L modulation | |
| 370 | + * @APSK_32_L: 32APSK-L modulation | |
| 371 | + * @APSK_64: 64APSK modulation | |
| 372 | + * @APSK_64_L: 64APSK-L modulation | |
| 334 | 373 | * |
| 335 | 374 | * Please note that not all modulations are supported by a given standard. |
| 336 | 375 | * |
| @@ -350,6 +389,13 @@ enum fe_modulation { · 13 unmodified lines | ||
| 350 | 389 | APSK_32, |
| 351 | 390 | DQPSK, |
| 352 | 391 | QAM_4_NR, |
| 392 | + QAM_1024, | |
| 393 | + QAM_4096, | |
| 394 | + APSK_8_L, | |
| 395 | + APSK_16_L, | |
| 396 | + APSK_32_L, | |
| 397 | + APSK_64, | |
| 398 | + APSK_64_L, | |
| 353 | 399 | }; |
| 354 | 400 | |
| 355 | 401 | /** |
| @@ -404,6 +450,7 @@ enum fe_transmit_mode { · 48 unmodified lines | ||
| 404 | 450 | * @GUARD_INTERVAL_PN420: PN length 420 (1/4) |
| 405 | 451 | * @GUARD_INTERVAL_PN595: PN length 595 (1/6) |
| 406 | 452 | * @GUARD_INTERVAL_PN945: PN length 945 (1/9) |
| 453 | + * @GUARD_INTERVAL_1_64: Guard interval 1/64 | |
| 407 | 454 | * |
| 408 | 455 | * Please note that not all guard intervals are supported by a given standard. |
| 409 | 456 | */ |
| @@ -419,6 +466,7 @@ enum fe_guard_interval { · 9 unmodified lines | ||
| 419 | 466 | GUARD_INTERVAL_PN420, |
| 420 | 467 | GUARD_INTERVAL_PN595, |
| 421 | 468 | GUARD_INTERVAL_PN945, |
| 469 | + GUARD_INTERVAL_1_64, | |
| 422 | 470 | }; |
| 423 | 471 | |
| 424 | 472 | /** |
| @@ -571,6 +619,9 @@ enum fe_pilot { · 146 unmodified lines | ||
| 571 | 619 | * @ROLLOFF_20: Roloff factor: α=20% |
| 572 | 620 | * @ROLLOFF_25: Roloff factor: α=25% |
| 573 | 621 | * @ROLLOFF_AUTO: Auto-detect the roloff factor. |
| 622 | + * @ROLLOFF_15: Rolloff factor: α=15% | |
| 623 | + * @ROLLOFF_10: Rolloff factor: α=10% | |
| 624 | + * @ROLLOFF_5: Rolloff factor: α=5% | |
| 574 | 625 | * |
| 575 | 626 | * .. note: |
| 576 | 627 | * |
| @@ -581,6 +632,9 @@ enum fe_rolloff { · 4 unmodified lines | ||
| 581 | 632 | ROLLOFF_20, |
| 582 | 633 | ROLLOFF_25, |
| 583 | 634 | ROLLOFF_AUTO, |
| 635 | + ROLLOFF_15, | |
| 636 | + ROLLOFF_10, | |
| 637 | + ROLLOFF_5, | |
| 584 | 638 | }; |
| 585 | 639 | |
| 586 | 640 | /** |
| @@ -594,6 +648,8 @@ enum fe_rolloff { · 7 unmodified lines | ||
| 594 | 648 | * Cable TV: DVB-C following ITU-T J.83 Annex B spec (ClearQAM) |
| 595 | 649 | * @SYS_DVBC_ANNEX_C: |
| 596 | 650 | * Cable TV: DVB-C following ITU-T J.83 Annex C spec |
| 651 | + * @SYS_DVBC2: | |
| 652 | + * Cable TV: DVB-C2 | |
| 597 | 653 | * @SYS_ISDBC: |
| 598 | 654 | * Cable TV: ISDB-C (no drivers yet) |
| 599 | 655 | * @SYS_DVBT: |
| @@ -611,7 +667,7 @@ enum fe_rolloff { · 11 unmodified lines | ||
| 611 | 667 | * @SYS_DVBS: |
| 612 | 668 | * Satellite TV: DVB-S |
| 613 | 669 | * @SYS_DVBS2: |
| 614 | − * Satellite TV: DVB-S2 | |
| 670 | + * Satellite TV: DVB-S2 and DVB-S2X | |
| 615 | 671 | * @SYS_TURBO: |
| 616 | 672 | * Satellite TV: DVB-S Turbo |
| 617 | 673 | * @SYS_ISDBS: |
| @@ -645,6 +701,7 @@ enum fe_delivery_system { · 27 unmodified lines | ||
| 645 | 701 | SYS_DVBT2, |
| 646 | 702 | SYS_TURBO, |
| 647 | 703 | SYS_DVBC_ANNEX_C, |
| 704 | + SYS_DVBC2, | |
| 648 | 705 | }; |
| 649 | 706 | |
| 650 | 707 | /* backward compatibility definitions for delivery systems */ |