diff options
author | Andreas Oberritter <obi@linuxtv.org> | 2011-08-08 10:54:37 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2011-09-03 17:07:20 -0400 |
commit | 8fc74fdb0f877dc13981fb112ea6b16b04690fc2 (patch) | |
tree | 4b3f95195c3f5ec0501d68e473a58872bac5e2b0 | |
parent | 14f55794b24506a82e995a92e599a3aa9d08781e (diff) |
[media] DVB: gp8psk-fe: use SYS_TURBO
Signed-off-by: Andreas Oberritter <obi@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
-rw-r--r-- | drivers/media/dvb/dvb-usb/gp8psk-fe.c | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/drivers/media/dvb/dvb-usb/gp8psk-fe.c b/drivers/media/dvb/dvb-usb/gp8psk-fe.c index 60d11e57e7d0..5426267980c7 100644 --- a/drivers/media/dvb/dvb-usb/gp8psk-fe.c +++ b/drivers/media/dvb/dvb-usb/gp8psk-fe.c | |||
@@ -144,19 +144,25 @@ static int gp8psk_fe_set_frontend(struct dvb_frontend* fe, | |||
144 | cmd[6] = (freq >> 16) & 0xff; | 144 | cmd[6] = (freq >> 16) & 0xff; |
145 | cmd[7] = (freq >> 24) & 0xff; | 145 | cmd[7] = (freq >> 24) & 0xff; |
146 | 146 | ||
147 | /* backwards compatibility: DVB-S + 8-PSK were used for Turbo-FEC */ | ||
148 | if (c->delivery_system == SYS_DVBS && c->modulation == PSK_8) | ||
149 | c->delivery_system = SYS_TURBO; | ||
150 | |||
147 | switch (c->delivery_system) { | 151 | switch (c->delivery_system) { |
148 | case SYS_DVBS: | 152 | case SYS_DVBS: |
149 | /* Allow QPSK and 8PSK (even for DVB-S) */ | 153 | if (c->modulation != QPSK) { |
150 | if (c->modulation != QPSK && c->modulation != PSK_8) { | ||
151 | deb_fe("%s: unsupported modulation selected (%d)\n", | 154 | deb_fe("%s: unsupported modulation selected (%d)\n", |
152 | __func__, c->modulation); | 155 | __func__, c->modulation); |
153 | return -EOPNOTSUPP; | 156 | return -EOPNOTSUPP; |
154 | } | 157 | } |
155 | c->fec_inner = FEC_AUTO; | 158 | c->fec_inner = FEC_AUTO; |
156 | break; | 159 | break; |
157 | case SYS_DVBS2: | 160 | case SYS_DVBS2: /* kept for backwards compatibility */ |
158 | deb_fe("%s: DVB-S2 delivery system selected\n", __func__); | 161 | deb_fe("%s: DVB-S2 delivery system selected\n", __func__); |
159 | break; | 162 | break; |
163 | case SYS_TURBO: | ||
164 | deb_fe("%s: Turbo-FEC delivery system selected\n", __func__); | ||
165 | break; | ||
160 | 166 | ||
161 | default: | 167 | default: |
162 | deb_fe("%s: unsupported delivery system selected (%d)\n", | 168 | deb_fe("%s: unsupported delivery system selected (%d)\n", |
@@ -189,7 +195,10 @@ static int gp8psk_fe_set_frontend(struct dvb_frontend* fe, | |||
189 | default: | 195 | default: |
190 | cmd[9] = 5; break; | 196 | cmd[9] = 5; break; |
191 | } | 197 | } |
192 | cmd[8] = ADV_MOD_DVB_QPSK; | 198 | if (c->delivery_system == SYS_TURBO) |
199 | cmd[8] = ADV_MOD_TURBO_QPSK; | ||
200 | else | ||
201 | cmd[8] = ADV_MOD_DVB_QPSK; | ||
193 | break; | 202 | break; |
194 | case PSK_8: /* PSK_8 is for compatibility with DN */ | 203 | case PSK_8: /* PSK_8 is for compatibility with DN */ |
195 | cmd[8] = ADV_MOD_TURBO_8PSK; | 204 | cmd[8] = ADV_MOD_TURBO_8PSK; |