diff options
-rw-r--r-- | drivers/media/common/tuners/tuner-simple.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/media/common/tuners/tuner-simple.c b/drivers/media/common/tuners/tuner-simple.c index 1a21191566f5..de7adaf5fa5b 100644 --- a/drivers/media/common/tuners/tuner-simple.c +++ b/drivers/media/common/tuners/tuner-simple.c | |||
@@ -820,6 +820,15 @@ static u32 simple_dvb_configure(struct dvb_frontend *fe, u8 *buf, | |||
820 | int ret; | 820 | int ret; |
821 | unsigned frequency = params->frequency / 62500; | 821 | unsigned frequency = params->frequency / 62500; |
822 | 822 | ||
823 | if (!tun->stepsize) { | ||
824 | /* tuner-core was loaded before the digital tuner was | ||
825 | * configured and somehow picked the wrong tuner type */ | ||
826 | tuner_err("attempt to treat tuner %d (%s) as digital tuner " | ||
827 | "without stepsize defined.\n", | ||
828 | priv->type, priv->tun->name); | ||
829 | return 0; /* failure */ | ||
830 | } | ||
831 | |||
823 | t_params = simple_tuner_params(fe, TUNER_PARAM_TYPE_DIGITAL); | 832 | t_params = simple_tuner_params(fe, TUNER_PARAM_TYPE_DIGITAL); |
824 | ret = simple_config_lookup(fe, t_params, &frequency, &config, &cb); | 833 | ret = simple_config_lookup(fe, t_params, &frequency, &config, &cb); |
825 | if (ret < 0) | 834 | if (ret < 0) |