|
@@ -715,6 +715,22 @@ static int m88rs2000_get_frontend(struct dvb_frontend *fe)
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
|
+static int m88rs2000_get_tune_settings(struct dvb_frontend *fe,
|
|
|
+ struct dvb_frontend_tune_settings *tune)
|
|
|
+{
|
|
|
+ struct dtv_frontend_properties *c = &fe->dtv_property_cache;
|
|
|
+
|
|
|
+ if (c->symbol_rate > 3000000)
|
|
|
+ tune->min_delay_ms = 2000;
|
|
|
+ else
|
|
|
+ tune->min_delay_ms = 3000;
|
|
|
+
|
|
|
+ tune->step_size = c->symbol_rate / 16000;
|
|
|
+ tune->max_drift = c->symbol_rate / 2000;
|
|
|
+
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
static int m88rs2000_i2c_gate_ctrl(struct dvb_frontend *fe, int enable)
|
|
|
{
|
|
|
struct m88rs2000_state *state = fe->demodulator_priv;
|
|
@@ -766,6 +782,7 @@ static struct dvb_frontend_ops m88rs2000_ops = {
|
|
|
|
|
|
.set_frontend = m88rs2000_set_frontend,
|
|
|
.get_frontend = m88rs2000_get_frontend,
|
|
|
+ .get_tune_settings = m88rs2000_get_tune_settings,
|
|
|
};
|
|
|
|
|
|
struct dvb_frontend *m88rs2000_attach(const struct m88rs2000_config *config,
|