Browse Source

V4L/DVB (6786): tuner: add struct analog_demod_info to struct analog_tuner_ops

Store the analog demodulator name in fe.ops.analog_demod_ops.info.name

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Michael Krufky 17 years ago
parent
commit
a55db8cd7f

+ 6 - 0
drivers/media/video/tda8290.c

@@ -636,6 +636,9 @@ static int tda8295_probe(struct tuner_i2c_props *i2c_props)
 }
 
 static struct analog_tuner_ops tda8290_tuner_ops = {
+	.info		= {
+		.name	= "TDA8290",
+	},
 	.set_params     = tda8290_set_params,
 	.has_signal     = tda8290_has_signal,
 	.standby        = tda8290_standby,
@@ -644,6 +647,9 @@ static struct analog_tuner_ops tda8290_tuner_ops = {
 };
 
 static struct analog_tuner_ops tda8295_tuner_ops = {
+	.info		= {
+		.name	= "TDA8295",
+	},
 	.set_params     = tda8295_set_params,
 	.has_signal     = tda8295_has_signal,
 	.standby        = tda8295_standby,

+ 3 - 0
drivers/media/video/tda9887.c

@@ -636,6 +636,9 @@ static void tda9887_release(struct dvb_frontend *fe)
 }
 
 static struct analog_tuner_ops tda9887_tuner_ops = {
+	.info		= {
+		.name	= "TDA9887",
+	},
 	.set_params     = tda9887_set_params,
 	.standby        = tda9887_standby,
 	.tuner_status   = tda9887_tuner_status,

+ 3 - 0
drivers/media/video/tuner-core.c

@@ -410,6 +410,9 @@ static void set_type(struct i2c_client *c, unsigned int type,
 
 		t->fe.ops.analog_demod_ops = &tuner_core_ops;
 		t->fe.analog_demod_priv = t;
+	} else {
+		strlcpy(t->i2c->name, ops->info.name,
+			sizeof(t->i2c->name));
 	}
 
 	tuner_dbg("type set to %s\n", t->i2c->name);

+ 7 - 0
drivers/media/video/tuner-driver.h

@@ -28,7 +28,14 @@
 
 extern unsigned const int tuner_count;
 
+struct analog_demod_info {
+	char name[128];
+};
+
 struct analog_tuner_ops {
+
+	struct analog_demod_info info;
+
 	void (*set_params)(struct dvb_frontend *fe,
 			   struct analog_parameters *params);
 	int  (*has_signal)(struct dvb_frontend *fe);