]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
.36 patches
authorGreg Kroah-Hartman <gregkh@suse.de>
Mon, 14 Feb 2011 15:45:43 +0000 (07:45 -0800)
committerGreg Kroah-Hartman <gregkh@suse.de>
Mon, 14 Feb 2011 15:45:43 +0000 (07:45 -0800)
queue-2.6.36/alsa-hda-add-subwoofer-quirk-for-acer-aspire-8942g.patch [new file with mode: 0644]
queue-2.6.36/alsa-hrtimer-handle-delayed-timer-interrupts.patch [new file with mode: 0644]
queue-2.6.36/asoc-blackfin-ac97-fix-build-error-after-multi-component-update.patch [new file with mode: 0644]
queue-2.6.36/asoc-blackfin-tdm-fix-missed-snd_soc_dai_get_drvdata-update.patch [new file with mode: 0644]
queue-2.6.36/asoc-when-disabling-wm8994-fll-force-a-source-selection.patch [new file with mode: 0644]
queue-2.6.36/asoc-wm8990-msleep-takes-milliseconds-not-jiffies.patch [new file with mode: 0644]
queue-2.6.36/series

diff --git a/queue-2.6.36/alsa-hda-add-subwoofer-quirk-for-acer-aspire-8942g.patch b/queue-2.6.36/alsa-hda-add-subwoofer-quirk-for-acer-aspire-8942g.patch
new file mode 100644 (file)
index 0000000..1e1b7b4
--- /dev/null
@@ -0,0 +1,33 @@
+From a6c47a85b8e7e4a8c47394607c5e5c43224b0892 Mon Sep 17 00:00:00 2001
+From: David Henningsson <david.henningsson@canonical.com>
+Date: Thu, 10 Feb 2011 15:39:19 +0100
+Subject: ALSA: HDA: Add subwoofer quirk for Acer Aspire 8942G
+
+From: David Henningsson <david.henningsson@canonical.com>
+
+commit a6c47a85b8e7e4a8c47394607c5e5c43224b0892 upstream.
+
+According to the reporter, node 0x15 needs to be muted for subwoofer
+to stop sounding. This pin is marked as unused by BIOS, so fix that.
+
+BugLink: http://bugs.launchpad.net/bugs/715877
+
+Reported-by: Hans Peter
+Signed-off-by: David Henningsson <david.henningsson@canonical.com>
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ sound/pci/hda/patch_realtek.c |    1 +
+ 1 file changed, 1 insertion(+)
+
+--- a/sound/pci/hda/patch_realtek.c
++++ b/sound/pci/hda/patch_realtek.c
+@@ -18959,6 +18959,7 @@ static const struct alc_fixup alc662_fix
+ };
+ static struct snd_pci_quirk alc662_fixup_tbl[] = {
++      SND_PCI_QUIRK(0x1025, 0x0308, "Acer Aspire 8942G", ALC662_FIXUP_ASPIRE),
+       SND_PCI_QUIRK(0x1025, 0x038b, "Acer Aspire 8943G", ALC662_FIXUP_ASPIRE),
+       SND_PCI_QUIRK(0x144d, 0xc051, "Samsung R720", ALC662_FIXUP_IDEAPAD),
+       SND_PCI_QUIRK(0x17aa, 0x38af, "Lenovo Ideapad Y550P", ALC662_FIXUP_IDEAPAD),
diff --git a/queue-2.6.36/alsa-hrtimer-handle-delayed-timer-interrupts.patch b/queue-2.6.36/alsa-hrtimer-handle-delayed-timer-interrupts.patch
new file mode 100644 (file)
index 0000000..0571dd0
--- /dev/null
@@ -0,0 +1,44 @@
+From b1d4f7f4bdcf9915c41ff8cfc4425c84dabb1fde Mon Sep 17 00:00:00 2001
+From: Clemens Ladisch <clemens@ladisch.de>
+Date: Thu, 10 Feb 2011 16:15:44 +0100
+Subject: ALSA: hrtimer: handle delayed timer interrupts
+
+From: Clemens Ladisch <clemens@ladisch.de>
+
+commit b1d4f7f4bdcf9915c41ff8cfc4425c84dabb1fde upstream.
+
+If a timer interrupt was delayed too much, hrtimer_forward_now() will
+forward the timer expiry more than once.  When this happens, the
+additional number of elapsed ALSA timer ticks must be passed to
+snd_timer_interrupt() to prevent the ALSA timer from falling behind.
+
+This mostly fixes MIDI slowdown problems on highly-loaded systems with
+badly behaved interrupt handlers.
+
+Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
+Reported-and-tested-by: Arthur Marsh <arthur.marsh@internode.on.net>
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ sound/core/hrtimer.c |    5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+--- a/sound/core/hrtimer.c
++++ b/sound/core/hrtimer.c
+@@ -45,12 +45,13 @@ static enum hrtimer_restart snd_hrtimer_
+ {
+       struct snd_hrtimer *stime = container_of(hrt, struct snd_hrtimer, hrt);
+       struct snd_timer *t = stime->timer;
++      unsigned long oruns;
+       if (!atomic_read(&stime->running))
+               return HRTIMER_NORESTART;
+-      hrtimer_forward_now(hrt, ns_to_ktime(t->sticks * resolution));
+-      snd_timer_interrupt(stime->timer, t->sticks);
++      oruns = hrtimer_forward_now(hrt, ns_to_ktime(t->sticks * resolution));
++      snd_timer_interrupt(stime->timer, t->sticks * oruns);
+       if (!atomic_read(&stime->running))
+               return HRTIMER_NORESTART;
diff --git a/queue-2.6.36/asoc-blackfin-ac97-fix-build-error-after-multi-component-update.patch b/queue-2.6.36/asoc-blackfin-ac97-fix-build-error-after-multi-component-update.patch
new file mode 100644 (file)
index 0000000..9b8cde2
--- /dev/null
@@ -0,0 +1,35 @@
+From e9c2048915048d605fd76539ddd96f00d593e1eb Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Tue, 11 Jan 2011 19:57:33 -0500
+Subject: ASoC: Blackfin AC97: fix build error after multi-component update
+
+From: Mike Frysinger <vapier@gentoo.org>
+
+commit e9c2048915048d605fd76539ddd96f00d593e1eb upstream.
+
+We need to tweak how we query the active capture/playback state after
+the recent overhauls of common code.
+
+Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
+Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ sound/soc/blackfin/bf5xx-ac97.c |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/sound/soc/blackfin/bf5xx-ac97.c
++++ b/sound/soc/blackfin/bf5xx-ac97.c
+@@ -260,9 +260,9 @@ static int bf5xx_ac97_suspend(struct snd
+       pr_debug("%s : sport %d\n", __func__, dai->id);
+       if (!dai->active)
+               return 0;
+-      if (dai->capture.active)
++      if (dai->capture_active)
+               sport_rx_stop(sport);
+-      if (dai->playback.active)
++      if (dai->playback_active)
+               sport_tx_stop(sport);
+       return 0;
+ }
diff --git a/queue-2.6.36/asoc-blackfin-tdm-fix-missed-snd_soc_dai_get_drvdata-update.patch b/queue-2.6.36/asoc-blackfin-tdm-fix-missed-snd_soc_dai_get_drvdata-update.patch
new file mode 100644 (file)
index 0000000..59d30f9
--- /dev/null
@@ -0,0 +1,32 @@
+From 15d2e22b820bad62854d6ad99d8af8320adf4a91 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Tue, 11 Jan 2011 23:08:19 -0500
+Subject: ASoC: Blackfin TDM: fix missed snd_soc_dai_get_drvdata update
+
+From: Mike Frysinger <vapier@gentoo.org>
+
+commit 15d2e22b820bad62854d6ad99d8af8320adf4a91 upstream.
+
+One spot was missed in this driver when converting from
+snd_soc_dai.private_data to snd_soc_dai_get_drvdata.
+
+Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
+Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ sound/soc/blackfin/bf5xx-tdm.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/sound/soc/blackfin/bf5xx-tdm.c
++++ b/sound/soc/blackfin/bf5xx-tdm.c
+@@ -210,7 +210,7 @@ static int bf5xx_tdm_set_channel_map(str
+ #ifdef CONFIG_PM
+ static int bf5xx_tdm_suspend(struct snd_soc_dai *dai)
+ {
+-      struct sport_device *sport = dai->private_data;
++      struct sport_device *sport = snd_soc_dai_get_drvdata(dai);
+       if (!dai->active)
+               return 0;
diff --git a/queue-2.6.36/asoc-when-disabling-wm8994-fll-force-a-source-selection.patch b/queue-2.6.36/asoc-when-disabling-wm8994-fll-force-a-source-selection.patch
new file mode 100644 (file)
index 0000000..cbef815
--- /dev/null
@@ -0,0 +1,39 @@
+From 4514e8997fbefd5befd6176ac9785e287b4daed4 Mon Sep 17 00:00:00 2001
+From: Mark Brown <broonie@opensource.wolfsonmicro.com>
+Date: Fri, 3 Dec 2010 16:02:10 +0000
+Subject: ASoC: When disabling WM8994 FLL force a source selection
+
+From: Mark Brown <broonie@opensource.wolfsonmicro.com>
+
+commit 4514e8997fbefd5befd6176ac9785e287b4daed4 upstream.
+
+When we disable the WM8994 FLL code path sharing means that we end up
+writing out a configuration. Currently this is the currently active
+input and output frequency (which causes snd_soc_update_bits() to
+suppress actual writes both immediately and in the common case where
+we reenable the same configuration later) but we allow machine drivers
+to pass through a source of zero. Since the register values written
+are one less than the source constants this causes corruption of other
+bitfields in the register.
+
+Fix this by using the most recently configured FLL source when none is
+provided.
+
+Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
+Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ sound/soc/codecs/wm8994.c |    1 +
+ 1 file changed, 1 insertion(+)
+
+--- a/sound/soc/codecs/wm8994.c
++++ b/sound/soc/codecs/wm8994.c
+@@ -2914,6 +2914,7 @@ static int wm8994_set_fll(struct snd_soc
+               /* Allow no source specification when stopping */
+               if (freq_out)
+                       return -EINVAL;
++              src = wm8994->fll[id].src;
+               break;
+       case WM8994_FLL_SRC_MCLK1:
+       case WM8994_FLL_SRC_MCLK2:
diff --git a/queue-2.6.36/asoc-wm8990-msleep-takes-milliseconds-not-jiffies.patch b/queue-2.6.36/asoc-wm8990-msleep-takes-milliseconds-not-jiffies.patch
new file mode 100644 (file)
index 0000000..998e9a2
--- /dev/null
@@ -0,0 +1,59 @@
+From 7ebcf5d6021a696680ee77d9162a2edec2d671dd Mon Sep 17 00:00:00 2001
+From: Dimitris Papastamos <dp@opensource.wolfsonmicro.com>
+Date: Fri, 14 Jan 2011 15:59:13 +0000
+Subject: ASoC: WM8990: msleep() takes milliseconds not jiffies
+
+From: Dimitris Papastamos <dp@opensource.wolfsonmicro.com>
+
+commit 7ebcf5d6021a696680ee77d9162a2edec2d671dd upstream.
+
+Signed-off-by: Dimitris Papastamos <dp@opensource.wolfsonmicro.com>
+Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
+Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ sound/soc/codecs/wm8990.c |   10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+--- a/sound/soc/codecs/wm8990.c
++++ b/sound/soc/codecs/wm8990.c
+@@ -1183,7 +1183,7 @@ static int wm8990_set_bias_level(struct
+                                    WM8990_VMIDTOG);
+                       /* Delay to allow output caps to discharge */
+-                      msleep(msecs_to_jiffies(300));
++                      msleep(300);
+                       /* Disable VMIDTOG */
+                       snd_soc_write(codec, WM8990_ANTIPOP2, WM8990_SOFTST |
+@@ -1195,17 +1195,17 @@ static int wm8990_set_bias_level(struct
+                       /* Enable outputs */
+                       snd_soc_write(codec, WM8990_POWER_MANAGEMENT_1, 0x1b00);
+-                      msleep(msecs_to_jiffies(50));
++                      msleep(50);
+                       /* Enable VMID at 2x50k */
+                       snd_soc_write(codec, WM8990_POWER_MANAGEMENT_1, 0x1f02);
+-                      msleep(msecs_to_jiffies(100));
++                      msleep(100);
+                       /* Enable VREF */
+                       snd_soc_write(codec, WM8990_POWER_MANAGEMENT_1, 0x1f03);
+-                      msleep(msecs_to_jiffies(600));
++                      msleep(600);
+                       /* Enable BUFIOEN */
+                       snd_soc_write(codec, WM8990_ANTIPOP2, WM8990_SOFTST |
+@@ -1250,7 +1250,7 @@ static int wm8990_set_bias_level(struct
+               /* Disable VMID */
+               snd_soc_write(codec, WM8990_POWER_MANAGEMENT_1, 0x1f01);
+-              msleep(msecs_to_jiffies(300));
++              msleep(300);
+               /* Enable all output discharge bits */
+               snd_soc_write(codec, WM8990_ANTIPOP1, WM8990_DIS_LLINE |
index 959b1c5d3c4e0b1872293b738be1629737216f79..4445a7d2289b92f0693514559ca325dd9b0e849c 100644 (file)
@@ -82,3 +82,9 @@ alsa-hda-fix-memory-leaks-in-conexant-jack-arrays.patch
 input-i8042-introduce-notimeout-blacklist-for-dell-vostro-v13.patch
 input-bcm5974-add-support-for-macbookair3.patch
 hwmon-lm63-consider-lm64-temperature-offset.patch
+alsa-hrtimer-handle-delayed-timer-interrupts.patch
+alsa-hda-add-subwoofer-quirk-for-acer-aspire-8942g.patch
+asoc-when-disabling-wm8994-fll-force-a-source-selection.patch
+asoc-wm8990-msleep-takes-milliseconds-not-jiffies.patch
+asoc-blackfin-ac97-fix-build-error-after-multi-component-update.patch
+asoc-blackfin-tdm-fix-missed-snd_soc_dai_get_drvdata-update.patch