Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 41da5320 authored by Mauro Carvalho Chehab's avatar Mauro Carvalho Chehab
Browse files

[media] dvb: don't pass a DVBv3 parameter for search() fops



Just like the other DVB algorithms, drivers should use the DVBv5
way to retrieve parameters: via the cache struct.

Actually, several drivers were partially using the DVBv3 struct
and partially using the DVBv5 way, with is confusing and may
lead into troubles.

Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
parent 7e072221
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -628,7 +628,7 @@ static int dvb_frontend_thread(void *data)
				 */
				if (fepriv->algo_status & DVBFE_ALGO_SEARCH_AGAIN) {
					if (fe->ops.search) {
						fepriv->algo_status = fe->ops.search(fe, &fepriv->parameters_in);
						fepriv->algo_status = fe->ops.search(fe);
						/* We did do a search as was requested, the flags are
						 * now unset as well and has the flags wrt to search.
						 */
+1 −1
Original line number Diff line number Diff line
@@ -306,7 +306,7 @@ struct dvb_frontend_ops {
	/* These callbacks are for devices that implement their own
	 * tuning algorithms, rather than a simple swzigzag
	 */
	enum dvbfe_search (*search)(struct dvb_frontend *fe, struct dvb_frontend_parameters *p);
	enum dvbfe_search (*search)(struct dvb_frontend *fe);
	int (*track)(struct dvb_frontend *fe, struct dvb_frontend_parameters *p);

	struct dvb_tuner_ops tuner_ops;
+1 −2
Original line number Diff line number Diff line
@@ -468,8 +468,7 @@ static int cxd2820r_get_tune_settings(struct dvb_frontend *fe,
	return ret;
}

static enum dvbfe_search cxd2820r_search(struct dvb_frontend *fe,
					 struct dvb_frontend_parameters *p)
static enum dvbfe_search cxd2820r_search(struct dvb_frontend *fe)
{
	struct cxd2820r_priv *priv = fe->demodulator_priv;
	struct dtv_frontend_properties *c = &fe->dtv_property_cache;
+3 −3
Original line number Diff line number Diff line
@@ -1621,13 +1621,13 @@ static int mb86a16_set_tone(struct dvb_frontend *fe, fe_sec_tone_mode_t tone)
	return -EREMOTEIO;
}

static enum dvbfe_search mb86a16_search(struct dvb_frontend *fe,
					struct dvb_frontend_parameters *p)
static enum dvbfe_search mb86a16_search(struct dvb_frontend *fe)
{
	struct dtv_frontend_properties *p = &fe->dtv_property_cache;
	struct mb86a16_state *state = fe->demodulator_priv;

	state->frequency = p->frequency / 1000;
	state->srate = p->u.qpsk.symbol_rate / 1000;
	state->srate = p->symbol_rate / 1000;

	if (!mb86a16_set_fe(state)) {
		dprintk(verbose, MB86A16_ERROR, 1, "Successfully acquired LOCK");
+3 −3
Original line number Diff line number Diff line
@@ -1431,7 +1431,7 @@ static void stb0899_set_iterations(struct stb0899_state *state)
	stb0899_write_s2reg(state, STB0899_S2FEC, STB0899_BASE_MAX_ITER, STB0899_OFF0_MAX_ITER, reg);
}

static enum dvbfe_search stb0899_search(struct dvb_frontend *fe, struct dvb_frontend_parameters *p)
static enum dvbfe_search stb0899_search(struct dvb_frontend *fe)
{
	struct stb0899_state *state = fe->demodulator_priv;
	struct stb0899_params *i_params = &state->params;
@@ -1441,8 +1441,8 @@ static enum dvbfe_search stb0899_search(struct dvb_frontend *fe, struct dvb_fron

	u32 SearchRange, gain;

	i_params->freq	= p->frequency;
	i_params->srate = p->u.qpsk.symbol_rate;
	i_params->freq	= props->frequency;
	i_params->srate = props->symbol_rate;
	state->delsys = props->delivery_system;
	dprintk(state->verbose, FE_DEBUG, 1, "delivery system=%d", state->delsys);

Loading