This is a note to let you know that I've just added the patch titled

    [media] au8522: bug-fix: enable modulation AFTER tune (instead of before 
tuning)

to the 3.3-stable tree which can be found at:
    
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     au8522-bug-fix-enable-modulation-after-tune-instead-of-before-tuning.patch
and it can be found in the queue-3.3 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <[email protected]> know about it.


>From ef3d2dc366c8c32d58dbbf9898cfd4f853ff8fe0 Mon Sep 17 00:00:00 2001
From: Michael Krufky <[email protected]>
Date: Mon, 12 Mar 2012 17:07:22 -0300
Subject: [media] au8522: bug-fix: enable modulation AFTER tune (instead of 
before tuning)

From: Michael Krufky <[email protected]>

commit ef3d2dc366c8c32d58dbbf9898cfd4f853ff8fe0 upstream.

The au8522 driver programs the tuner after programming the demodulator,
but the tuner should be programmed first. This patch fixes this behavior.

EDIT: Apparantly Devin created a similar patch some time ago, but hasn't
submitted it for merge.  I never saw his patch, but I thank him anyhow
for his efforts.  In addition, Devin pointed out a flaw in my patch:

This newly generated patch takes Devin's comments into account.

Thanks-to: Devin Heitmueller <[email protected]>
Signed-off-by: Michael Krufky <[email protected]>
Signed-off-by: Mauro Carvalho Chehab <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>

---
 drivers/media/dvb/frontends/au8522_dig.c |   10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

--- a/drivers/media/dvb/frontends/au8522_dig.c
+++ b/drivers/media/dvb/frontends/au8522_dig.c
@@ -588,11 +588,6 @@ static int au8522_set_frontend(struct dv
            (state->current_modulation == c->modulation))
                return 0;
 
-       au8522_enable_modulation(fe, c->modulation);
-
-       /* Allow the demod to settle */
-       msleep(100);
-
        if (fe->ops.tuner_ops.set_params) {
                if (fe->ops.i2c_gate_ctrl)
                        fe->ops.i2c_gate_ctrl(fe, 1);
@@ -604,6 +599,11 @@ static int au8522_set_frontend(struct dv
        if (ret < 0)
                return ret;
 
+       /* Allow the tuner to settle */
+       msleep(100);
+
+       au8522_enable_modulation(fe, c->modulation);
+
        state->current_frequency = c->frequency;
 
        return 0;


Patches currently in stable-queue which might be from [email protected] are

queue-3.3/au8522-bug-fix-enable-modulation-after-tune-instead-of-before-tuning.patch
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to