|
@@ -973,8 +973,6 @@ struct dvb_frontend *xc5000_attach(struct dvb_frontend *fe,
|
|
|
case 1:
|
|
|
/* new tuner instance */
|
|
|
priv->bandwidth = BANDWIDTH_6_MHZ;
|
|
|
- priv->if_khz = cfg->if_khz;
|
|
|
-
|
|
|
fe->tuner_priv = priv;
|
|
|
break;
|
|
|
default:
|
|
@@ -983,6 +981,13 @@ struct dvb_frontend *xc5000_attach(struct dvb_frontend *fe,
|
|
|
break;
|
|
|
}
|
|
|
|
|
|
+ if (priv->if_khz == 0) {
|
|
|
+ /* If the IF hasn't been set yet, use the value provided by
|
|
|
+ the caller (occurs in hybrid devices where the analog
|
|
|
+ call to xc5000_attach occurs before the digital side) */
|
|
|
+ priv->if_khz = cfg->if_khz;
|
|
|
+ }
|
|
|
+
|
|
|
/* Check if firmware has been loaded. It is possible that another
|
|
|
instance of the driver has loaded the firmware.
|
|
|
*/
|