ASoC: twl6040: No need to change delay during HS ramp
authorPeter Ujfalusi <peter.ujfalusi@ti.com>
Mon, 26 Sep 2011 13:26:30 +0000 (16:26 +0300)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Mon, 26 Sep 2011 21:33:31 +0000 (22:33 +0100)
The Headset gain have 2dB steps all the way, so there is no
reason to have different delays as we approaching to the
end of the scale.
The comment was also wrong, since we have 0dB at 0x0 raw at
one end of the range, and not in the middle.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
sound/soc/codecs/twl6040.c

index 7b543c0a7cb45be81a09d31113779b044bc770e8..0144e435c08b1033629ed3db8ff2ec6328378a3f 100644 (file)
@@ -491,7 +491,6 @@ static void twl6040_pga_hs_work(struct work_struct *work)
                container_of(work, struct twl6040_data, headset.work.work);
        struct snd_soc_codec *codec = priv->codec;
        struct twl6040_output *headset = &priv->headset;
-       unsigned int delay = headset->step_delay;
        int i, headset_complete;
 
        /* do we need to ramp at all ? */
@@ -508,15 +507,8 @@ static void twl6040_pga_hs_work(struct work_struct *work)
                if (headset_complete)
                        break;
 
-               /*
-                * TODO: tune: delay is longer over 0dB
-                * as increases are larger.
-                */
-               if (i >= 8)
-                       schedule_timeout_interruptible(msecs_to_jiffies(delay +
-                                                       (delay >> 1)));
-               else
-                       schedule_timeout_interruptible(msecs_to_jiffies(delay));
+               schedule_timeout_interruptible(
+                               msecs_to_jiffies(headset->step_delay));
        }
 
        if (headset->ramp == TWL6040_RAMP_DOWN) {