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

Commit d5abef6b authored by Michael Krufky's avatar Michael Krufky Committed by Mauro Carvalho Chehab
Browse files

V4L/DVB (12867): tda18271: ensure that configuration options are set for multiple instances



For the case of multiple tuner instances, ensure that non-default
configuration options are saved into the driver's state.

This resolves an issue where a configuration option may not be
carried into the driver if the analog side of a hybrid driver
initializes before the digital side.

Signed-off-by: default avatarMichael Krufky <mkrufky@kernellabs.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
parent 1216531a
Loading
Loading
Loading
Loading
+13 −3
Original line number Diff line number Diff line
@@ -1258,9 +1258,19 @@ struct dvb_frontend *tda18271_attach(struct dvb_frontend *fe, u8 addr,
		/* existing tuner instance */
		fe->tuner_priv = priv;

		/* allow dvb driver to override i2c gate setting */
		if ((cfg) && (cfg->gate != TDA18271_GATE_ANALOG))
		/* allow dvb driver to override configuration settings */
		if (cfg) {
			if (cfg->gate != TDA18271_GATE_ANALOG)
				priv->gate = cfg->gate;
			if (cfg->role)
				priv->role = cfg->role;
			if (cfg->config)
				priv->config = cfg->config;
			if (cfg->small_i2c)
				priv->small_i2c = cfg->small_i2c;
			if (cfg->output_opt)
				priv->output_opt = cfg->output_opt;
		}
		break;
	}