Em Tue, 13 Mar 2018 23:18:03 +0100
Daniel Scheller <d.scheller....@gmail.com> escreveu:

> From: Daniel Scheller <d.schel...@gmx.net>
> 
> Additional enums:
>  * FEC ratios 1/4 and 1/3
>  * 64/128/256-APSK modulations (DVB-S2X)
>  * 15%, 10% and 5% rolloff factors (DVB-S2X)
>  * 64K transmission mode (DVB-T2)
> 
> Add these enums to the frontend.h docs exceptions aswell (uapi docs are
> updated separately).
> 
> Also, bump the DVB API version to 5.12 to make userspace aware of these
> new enums.

Series look good, except for one detail: how userspace would know if
a device supports S2(X) or not?

> 
> Signed-off-by: Daniel Scheller <d.schel...@gmx.net>
> ---
> v2 to v3:
> - All new enum patches squashed into one commit
> - DVB API bump to 5.12
> 
> Please take note of some additional things in the cover letter.
> 
>  Documentation/media/frontend.h.rst.exceptions |  9 +++++++++
>  drivers/media/dvb-core/dvb_frontend.c         |  9 +++++++++
>  include/uapi/linux/dvb/frontend.h             | 29 
> ++++++++++++++++++++++-----
>  include/uapi/linux/dvb/version.h              |  2 +-
>  4 files changed, 43 insertions(+), 6 deletions(-)
> 
> diff --git a/Documentation/media/frontend.h.rst.exceptions 
> b/Documentation/media/frontend.h.rst.exceptions
> index f7c4df620a52..c1643ce93426 100644
> --- a/Documentation/media/frontend.h.rst.exceptions
> +++ b/Documentation/media/frontend.h.rst.exceptions
> @@ -84,6 +84,9 @@ ignore symbol APSK_16
>  ignore symbol APSK_32
>  ignore symbol DQPSK
>  ignore symbol QAM_4_NR
> +ignore symbol APSK_64
> +ignore symbol APSK_128
> +ignore symbol APSK_256
>  
>  ignore symbol SEC_VOLTAGE_13
>  ignore symbol SEC_VOLTAGE_18
> @@ -117,6 +120,8 @@ ignore symbol FEC_AUTO
>  ignore symbol FEC_3_5
>  ignore symbol FEC_9_10
>  ignore symbol FEC_2_5
> +ignore symbol FEC_1_4
> +ignore symbol FEC_1_3
>  
>  ignore symbol TRANSMISSION_MODE_AUTO
>  ignore symbol TRANSMISSION_MODE_1K
> @@ -129,6 +134,7 @@ ignore symbol TRANSMISSION_MODE_C1
>  ignore symbol TRANSMISSION_MODE_C3780
>  ignore symbol TRANSMISSION_MODE_2K
>  ignore symbol TRANSMISSION_MODE_8K
> +ignore symbol TRANSMISSION_MODE_64K
>  
>  ignore symbol GUARD_INTERVAL_AUTO
>  ignore symbol GUARD_INTERVAL_1_128
> @@ -161,6 +167,9 @@ ignore symbol ROLLOFF_35
>  ignore symbol ROLLOFF_20
>  ignore symbol ROLLOFF_25
>  ignore symbol ROLLOFF_AUTO
> +ignore symbol ROLLOFF_15
> +ignore symbol ROLLOFF_10
> +ignore symbol ROLLOFF_5
>  
>  ignore symbol INVERSION_ON
>  ignore symbol INVERSION_OFF
> diff --git a/drivers/media/dvb-core/dvb_frontend.c 
> b/drivers/media/dvb-core/dvb_frontend.c
> index a7ed16e0841d..52c76e32f864 100644
> --- a/drivers/media/dvb-core/dvb_frontend.c
> +++ b/drivers/media/dvb-core/dvb_frontend.c
> @@ -2183,6 +2183,15 @@ static int dtv_set_frontend(struct dvb_frontend *fe)
>               break;
>       case SYS_DVBS2:
>               switch (c->rolloff) {
> +             case ROLLOFF_5:
> +                     rolloff = 105;
> +                     break;
> +             case ROLLOFF_10:
> +                     rolloff = 110;
> +                     break;
> +             case ROLLOFF_15:
> +                     rolloff = 115;
> +                     break;
>               case ROLLOFF_20:
>                       rolloff = 120;
>                       break;
> diff --git a/include/uapi/linux/dvb/frontend.h 
> b/include/uapi/linux/dvb/frontend.h
> index 4f9b4551c534..8bf1c63627a2 100644
> --- a/include/uapi/linux/dvb/frontend.h
> +++ b/include/uapi/linux/dvb/frontend.h
> @@ -296,6 +296,8 @@ enum fe_spectral_inversion {
>   * @FEC_3_5:  Forward Error Correction Code 3/5
>   * @FEC_9_10: Forward Error Correction Code 9/10
>   * @FEC_2_5:  Forward Error Correction Code 2/5
> + * @FEC_1_4:  Forward Error Correction Code 1/4
> + * @FEC_1_3:  Forward Error Correction Code 1/3
>   *
>   * Please note that not all FEC types are supported by a given standard.
>   */
> @@ -313,6 +315,8 @@ enum fe_code_rate {
>       FEC_3_5,
>       FEC_9_10,
>       FEC_2_5,
> +     FEC_1_4,
> +     FEC_1_3,
>  };
>  
>  /**
> @@ -331,6 +335,9 @@ enum fe_code_rate {
>   * @APSK_32: 32-APSK modulation
>   * @DQPSK:   DQPSK modulation
>   * @QAM_4_NR:        4-QAM-NR modulation
> + * @APSK_64: 64-APSK modulation
> + * @APSK_128:        128-APSK modulation
> + * @APSK_256:        256-APSK modulation
>   *
>   * Please note that not all modulations are supported by a given standard.
>   *
> @@ -350,6 +357,9 @@ enum fe_modulation {
>       APSK_32,
>       DQPSK,
>       QAM_4_NR,
> +     APSK_64,
> +     APSK_128,
> +     APSK_256,
>  };
>  
>  /**
> @@ -374,6 +384,8 @@ enum fe_modulation {
>   *   Single Carrier (C=1) transmission mode (DTMB only)
>   * @TRANSMISSION_MODE_C3780:
>   *   Multi Carrier (C=3780) transmission mode (DTMB only)
> + * @TRANSMISSION_MODE_64K:
> + *   Transmission mode 64K
>   *
>   * Please note that not all transmission modes are supported by a given
>   * standard.
> @@ -388,6 +400,7 @@ enum fe_transmit_mode {
>       TRANSMISSION_MODE_32K,
>       TRANSMISSION_MODE_C1,
>       TRANSMISSION_MODE_C3780,
> +     TRANSMISSION_MODE_64K,
>  };
>  
>  /**
> @@ -567,20 +580,26 @@ enum fe_pilot {
>  
>  /**
>   * enum fe_rolloff - Rolloff factor
> - * @ROLLOFF_35:              Roloff factor: α=35%
> - * @ROLLOFF_20:              Roloff factor: α=20%
> - * @ROLLOFF_25:              Roloff factor: α=25%
> - * @ROLLOFF_AUTO:    Auto-detect the roloff factor.
> + * @ROLLOFF_35:              Rolloff factor: α=35%
> + * @ROLLOFF_20:              Rolloff factor: α=20%
> + * @ROLLOFF_25:              Rolloff factor: α=25%
> + * @ROLLOFF_AUTO:    Auto-detect the rolloff factor.
> + * @ROLLOFF_15:              Rolloff factor: α=15%
> + * @ROLLOFF_10:              Rolloff factor: α=10%
> + * @ROLLOFF_5:               Rolloff factor: α=5%
>   *
>   * .. note:
>   *
> - *    Roloff factor of 35% is implied on DVB-S. On DVB-S2, it is default.
> + *    Rolloff factor of 35% is implied on DVB-S. On DVB-S2, it is default.
>   */
>  enum fe_rolloff {
>       ROLLOFF_35,
>       ROLLOFF_20,
>       ROLLOFF_25,
>       ROLLOFF_AUTO,
> +     ROLLOFF_15,
> +     ROLLOFF_10,
> +     ROLLOFF_5,
>  };
>  
>  /**
> diff --git a/include/uapi/linux/dvb/version.h 
> b/include/uapi/linux/dvb/version.h
> index 2c5cffe6d2a0..204d39b82039 100644
> --- a/include/uapi/linux/dvb/version.h
> +++ b/include/uapi/linux/dvb/version.h
> @@ -25,6 +25,6 @@
>  #define _DVBVERSION_H_
>  
>  #define DVB_API_VERSION 5
> -#define DVB_API_VERSION_MINOR 11
> +#define DVB_API_VERSION_MINOR 12
>  
>  #endif /*_DVBVERSION_H_*/



Thanks,
Mauro

Reply via email to