summaryrefslogtreecommitdiff
path: root/drivers/media/dvb/frontends/drxk_hard.c
diff options
context:
space:
mode:
authorMauro Carvalho Chehab <mchehab@redhat.com>2011-12-17 20:36:57 -0300
committerMauro Carvalho Chehab <mchehab@redhat.com>2011-12-20 11:50:23 -0200
commitfd66c45dd51000ff444231a94ac15ccab8cffd3d (patch)
tree9f54f08e52b38c936329a85a396abd98369be048 /drivers/media/dvb/frontends/drxk_hard.c
parent669a4ba44d6054f147ef123b0c9a640e49c518e0 (diff)
[media] Remove Annex A/C selection via roll-off factor
Instead of using a roll-off factor, change DRX-K & friends to select the bandwidth filter and the Nyquist half roll-off via delivery system. This provides a cleaner support for Annex A/C switch. Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/dvb/frontends/drxk_hard.c')
-rw-r--r--drivers/media/dvb/frontends/drxk_hard.c15
1 files changed, 10 insertions, 5 deletions
diff --git a/drivers/media/dvb/frontends/drxk_hard.c b/drivers/media/dvb/frontends/drxk_hard.c
index 038e470bf039..a2c819651933 100644
--- a/drivers/media/dvb/frontends/drxk_hard.c
+++ b/drivers/media/dvb/frontends/drxk_hard.c
@@ -6215,6 +6215,7 @@ static int drxk_set_parameters(struct dvb_frontend *fe,
struct dvb_frontend_parameters *p)
{
struct drxk_state *state = fe->demodulator_priv;
+ u32 delsys = fe->dtv_property_cache.delivery_system;
u32 IF;
dprintk(1, "\n");
@@ -6225,11 +6226,15 @@ static int drxk_set_parameters(struct dvb_frontend *fe,
return -EINVAL;
}
- if (fe->ops.info.type == FE_QAM) {
- if (fe->dtv_property_cache.rolloff == ROLLOFF_13)
- state->m_itut_annex_c = true;
- else
- state->m_itut_annex_c = false;
+ switch (delsys) {
+ case SYS_DVBC_ANNEX_A:
+ state->m_itut_annex_c = false;
+ break;
+ case SYS_DVBC_ANNEX_C:
+ state->m_itut_annex_c = true;
+ break;
+ default:
+ return -EINVAL;
}
if (fe->ops.i2c_gate_ctrl)