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@xxxxxxxxxxx > http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb