]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
4.4-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 28 Aug 2017 06:44:00 +0000 (08:44 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 28 Aug 2017 06:44:00 +0000 (08:44 +0200)
added patches:
asoc-rsnd-disable-src.out-only-when-stop-timing.patch
asoc-simple-card-don-t-fail-if-sysclk-setting-is-not-supported.patch

queue-4.4/asoc-rsnd-disable-src.out-only-when-stop-timing.patch [new file with mode: 0644]
queue-4.4/asoc-simple-card-don-t-fail-if-sysclk-setting-is-not-supported.patch [new file with mode: 0644]
queue-4.4/series

diff --git a/queue-4.4/asoc-rsnd-disable-src.out-only-when-stop-timing.patch b/queue-4.4/asoc-rsnd-disable-src.out-only-when-stop-timing.patch
new file mode 100644 (file)
index 0000000..abefab2
--- /dev/null
@@ -0,0 +1,64 @@
+From b761bf272bce6dff4d8a7ccf4385c9f3d4018094 Mon Sep 17 00:00:00 2001
+From: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
+Date: Mon, 26 Oct 2015 08:40:59 +0000
+Subject: ASoC: rsnd: disable SRC.out only when stop timing
+
+From: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
+
+commit b761bf272bce6dff4d8a7ccf4385c9f3d4018094 upstream.
+
+Because SRC is connected to DMA and DMA want to keep dreq when stop
+timing. This patch makes SRC stop SRC.out only when stop timing. And
+it stops both SRC.out/SRC.in when quit timing
+
+Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
+Signed-off-by: Mark Brown <broonie@kernel.org>
+Signed-off-by: Thong Ho <thong.ho.px@rvc.renesas.com>
+Signed-off-by: Nhan Nguyen <nhan.nguyen.yb@renesas.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+
+---
+ sound/soc/sh/rcar/src.c |   18 ++++++++++++++++--
+ 1 file changed, 16 insertions(+), 2 deletions(-)
+
+--- a/sound/soc/sh/rcar/src.c
++++ b/sound/soc/sh/rcar/src.c
+@@ -691,13 +691,27 @@ static int _rsnd_src_stop_gen2(struct rs
+ {
+       rsnd_src_irq_disable_gen2(mod);
+-      rsnd_mod_write(mod, SRC_CTRL, 0);
++      /*
++       * stop SRC output only
++       * see rsnd_src_quit_gen2
++       */
++      rsnd_mod_write(mod, SRC_CTRL, 0x01);
+       rsnd_src_error_record_gen2(mod);
+       return rsnd_src_stop(mod);
+ }
++static int rsnd_src_quit_gen2(struct rsnd_mod *mod,
++                            struct rsnd_dai_stream *io,
++                            struct rsnd_priv *priv)
++{
++      /* stop both out/in */
++      rsnd_mod_write(mod, SRC_CTRL, 0);
++
++      return 0;
++}
++
+ static void __rsnd_src_interrupt_gen2(struct rsnd_mod *mod,
+                                     struct rsnd_dai_stream *io)
+ {
+@@ -971,7 +985,7 @@ static struct rsnd_mod_ops rsnd_src_gen2
+       .probe  = rsnd_src_probe_gen2,
+       .remove = rsnd_src_remove_gen2,
+       .init   = rsnd_src_init_gen2,
+-      .quit   = rsnd_src_quit,
++      .quit   = rsnd_src_quit_gen2,
+       .start  = rsnd_src_start_gen2,
+       .stop   = rsnd_src_stop_gen2,
+       .hw_params = rsnd_src_hw_params,
diff --git a/queue-4.4/asoc-simple-card-don-t-fail-if-sysclk-setting-is-not-supported.patch b/queue-4.4/asoc-simple-card-don-t-fail-if-sysclk-setting-is-not-supported.patch
new file mode 100644 (file)
index 0000000..7dd1a59
--- /dev/null
@@ -0,0 +1,43 @@
+From ee43a1a0cd2a8f33cddfa1323a60b5cfcf865ba0 Mon Sep 17 00:00:00 2001
+From: Aaro Koskinen <aaro.koskinen@iki.fi>
+Date: Sun, 24 Jan 2016 00:36:40 +0200
+Subject: ASoC: simple-card: don't fail if sysclk setting is not supported
+
+From: Aaro Koskinen <aaro.koskinen@iki.fi>
+
+commit ee43a1a0cd2a8f33cddfa1323a60b5cfcf865ba0 upstream.
+
+Commit e22579713ae1 ("ASoC: simple card: set cpu-dai sysclk
+with mclk-fs") added sysclk / SND_SOC_CLOCK_OUT setting, that makes
+asoc_simple_card_hw_params fail if the operation is not supported,
+although the intention clearly was to ignore ENOTSUPP. Fix it.
+
+The patch fixes audio playback on Kirkwood / OpenRD client,
+where the following errors are seen:
+
+       asoc-simple-card sound: ASoC: machine hw_params failed: -524
+       alsa-lib: /alsa-lib-1.0.28/src/pcm/pcm_hw.c:327:(snd_pcm_hw_hw_params) SNDRV_PCM_IOCTL_HW_PARAMS failed (-524): Unknown error 524
+
+Fixes: e22579713ae1 ("ASoC: simple card: set cpu-dai sysclk with mclk-fs")
+Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi>
+Reviewed-by: Andrew Lunn <andrew@lunn.ch>
+Signed-off-by: Mark Brown <broonie@kernel.org>
+Signed-off-by: Thong Ho <thong.ho.px@rvc.renesas.com>
+Signed-off-by: Nhan Nguyen <nhan.nguyen.yb@renesas.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ sound/soc/generic/simple-card.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/sound/soc/generic/simple-card.c
++++ b/sound/soc/generic/simple-card.c
+@@ -100,7 +100,7 @@ static int asoc_simple_card_hw_params(st
+               if (ret && ret != -ENOTSUPP)
+                       goto err;
+       }
+-
++      return 0;
+ err:
+       return ret;
+ }
index be8bfde794c95b54223c209eb219710987bffcf8..ec4c8f68a4c7d2a4871c8d202056b0db0f176c35 100644 (file)
@@ -41,3 +41,5 @@ android-binder-fix-proc-tsk-check.patch
 iio-imu-adis16480-fix-acceleration-scale-factor-for-adis16480.patch
 iio-hid-sensor-trigger-fix-the-race-with-user-space-powering-up-sensors.patch
 staging-rtl8188eu-add-rnx-n150nub-support.patch
+asoc-simple-card-don-t-fail-if-sysclk-setting-is-not-supported.patch
+asoc-rsnd-disable-src.out-only-when-stop-timing.patch