V4L/DVB (6672): Add support for radio

Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
diff --git a/drivers/media/video/tuner-xc2028.c b/drivers/media/video/tuner-xc2028.c
index 94f367a..cef170c 100644
--- a/drivers/media/video/tuner-xc2028.c
+++ b/drivers/media/video/tuner-xc2028.c
@@ -891,6 +891,14 @@
 
 	tuner_dbg("%s called\n", __FUNCTION__);
 
+	if (p->mode == V4L2_TUNER_RADIO) {
+		type |= FM;
+		if (priv->ctrl.input1)
+			type |= INPUT1;
+		return generic_set_freq(fe, (625l * p->frequency) / 10,
+				T_ANALOG_TV, type, 0);
+	}
+
 	/* if std is not defined, choose one */
 	if (!p->std)
 		p->std = V4L2_STD_MN;
diff --git a/drivers/media/video/tuner-xc2028.h b/drivers/media/video/tuner-xc2028.h
index a59d00f..02e116b 100644
--- a/drivers/media/video/tuner-xc2028.h
+++ b/drivers/media/video/tuner-xc2028.h
@@ -15,8 +15,9 @@
 	char			*fname;
 	int			max_len;
 	unsigned int		scode_table;
-	unsigned int		mts  :1;
-	unsigned int		d2633:1;
+	unsigned int		mts   :1;
+	unsigned int		d2633 :1;
+	unsigned int		input1:1;
 };
 
 struct xc2028_config {