diff options
author | Mauro Carvalho Chehab <mchehab@redhat.com> | 2011-07-22 20:05:15 (GMT) |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2012-01-05 00:48:57 (GMT) |
commit | 2e1d5885f4964e949eb9a4c1ecf297c297140134 (patch) | |
tree | 678a6dc4668c9eb686fddd7705d147ab91e45ffe /drivers/media/common | |
parent | db6587bfd251384ff96c8891ded9a07c849daf00 (diff) | |
download | linux-2e1d5885f4964e949eb9a4c1ecf297c297140134.tar.xz |
[media] mt2063: Rewrite tuning logic
Several vars at set_parms functions were set, but unused.
Remove them and change the logic to return -EINVAL if the
analog set_param is used for digital mode.
At the analog side, cleans the logic that sets the several
analog standards.
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/common')
-rw-r--r-- | drivers/media/common/tuners/mt2063.c | 62 |
1 files changed, 13 insertions, 49 deletions
diff --git a/drivers/media/common/tuners/mt2063.c b/drivers/media/common/tuners/mt2063.c index cd67417..b72105d 100644 --- a/drivers/media/common/tuners/mt2063.c +++ b/drivers/media/common/tuners/mt2063.c @@ -2013,14 +2013,11 @@ static int mt2063_set_analog_params(struct dvb_frontend *fe, struct analog_parameters *params) { struct mt2063_state *state = fe->tuner_priv; - s32 pict_car = 0; - s32 pict2chanb_vsb = 0; - s32 pict2chanb_snd = 0; - s32 pict2snd1 = 0; - s32 pict2snd2 = 0; - s32 ch_bw = 0; - s32 if_mid = 0; - s32 rcvr_mode = 0; + s32 pict_car; + s32 pict2chanb_vsb; + s32 ch_bw; + s32 if_mid; + s32 rcvr_mode; int status; dprintk(2, "\n"); @@ -2030,8 +2027,6 @@ static int mt2063_set_analog_params(struct dvb_frontend *fe, pict_car = 38900000; ch_bw = 8000000; pict2chanb_vsb = -(ch_bw / 2); - pict2snd1 = 0; - pict2snd2 = 0; rcvr_mode = MT2063_OFFAIR_ANALOG; break; case V4L2_TUNER_ANALOG_TV: @@ -2040,42 +2035,19 @@ static int mt2063_set_analog_params(struct dvb_frontend *fe, pict_car = 38900000; ch_bw = 6000000; pict2chanb_vsb = -1250000; - pict2snd1 = 4500000; - pict2snd2 = 0; - } else if (params->std & V4L2_STD_PAL_I) { - pict_car = 38900000; - ch_bw = 8000000; - pict2chanb_vsb = -1250000; - pict2snd1 = 6000000; - pict2snd2 = 0; - } else if (params->std & V4L2_STD_PAL_B) { - pict_car = 38900000; - ch_bw = 8000000; - pict2chanb_vsb = -1250000; - pict2snd1 = 5500000; - pict2snd2 = 5742000; } else if (params->std & V4L2_STD_PAL_G) { pict_car = 38900000; ch_bw = 7000000; pict2chanb_vsb = -1250000; - pict2snd1 = 5500000; - pict2snd2 = 0; - } else if (params->std & V4L2_STD_PAL_DK) { + } else { /* PAL/SECAM standards */ pict_car = 38900000; ch_bw = 8000000; pict2chanb_vsb = -1250000; - pict2snd1 = 6500000; - pict2snd2 = 0; - } else { /* PAL-L */ - pict_car = 38900000; - ch_bw = 8000000; - pict2chanb_vsb = -1250000; - pict2snd1 = 6500000; - pict2snd2 = 0; } break; + default: + return -EINVAL; } - pict2chanb_snd = pict2chanb_vsb - ch_bw; if_mid = pict_car - (pict2chanb_vsb + (ch_bw / 2)); state->AS_Data.f_LO2_Step = 125000; /* FIXME: probably 5000 for FM */ @@ -2107,14 +2079,11 @@ static int mt2063_set_params(struct dvb_frontend *fe) struct dtv_frontend_properties *c = &fe->dtv_property_cache; struct mt2063_state *state = fe->tuner_priv; int status; - s32 pict_car = 0; - s32 pict2chanb_vsb = 0; - s32 pict2chanb_snd = 0; - s32 pict2snd1 = 0; - s32 pict2snd2 = 0; - s32 ch_bw = 0; - s32 if_mid = 0; - s32 rcvr_mode = 0; + s32 pict_car; + s32 pict2chanb_vsb; + s32 ch_bw; + s32 if_mid; + s32 rcvr_mode; dprintk(2, "\n"); @@ -2132,21 +2101,16 @@ static int mt2063_set_params(struct dvb_frontend *fe) rcvr_mode = MT2063_OFFAIR_COFDM; pict_car = 36125000; pict2chanb_vsb = -(ch_bw / 2); - pict2snd1 = 0; - pict2snd2 = 0; break; case SYS_DVBC_ANNEX_A: case SYS_DVBC_ANNEX_C: rcvr_mode = MT2063_CABLE_QAM; pict_car = 36125000; - pict2snd1 = 0; - pict2snd2 = 0; pict2chanb_vsb = -(ch_bw / 2); break; default: return -EINVAL; } - pict2chanb_snd = pict2chanb_vsb - ch_bw; if_mid = pict_car - (pict2chanb_vsb + (ch_bw / 2)); state->AS_Data.f_LO2_Step = 125000; /* FIXME: probably 5000 for FM */ |