diff options
Diffstat (limited to 'drivers/media/common/tuners/xc4000.c')
-rw-r--r-- | drivers/media/common/tuners/xc4000.c | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/drivers/media/common/tuners/xc4000.c b/drivers/media/common/tuners/xc4000.c index 793c5c69c2f2..d218c1d68c33 100644 --- a/drivers/media/common/tuners/xc4000.c +++ b/drivers/media/common/tuners/xc4000.c @@ -1139,7 +1139,6 @@ static int xc4000_set_params(struct dvb_frontend *fe) dprintk(1, "%s() VSB modulation\n", __func__); priv->rf_mode = XC_RF_MODE_AIR; priv->freq_hz = c->frequency - 1750000; - priv->bandwidth = BANDWIDTH_6_MHZ; priv->video_standard = XC4000_DTV6; type = DTV6; break; @@ -1147,7 +1146,6 @@ static int xc4000_set_params(struct dvb_frontend *fe) dprintk(1, "%s() QAM modulation\n", __func__); priv->rf_mode = XC_RF_MODE_CABLE; priv->freq_hz = c->frequency - 1750000; - priv->bandwidth = BANDWIDTH_6_MHZ; priv->video_standard = XC4000_DTV6; type = DTV6; break; @@ -1156,26 +1154,21 @@ static int xc4000_set_params(struct dvb_frontend *fe) dprintk(1, "%s() OFDM\n", __func__); if (bw == 0) { if (c->frequency < 400000000) { - priv->bandwidth = BANDWIDTH_7_MHZ; priv->freq_hz = c->frequency - 2250000; } else { - priv->bandwidth = BANDWIDTH_8_MHZ; priv->freq_hz = c->frequency - 2750000; } priv->video_standard = XC4000_DTV7_8; type = DTV78; } else if (bw <= 6000000) { - priv->bandwidth = BANDWIDTH_6_MHZ; priv->video_standard = XC4000_DTV6; priv->freq_hz = c->frequency - 1750000; type = DTV6; } else if (bw <= 7000000) { - priv->bandwidth = BANDWIDTH_7_MHZ; priv->video_standard = XC4000_DTV7; priv->freq_hz = c->frequency - 2250000; type = DTV7; } else { - priv->bandwidth = BANDWIDTH_8_MHZ; priv->video_standard = XC4000_DTV8; priv->freq_hz = c->frequency - 2750000; type = DTV8; @@ -1195,6 +1188,8 @@ static int xc4000_set_params(struct dvb_frontend *fe) if (check_firmware(fe, type, 0, priv->if_khz) != 0) goto fail; + priv->bandwidth = c->bandwidth_hz; + ret = xc_set_signal_source(priv, priv->rf_mode); if (ret != 0) { printk(KERN_ERR "xc4000: xc_set_signal_source(%d) failed\n", @@ -1591,7 +1586,7 @@ struct dvb_frontend *xc4000_attach(struct dvb_frontend *fe, break; case 1: /* new tuner instance */ - priv->bandwidth = BANDWIDTH_6_MHZ; + priv->bandwidth = 6000000; /* set default configuration */ priv->if_khz = 4560; priv->default_pm = 0; |