diff options
author | Mauro Carvalho Chehab <mchehab@osg.samsung.com> | 2014-11-05 11:20:48 (GMT) |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@osg.samsung.com> | 2014-11-05 11:23:05 (GMT) |
commit | 1011d24a2148f77aaa2d4afc1c0f48e40589d020 (patch) | |
tree | e5e7221f301a0abb82953c9120535ce09825c3aa | |
parent | 3f7991357f6b33c82bf2135725847970ffd2ed83 (diff) | |
download | linux-1011d24a2148f77aaa2d4afc1c0f48e40589d020.tar.xz |
[media] stv090x: Fix delivery system setting
As sparse complains:
drivers/media/dvb-frontends/stv090x.c:3471:30: warning: mixing different enum types
drivers/media/dvb-frontends/stv090x.c:3471:30: int enum fe_delivery_system versus
drivers/media/dvb-frontends/stv090x.c:3471:30: int enum stv090x_delsys
There's actually an error when setting the delivery system on
stv090x_search(): it is using the DVBv5 macros as if they were
the stv090x ones.
Instead, we should convert between the two namespaces, returning
an error if an unsupported delivery system is requested.
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
-rw-r--r-- | drivers/media/dvb-frontends/stv090x.c | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/drivers/media/dvb-frontends/stv090x.c b/drivers/media/dvb-frontends/stv090x.c index 93f4979..f8050b9 100644 --- a/drivers/media/dvb-frontends/stv090x.c +++ b/drivers/media/dvb-frontends/stv090x.c @@ -3468,7 +3468,20 @@ static enum dvbfe_search stv090x_search(struct dvb_frontend *fe) if (props->frequency == 0) return DVBFE_ALGO_SEARCH_INVALID; - state->delsys = props->delivery_system; + switch (props->delivery_system) { + case SYS_DSS: + state->delsys = STV090x_DSS; + break; + case SYS_DVBS: + state->delsys = STV090x_DVBS1; + break; + case SYS_DVBS2: + state->delsys = STV090x_DVBS2; + break; + default: + return DVBFE_ALGO_SEARCH_INVALID; + } + state->frequency = props->frequency; state->srate = props->symbol_rate; state->search_mode = STV090x_SEARCH_AUTO; |