-------- Original Message -------- Subject: Re: [PATCH] Multi protocol support (stage #1) Date: Thu, 27 Apr 2006 10:33:38 +0200 (CEST) From: Patrick Boettcher <patrick.boettcher@xxxxxxx> To: Manu Abraham <abraham.manu@xxxxxxxxx> CC: linux-dvb <linux-dvb@xxxxxxxxxxx> References: <444E17BA.4070805@xxxxxxxxx> Hi Manu, linuxtv seems to be down currently, would you please bounce my answer in that case. On Tue, 25 Apr 2006, Manu Abraham wrote:
Hi All, Revised patch again.
+enum fe_stream { + FE_STREAM_HP = 0x00000001, + FE_STREAM_LP = 0x00000002 +}; [..] +enum fe_bandwidths { + FE_BANDWIDTH_QUERY = 0x00000000, + FE_BANDWIDTH_8_MHZ = 0x00000001, + FE_BANDWIDTH_7_MHZ = 0x00000002, + FE_BANDWIDTH_6_MHZ = 0x00000004, + FE_BANDWIDTH_AUTO = 0x10000000 +}; In DVB-H other bandwidth can be used. IMHO, it would be more useful to specify the bandwidth in MHz, instead of have defines. +enum fe_inversion { + FE_INVERSION_QUERY = 0x00000000, + FE_INVERSION_OFF = 0x00000001, + FE_INVERSION_ON = 0x00000002, + FE_INVERSION_AUTO = 0x10000000 +}; Afaik, at least for DVB-T/H, Inversion is not a real tuning parameter. There is not reason for a broadcaster to send the inverted spectrum... the inversion-switch I saw so, was always only because of the tuner-output. So in fact the inversion differences have been caused by different designs.
From the tuning point of view inversion should be always AUTO.
+enum fe_hierarchy_info { + FE_HIERARCHY_QUERY = 0x00000000, + FE_HIERARCHY_NONE = 0x00000001, + FE_HIERARCHY_1 = 0x00000002, + FE_HIERARCHY_2 = 0x00000004, + FE_HIERARCHY_4 = 0x00000008, + FE_HIERARCHY_AUTO = 0x10000000 +}; Those setting seem to come from a modulator-menu ;). Maybe hierarchy on/off and another parameter alpha is better, or like this: +enum fe_hierarchy_info { + FE_HIERARCHY_QUERY = 0x00000000, + FE_HIERARCHY_OFF = 0x00000001, + FE_HIERARCHY_ON_ALPHA_1 = 0x00000002, + FE_HIERARCHY_ON_ALPHA_2 = 0x00000004, + FE_HIERARCHY_ON_ALPHA_4 = 0x00000008, + FE_HIERARCHY_AUTO = 0x10000000 +}; What do you think? In conjuntion with fe_stream we finally can really use hierarchy mode with linux-dvb. +enum fe_mpefec{ + FE_MPEFEC_ON = 0x00000001, + FE_MPEFEC_OFF = 0x00000002, +}; + +enum fe_timeslicing { + FE_TIMESLICING_ON = 0x00000001, + FE_TIMESLICING_OFF = 0x00000002 +}; Hmm, OK, What about AUTO for timeslicing and mpefec. +/** + * DVB-T parameters + */ +struct dvbt_params { + enum fe_modulations constellation; + enum fe_bandwidths bandwidth; + enum fe_fecrates code_rate_HP; + enum fe_fecrates code_rate_LP; + enum fe_transmit_modes transmission_mode; + enum fe_guard_intervals guard_interval; + enum fe_hierarchy_info hierarchy; +}; + +/** + * DVB-H parameters + */ +struct dvbh_params { + enum fe_modulations constellation; + enum fe_bandwidths bandwidth; + enum fe_fecrates code_rate_HP; + enum fe_fecrates code_rate_LP; + enum fe_transmit_modes transmission_mode; + enum fe_guard_intervals guard_interval; + enum fe_hierarchy_info hierarchy; + enum fe_mpefec mpefec; + enum fe_timeslicing timeslicing; +}; In hierarchy mode, how to select the HP or LP stream? I think for dvbh and dvbt we need to add: + enum fe_stream stream; Default should be always the HP-stream. Sorry for being so short - but vacation is waiting :) best regards, Patrick. -- Mail: patrick.boettcher@xxxxxxx WWW: http://www.wi-bw.tfh-wildau.de/~pboettch/ _______________________________________________ linux-dvb@xxxxxxxxxxx http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb