[media] tda18271c2dd: Fix saw filter configuration for DVB-C @6MHz
authorMauro Carvalho Chehab <mchehab@redhat.com>
Thu, 28 Jul 2011 18:49:43 +0000 (15:49 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Thu, 28 Jul 2011 20:09:46 +0000 (17:09 -0300)
commitcf845297d592339bcf0839298c4319633df3173a
treee845f7163fbbd20f61600c334e3fd7ed539bce30
parent86cf786c04541c18febc897686a0d5bea29ce688
[media] tda18271c2dd: Fix saw filter configuration for DVB-C @6MHz

Currently, the driver assumes that all QAM carriers are spaced with
8MHz. This is wrong, and may decrease QoS on Countries like Brazil,
that have DVB-C carriers with 6MHz-spaced.

Fortunately, both ITU-T J-83 and EN 300 429 specifies a way to
associate the symbol rate with the bandwidth needed for it.

For ITU-T J-83 2007 annex A, the maximum symbol rate for 6 MHz is:
6 MHz / 1.15 = 5217391 Bauds
For  ITU-T J-83 2007 annex C, the maximum symbol rate for 6 MHz is:
6 MHz / 1.13 = 5309735 Bauds.

As this tuner is currently used only for DRX-K, and it is currently
hard-coded to annex A, I've opted to use the roll-off factor of 0.15,
instead of 0.13.

If we ever support annex C, the better would be to add a DVB S2API
call to allow changing between Annex A and C, and add the 0.13 roll-off
factor to it.

This code is currently being used on other frontends, so I think we
should later add a core function with this code, to warrant that
it will be properly implemented everywhere.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/dvb/frontends/tda18271c2dd.c