]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
3.0 patches
authorGreg Kroah-Hartman <gregkh@suse.de>
Wed, 28 Sep 2011 16:32:06 +0000 (09:32 -0700)
committerGreg Kroah-Hartman <gregkh@suse.de>
Wed, 28 Sep 2011 16:32:06 +0000 (09:32 -0700)
queue-3.0/alsa-hda-no-power-nids-on-92hd93.patch [new file with mode: 0644]
queue-3.0/alsa-hda-realtek-avoid-bogus-hp-pin-assignment.patch [new file with mode: 0644]
queue-3.0/alsa-usb-audio-check-for-possible-chip-null-pointer-before-clearing-probing-flag.patch [new file with mode: 0644]
queue-3.0/asoc-omap-mcbsp-do-not-attempt-to-change-dai-sysclk-if-stream-is-active.patch [new file with mode: 0644]
queue-3.0/asoc-ssm2602-re-enable-oscillator-after-suspend.patch [new file with mode: 0644]
queue-3.0/series

diff --git a/queue-3.0/alsa-hda-no-power-nids-on-92hd93.patch b/queue-3.0/alsa-hda-no-power-nids-on-92hd93.patch
new file mode 100644 (file)
index 0000000..358f858
--- /dev/null
@@ -0,0 +1,31 @@
+From 6656b15d675c9c6a049db48d50994b3cd4e76bd6 Mon Sep 17 00:00:00 2001
+From: David Henningsson <david.henningsson@canonical.com>
+Date: Sat, 24 Sep 2011 08:30:44 +0200
+Subject: ALSA: HDA: No power nids on 92HD93
+
+From: David Henningsson <david.henningsson@canonical.com>
+
+commit 6656b15d675c9c6a049db48d50994b3cd4e76bd6 upstream.
+
+This patch is necessary to make internal speakers work on this chip.
+
+BugLink: http://bugs.launchpad.net/bugs/854468
+Tested-by: Alex Wolfson <alex.wolfson@canonical.com>
+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_sigmatel.c |    1 +
+ 1 file changed, 1 insertion(+)
+
+--- a/sound/pci/hda/patch_sigmatel.c
++++ b/sound/pci/hda/patch_sigmatel.c
+@@ -5470,6 +5470,7 @@ again:
+       switch (codec->vendor_id) {
+       case 0x111d76d1:
+       case 0x111d76d9:
++      case 0x111d76df:
+       case 0x111d76e5:
+       case 0x111d7666:
+       case 0x111d7667:
diff --git a/queue-3.0/alsa-hda-realtek-avoid-bogus-hp-pin-assignment.patch b/queue-3.0/alsa-hda-realtek-avoid-bogus-hp-pin-assignment.patch
new file mode 100644 (file)
index 0000000..f2638eb
--- /dev/null
@@ -0,0 +1,35 @@
+From 5fe6e0151dbd969f5fbcd94d05c968b76d76952b Mon Sep 17 00:00:00 2001
+From: Takashi Iwai <tiwai@suse.de>
+Date: Mon, 26 Sep 2011 10:41:21 +0200
+Subject: ALSA: hda/realtek - Avoid bogus HP-pin assignment
+
+From: Takashi Iwai <tiwai@suse.de>
+
+commit 5fe6e0151dbd969f5fbcd94d05c968b76d76952b upstream.
+
+When the headphone pin is assigned as primary output to line_out_pins[],
+the automatic HP-pin assignment by ASSID must be suppressed.  Otherwise
+a wrong pin might be assigned to the headphone and breaks the auto-mute.
+
+Reference: https://bugzilla.novell.com/show_bug.cgi?id=716104
+
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ sound/pci/hda/patch_realtek.c |    4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+--- a/sound/pci/hda/patch_realtek.c
++++ b/sound/pci/hda/patch_realtek.c
+@@ -1859,7 +1859,9 @@ do_sku:
+        * 15   : 1 --> enable the function "Mute internal speaker
+        *              when the external headphone out jack is plugged"
+        */
+-      if (!spec->autocfg.hp_pins[0]) {
++      if (!spec->autocfg.hp_pins[0] &&
++          !(spec->autocfg.line_out_pins[0] &&
++            spec->autocfg.line_out_type == AUTO_PIN_HP_OUT)) {
+               hda_nid_t nid;
+               tmp = (ass >> 11) & 0x3;        /* HP to chassis */
+               if (tmp == 0)
diff --git a/queue-3.0/alsa-usb-audio-check-for-possible-chip-null-pointer-before-clearing-probing-flag.patch b/queue-3.0/alsa-usb-audio-check-for-possible-chip-null-pointer-before-clearing-probing-flag.patch
new file mode 100644 (file)
index 0000000..8dc4734
--- /dev/null
@@ -0,0 +1,37 @@
+From 61a6a108d15213f5ee06332e1e7766d3860e4453 Mon Sep 17 00:00:00 2001
+From: Thomas Pfaff <tpfaff@gmx.net>
+Date: Mon, 26 Sep 2011 15:43:59 +0200
+Subject: ALSA: usb-audio: Check for possible chip NULL pointer before clearing probing flag
+
+From: Thomas Pfaff <tpfaff@gmx.net>
+
+commit 61a6a108d15213f5ee06332e1e7766d3860e4453 upstream.
+
+Before clearing the probing flag in the error exit path, check that the
+chip pointer is not NULL.
+
+Signed-off-by: Thomas Pfaff <tpfaff@gmx.net>
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ sound/usb/card.c |    8 +++++---
+ 1 file changed, 5 insertions(+), 3 deletions(-)
+
+--- a/sound/usb/card.c
++++ b/sound/usb/card.c
+@@ -529,9 +529,11 @@ static void *snd_usb_audio_probe(struct
+       return chip;
+  __error:
+-      if (chip && !chip->num_interfaces)
+-              snd_card_free(chip->card);
+-      chip->probing = 0;
++      if (chip) {
++              if (!chip->num_interfaces)
++                      snd_card_free(chip->card);
++              chip->probing = 0;
++      }
+       mutex_unlock(&register_mutex);
+  __err_val:
+       return NULL;
diff --git a/queue-3.0/asoc-omap-mcbsp-do-not-attempt-to-change-dai-sysclk-if-stream-is-active.patch b/queue-3.0/asoc-omap-mcbsp-do-not-attempt-to-change-dai-sysclk-if-stream-is-active.patch
new file mode 100644 (file)
index 0000000..9e85ed1
--- /dev/null
@@ -0,0 +1,50 @@
+From 34c869855a28af3c6031d29e2267b5a3cce0d67d Mon Sep 17 00:00:00 2001
+From: Jarkko Nikula <jarkko.nikula@bitmer.com>
+Date: Fri, 23 Sep 2011 11:19:13 +0300
+Subject: ASoC: omap-mcbsp: Do not attempt to change DAI sysclk if stream is active
+
+From: Jarkko Nikula <jarkko.nikula@bitmer.com>
+
+commit 34c869855a28af3c6031d29e2267b5a3cce0d67d upstream.
+
+Attempt to change McBSP CLKS source while another stream is active is not
+safe after commit d135865 ("OMAP: McBSP: implement functional clock
+switching via clock framework") in 2.6.37.
+
+CLKS parent clock switching using clock framework have to idle the McBSP
+before switching and then activate it again. This short break can cause a
+DMA transaction error to already running stream which halts and recovers
+only by closing and restarting the stream.
+
+This goes more fatal after commit e2fa61d ("OMAP3: l3: Introduce
+l3-interconnect error handling driver") in 2.6.39 where l3 driver detects a
+severe timeout error and does BUG_ON().
+
+Fix this by not changing any configuration in omap_mcbsp_dai_set_dai_sysclk
+if the McBSP is already active. This test should have been here just from
+the beginning anyway.
+
+Signed-off-by: Jarkko Nikula <jarkko.nikula@bitmer.com>
+Acked-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
+Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ sound/soc/omap/omap-mcbsp.c |    6 ++++++
+ 1 file changed, 6 insertions(+)
+
+--- a/sound/soc/omap/omap-mcbsp.c
++++ b/sound/soc/omap/omap-mcbsp.c
+@@ -516,6 +516,12 @@ static int omap_mcbsp_dai_set_dai_sysclk
+       struct omap_mcbsp_reg_cfg *regs = &mcbsp_data->regs;
+       int err = 0;
++      if (mcbsp_data->active)
++              if (freq == mcbsp_data->in_freq)
++                      return 0;
++              else
++                      return -EBUSY;
++
+       /* The McBSP signal muxing functions are only available on McBSP1 */
+       if (clk_id == OMAP_MCBSP_CLKR_SRC_CLKR ||
+           clk_id == OMAP_MCBSP_CLKR_SRC_CLKX ||
diff --git a/queue-3.0/asoc-ssm2602-re-enable-oscillator-after-suspend.patch b/queue-3.0/asoc-ssm2602-re-enable-oscillator-after-suspend.patch
new file mode 100644 (file)
index 0000000..f3597b8
--- /dev/null
@@ -0,0 +1,35 @@
+From 9058020cd9ae3423d6fe7de591698dc96b6701aa Mon Sep 17 00:00:00 2001
+From: Lars-Peter Clausen <lars@metafoo.de>
+Date: Tue, 27 Sep 2011 11:08:46 +0200
+Subject: ASoC: ssm2602: Re-enable oscillator after suspend
+
+From: Lars-Peter Clausen <lars@metafoo.de>
+
+commit 9058020cd9ae3423d6fe7de591698dc96b6701aa upstream.
+
+Currently the the internal oscillator is powered down when entering BIAS_OFF
+state, but not re-enabled when going back to BIAS_STANDBY. As a result the
+CODEC will stop working after suspend if the internal oscillator is used to
+generate the sysclock signal. This patch fixes it by clearing the appropriate
+bit in the power down register when the CODEC is re-enabled.
+
+Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
+Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+---
+ sound/soc/codecs/ssm2602.c |    3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+--- a/sound/soc/codecs/ssm2602.c
++++ b/sound/soc/codecs/ssm2602.c
+@@ -431,7 +431,8 @@ static int ssm2602_set_dai_fmt(struct sn
+ static int ssm2602_set_bias_level(struct snd_soc_codec *codec,
+                                enum snd_soc_bias_level level)
+ {
+-      u16 reg = snd_soc_read(codec, SSM2602_PWR) & 0xff7f;
++      u16 reg = snd_soc_read(codec, SSM2602_PWR);
++      reg &= ~(PWR_POWER_OFF | PWR_OSC_PDN);
+       switch (level) {
+       case SND_SOC_BIAS_ON:
index f34af1f02aa59851d33f0e7130c3583418444c98..21713ef525bca580d501b9dc9659f61fcd53d05b 100644 (file)
@@ -222,3 +222,8 @@ arm-dma-mapping-free-allocated-page-if-unable-to-map.patch
 arm-7091-1-errata-d-cache-line-maintenance-operation-by.patch
 arm-7099-1-futex-preserve-oldval-in-smp-__futex_atomic_op.patch
 firmware-loader-allow-builtin-firmware-load-even-if.patch
+asoc-omap-mcbsp-do-not-attempt-to-change-dai-sysclk-if-stream-is-active.patch
+asoc-ssm2602-re-enable-oscillator-after-suspend.patch
+alsa-hda-realtek-avoid-bogus-hp-pin-assignment.patch
+alsa-hda-no-power-nids-on-92hd93.patch
+alsa-usb-audio-check-for-possible-chip-null-pointer-before-clearing-probing-flag.patch