From b32474cb8341bb828f2c2800d5dd615b7cd02182 Mon Sep 17 00:00:00 2001
From: Manu Abraham <abraham.manu@gmail.com>
Date: Wed, 21 Jun 2006 10:28:31 -0300
Subject: [PATCH] V4L/DVB (4175): Fix a bug in tuner detection

Signed-off-by: Manu Abraham <manu@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
---
 drivers/media/dvb/bt8xx/dst.c | 15 +++++++++++----
 1 file changed, 11 insertions(+), 4 deletions(-)

diff --git a/drivers/media/dvb/bt8xx/dst.c b/drivers/media/dvb/bt8xx/dst.c
index 4a70d2a6f74f..ff562fdae4a5 100644
--- a/drivers/media/dvb/bt8xx/dst.c
+++ b/drivers/media/dvb/bt8xx/dst.c
@@ -1103,10 +1103,17 @@ static int dst_get_device_id(struct dst_state *state)
 //			if (p_dst_type->tuner_type != TUNER_TYPE_MULTI) {
 			/*	Multiple tuners		*/
 			if (p_dst_type->tuner_type & TUNER_TYPE_MULTI) {
-				/*	STV0299 check	*/
-				if (dst_check_stv0299(state) < 0)
-					dprintk(verbose, DST_ERROR, 1, "Unsupported");
-				/*	MB86A15 check	*/
+				switch (use_dst_type) {
+				case DST_TYPE_IS_SAT:
+					/*	STV0299 check	*/
+					if (dst_check_stv0299(state) < 0) {
+						dprintk(verbose, DST_ERROR, 1, "Unsupported");
+						state->tuner_type = TUNER_TYPE_MB86A15;
+					}
+					break;
+				default:
+					break;
+				}
 				if (dst_check_mb86a15(state) < 0)
 					dprintk(verbose, DST_ERROR, 1, "Unsupported");
 			/*	Single tuner		*/