[linux-dvb] [patch] Add support for different tuning algorithms

Andrew de Quincey adq_dvb at lidskialf.net
Tue Nov 15 14:24:42 CET 2005


On Tuesday 15 Nov 2005 13:13, Andrew de Quincey wrote:
> Hi, this patch allows frontends (and the user) to select from one of
> several different tuning algorithms. The patch adds four possibilities:
>
> 1) SW - the current dvb-kernel software zigzag code.
> 2) HW - the hardware supports zigzagging internally (e.g. DST), so use that
> as it will be faster.
> 3) ADAPTIVE - frontend-specific code exploiting frontend-specific features.
> 4) SIMPLE - just set the frontend once and do nothing else (e.g. for
> frequency scanner apps).

Spotted a slight bug in the code - add the fepriv->state = line as below:

		/* in SIMPLE/HW mode, we just set the frontend when asked and leave it alone 
*/
		if ((fepriv->cur_tune_algo == FE_TUNE_ALGO_SIMPLE) ||
		    (fepriv->cur_tune_algo == FE_TUNE_ALGO_HW)) {
			if (fepriv->state & fepriv->state & FESTATE_RETUNE) {
				if (fe->ops->set_frontend)
					fe->ops->set_frontend(fe, &fepriv->parameters);
				fepriv->state = FESTATE_TUNED;
			}
			delay = 3*HZ;
			quality = 0;
			continue;
		}

Otherwise it'll retune every 3 seconds (which isn't really what we want! :)



More information about the linux-dvb mailing list