This is a note to let you know that I've just added the patch titled
ASoC: Handle low measured DC offsets for wm_hubs devices
to the 2.6.36-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:
asoc-handle-low-measured-dc-offsets-for-wm_hubs-devices.patch
and it can be found in the queue-2.6.36 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree,
please let <[email protected]> know about it.
>From 20a4e7fc7e213365ea3771d7bf1e10a6bab853be Mon Sep 17 00:00:00 2001
From: Mark Brown <[email protected]>
Date: Fri, 21 Jan 2011 12:47:33 +0000
Subject: ASoC: Handle low measured DC offsets for wm_hubs devices
From: Mark Brown <[email protected]>
commit 20a4e7fc7e213365ea3771d7bf1e10a6bab853be upstream.
The DC servo codes are actually signed numbers so need to be treated as
such.
Signed-off-by: Mark Brown <[email protected]>
Acked-by: Liam Girdwood <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
---
sound/soc/codecs/wm_hubs.c | 15 +++++++--------
1 file changed, 7 insertions(+), 8 deletions(-)
--- a/sound/soc/codecs/wm_hubs.c
+++ b/sound/soc/codecs/wm_hubs.c
@@ -92,6 +92,7 @@ static void wait_for_dc_servo(struct snd
static void calibrate_dc_servo(struct snd_soc_codec *codec)
{
struct wm_hubs_data *hubs = snd_soc_codec_get_drvdata(codec);
+ s8 offset;
u16 reg, reg_l, reg_r, dcs_cfg;
/* Set for 32 series updates */
@@ -130,16 +131,14 @@ static void calibrate_dc_servo(struct sn
dev_dbg(codec->dev, "DCS input: %x %x\n", reg_l, reg_r);
/* HPOUT1L */
- if (reg_l + hubs->dcs_codes > 0 &&
- reg_l + hubs->dcs_codes < 0xff)
- reg_l += hubs->dcs_codes;
- dcs_cfg = reg_l << WM8993_DCS_DAC_WR_VAL_1_SHIFT;
+ offset = reg_l;
+ offset += hubs->dcs_codes;
+ dcs_cfg = (u8)offset << WM8993_DCS_DAC_WR_VAL_1_SHIFT;
/* HPOUT1R */
- if (reg_r + hubs->dcs_codes > 0 &&
- reg_r + hubs->dcs_codes < 0xff)
- reg_r += hubs->dcs_codes;
- dcs_cfg |= reg_r;
+ offset = reg_r;
+ offset += hubs->dcs_codes;
+ dcs_cfg |= (u8)offset;
dev_dbg(codec->dev, "DCS result: %x\n", dcs_cfg);
Patches currently in stable-queue which might be from
[email protected] are
queue-2.6.36/asoc-when-disabling-wm8994-fll-force-a-source-selection.patch
queue-2.6.36/asoc-create-an-aif1adcdat-signal-widget-to-match-aif2.patch
queue-2.6.36/asoc-wm8994-fix-wrong-value-in-tristate-function.patch
queue-2.6.36/asoc-handle-low-measured-dc-offsets-for-wm_hubs-devices.patch
queue-2.6.36/asoc-blackfin-tdm-fix-missed-snd_soc_dai_get_drvdata-update.patch
queue-2.6.36/asoc-wm8990-msleep-takes-milliseconds-not-jiffies.patch
queue-2.6.36/asoc-blackfin-ac97-fix-build-error-after-multi-component-update.patch
_______________________________________________
stable mailing list
[email protected]
http://linux.kernel.org/mailman/listinfo/stable