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>
diff --git a/drivers/media/video/tda8290.c b/drivers/media/video/tda8290.c
index d0d13bc..403f96f 100644
--- a/drivers/media/video/tda8290.c
+++ b/drivers/media/video/tda8290.c
@@ -636,6 +636,9 @@
 }
 
 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 tda8295_tuner_ops = {
+	.info		= {
+		.name	= "TDA8295",
+	},
 	.set_params     = tda8295_set_params,
 	.has_signal     = tda8295_has_signal,
 	.standby        = tda8295_standby,
diff --git a/drivers/media/video/tda9887.c b/drivers/media/video/tda9887.c
index 98d45c4..8a95f09 100644
--- a/drivers/media/video/tda9887.c
+++ b/drivers/media/video/tda9887.c
@@ -636,6 +636,9 @@
 }
 
 static struct analog_tuner_ops tda9887_tuner_ops = {
+	.info		= {
+		.name	= "TDA9887",
+	},
 	.set_params     = tda9887_set_params,
 	.standby        = tda9887_standby,
 	.tuner_status   = tda9887_tuner_status,
diff --git a/drivers/media/video/tuner-core.c b/drivers/media/video/tuner-core.c
index 0cc1907..59e67c9 100644
--- a/drivers/media/video/tuner-core.c
+++ b/drivers/media/video/tuner-core.c
@@ -410,6 +410,9 @@
 
 		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);
diff --git a/drivers/media/video/tuner-driver.h b/drivers/media/video/tuner-driver.h
index a215161..c245f50 100644
--- a/drivers/media/video/tuner-driver.h
+++ b/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);