From 1ee793ae1fcd7701a67da2a87856a65a907b86bf Mon Sep 17 00:00:00 2001 From: Istvan Varga Date: Sat, 4 Jun 2011 12:18:41 -0300 Subject: [PATCH] --- yaml --- r: 261256 b: refs/heads/master c: e75873c1f80380f190d0270fec566410f59c4829 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/media/common/tuners/xc4000.c | 19 +++++++++---------- 2 files changed, 10 insertions(+), 11 deletions(-) diff --git a/[refs] b/[refs] index a182b1732883..a96d649c6d97 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 818a1776a45c230c4f230c8e4e2d0c7bdf5f8fa3 +refs/heads/master: e75873c1f80380f190d0270fec566410f59c4829 diff --git a/trunk/drivers/media/common/tuners/xc4000.c b/trunk/drivers/media/common/tuners/xc4000.c index 52375498257c..c3e564e9f8ca 100644 --- a/trunk/drivers/media/common/tuners/xc4000.c +++ b/trunk/drivers/media/common/tuners/xc4000.c @@ -516,12 +516,10 @@ static u16 WaitForLock(struct xc4000_priv *priv) return lockState; } -#define XC_TUNE_ANALOG 0 -#define XC_TUNE_DIGITAL 1 -static int xc_tune_channel(struct xc4000_priv *priv, u32 freq_hz, int mode) +static int xc_tune_channel(struct xc4000_priv *priv, u32 freq_hz) { - int found = 0; - int result = 0; + int found = 1; + int result; dprintk(1, "%s(%u)\n", __func__, freq_hz); @@ -533,9 +531,10 @@ static int xc_tune_channel(struct xc4000_priv *priv, u32 freq_hz, int mode) if (result != XC_RESULT_SUCCESS) return 0; - if (mode == XC_TUNE_ANALOG) { - if (WaitForLock(priv) == 1) - found = 1; + /* wait for lock only in analog TV mode */ + if ((priv->cur_fw.type & (FM | DTV6 | DTV7 | DTV78 | DTV8)) == 0) { + if (WaitForLock(priv) != 1) + found = 0; } /* Wait for stats to stabilize. @@ -1269,7 +1268,7 @@ static int xc4000_set_params(struct dvb_frontend *fe, } } - xc_tune_channel(priv, priv->freq_hz, XC_TUNE_DIGITAL); + xc_tune_channel(priv, priv->freq_hz); ret = 0; @@ -1468,7 +1467,7 @@ static int xc4000_set_analog_params(struct dvb_frontend *fe, } } - xc_tune_channel(priv, priv->freq_hz, XC_TUNE_ANALOG); + xc_tune_channel(priv, priv->freq_hz); ret = 0;