mirror of https://gitee.com/openkylin/linux.git
V4L/DVB (3277): Use default tuner_params if desired_type not available
If a given tuner definition contains more than one tuner_params array members, it will try to select the appropriate tuner_params based on the video standard in use. If there is no tuner_params defined for the current video standard, it will select the default, tuner_params[0] Signed-off-by: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
This commit is contained in:
parent
4d17d0834a
commit
8f1a58d0fc
|
@ -163,6 +163,10 @@ static void default_set_tv_freq(struct i2c_client *c, unsigned int freq)
|
|||
continue;
|
||||
break;
|
||||
}
|
||||
/* use default tuner_params if desired_type not available */
|
||||
if (desired_type != tun->params[j].type)
|
||||
j = 0;
|
||||
|
||||
for (i = 0; i < tun->params[j].count; i++) {
|
||||
if (freq > tun->params[j].ranges[i].limit)
|
||||
continue;
|
||||
|
@ -340,6 +344,9 @@ static void default_set_radio_freq(struct i2c_client *c, unsigned int freq)
|
|||
continue;
|
||||
break;
|
||||
}
|
||||
/* use default tuner_params if desired_type not available */
|
||||
if (desired_type != tun->params[j].type)
|
||||
j = 0;
|
||||
|
||||
div = (20 * freq / 16000) + (int)(20*10.7); /* IF 10.7 MHz */
|
||||
buffer[2] = (tun->params[j].ranges[0].config & ~TUNER_RATIO_MASK) | TUNER_RATIO_SELECT_50; /* 50 kHz step */
|
||||
|
|
Loading…
Reference in New Issue