[linux-dvb] [RFC|PATCH] support DVB-S2 new inner fec modes [update]

Johannes Stezenbach js at linuxtv.org
Tue Nov 22 23:40:14 CET 2005


On Tue, Nov 22, 2005, Marcel Siegert wrote:
> > > hi,
> > > 
> > > as dvb-s2 will come along shortly we should be prepared.
> > > 
> > > this is a first patch within a series that will appear to support 
> > > dvb-s2 within the different apis.
> > > 
> > > it just adds the new fec modes and the dvb-s2 rollflag enums.
> > > 
> > > enumeration value from the fe_caps definition and adjusted all values.
> > > applications must be recompiled. this is imho fine.
> changed, new values added to FREE values for keeping binary compatibility.
> > > if we want to keep binary compatibility we can not ask the frontend if it is capable of the 
> > > new modes - thus support would be impossible then.
> even if changed, if more values do come up, there will be a break _OR_
> we must provide a kind of FE_CAN_DVBS2 value and have 
> another enumeration for the FE_CAN_<FILL_IN_DVBS2_FEATURE>
> and addtional ioctls or extending info structs ...

So far so good, but we should IMHO not commit partial solutions.
I think we should bang out the complete API, with the part which
Felix mentions in his posting. and commit it as one API change.

Johannes


> --- linuxtvanon/dvb-kernel/linux/include/linux/dvb/frontend.h	2005-11-22 20:39:51.201703750 +0100
> +++ linuxtv/dvb-kernel/linux/include/linux/dvb/frontend.h	2005-11-22 21:40:47.847872500 +0100
> @@ -62,6 +62,9 @@
>  	FE_CAN_HIERARCHY_AUTO		= 0x100000,
>  	FE_CAN_8VSB			= 0x200000,
>  	FE_CAN_16VSB			= 0x400000,
> +	FE_CAN_FEC_3_5			= 0x1000000,
> +	FE_CAN_FEC_4_5			= 0x2000000,
> +	FE_CAN_FEC_9_10			= 0x4000000,
>  	FE_NEEDS_BENDING		= 0x20000000, // not supported anymore, don't use (frontend requires frequency bending)
>  	FE_CAN_RECOVER			= 0x40000000, // frontend can recover from a cable unplug automatically
>  	FE_CAN_MUTE_TS			= 0x80000000  // frontend can stop spurious TS data output
> @@ -147,7 +150,10 @@
>  	FEC_6_7,
>  	FEC_7_8,
>  	FEC_8_9,
> -	FEC_AUTO
> +	FEC_AUTO,
> +	FEC_3_5,
> +	FEC_4_5,
> +	FEC_9_10
>  } fe_code_rate_t;
>  
>  
> @@ -163,6 +169,13 @@
>  	VSB_16
>  } fe_modulation_t;
>  
> +
> +typedef enum fe_rolloff_flag {
> +	ROLLOFF_ALPHA_0_35,
> +	ROLLOFF_ALPHA_0_25,
> +	ROLLOFF_ALPHA_0_20
> +} fe_rolloff_flag_t;
> +
>  typedef enum fe_transmit_mode {
>  	TRANSMISSION_MODE_2K,
>  	TRANSMISSION_MODE_8K,

> _______________________________________________
> linux-dvb mailing list
> linux-dvb at linuxtv.org
> http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb



More information about the linux-dvb mailing list