summaryrefslogtreecommitdiffstats
path: root/drivers/media/dvb/frontends/drxk_hard.c
diff options
context:
space:
mode:
authorMauro Carvalho Chehab2011-11-11 23:26:03 +0100
committerMauro Carvalho Chehab2011-11-11 23:26:03 +0100
commit2440f7aff46af4187d0518e92adaddf475aa82b0 (patch)
treec01e1ec4c8845c0704d0d6699418f8b7f386fa52 /drivers/media/dvb/frontends/drxk_hard.c
parent[media] dvb: Allow select between DVB-C Annex A and Annex C (diff)
downloadkernel-qcow2-linux-2440f7aff46af4187d0518e92adaddf475aa82b0.tar.gz
kernel-qcow2-linux-2440f7aff46af4187d0518e92adaddf475aa82b0.tar.xz
kernel-qcow2-linux-2440f7aff46af4187d0518e92adaddf475aa82b0.zip
[media] Properly implement ITU-T J.88 Annex C support
The Annex C support were broken with the previous implementation, as, at xc5000 and tda18271c2dd, it were choosing the wrong bandwidth for some symbol rates. At DRX-J, it were always selecting Annex A, even having Annex C support coded there. 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.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/media/dvb/frontends/drxk_hard.c b/drivers/media/dvb/frontends/drxk_hard.c
index f6431ef827dc..dc13fd86c4f5 100644
--- a/drivers/media/dvb/frontends/drxk_hard.c
+++ b/drivers/media/dvb/frontends/drxk_hard.c
@@ -6218,6 +6218,13 @@ static int drxk_set_parameters(struct dvb_frontend *fe,
return -EINVAL;
}
+ if (state->m_OperationMode == OM_QAM_ITU_A ||
+ state->m_OperationMode == OM_QAM_ITU_C) {
+ if (fe->dtv_property_cache.rolloff == ROLLOFF_13)
+ state->m_OperationMode = OM_QAM_ITU_C;
+ else
+ state->m_OperationMode = OM_QAM_ITU_A;
+ }
if (fe->ops.i2c_gate_ctrl)
fe->ops.i2c_gate_ctrl(fe, 1);