]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
3.19-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 3 Apr 2015 18:26:14 +0000 (20:26 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 3 Apr 2015 18:26:14 +0000 (20:26 +0200)
added patches:
asoc-adav80x-fix-wrong-value-references-for-boolean-kctl.patch
asoc-ak4641-fix-wrong-value-references-for-boolean-kctl.patch
asoc-tas5086-fix-wrong-value-references-for-boolean-kctl.patch
asoc-wm2000-fix-wrong-value-references-for-boolean-kctl.patch
asoc-wm8731-fix-wrong-value-references-for-boolean-kctl.patch
asoc-wm8903-fix-wrong-value-references-for-boolean-kctl.patch
asoc-wm8904-fix-wrong-value-references-for-boolean-kctl.patch
asoc-wm8955-fix-wrong-value-references-for-boolean-kctl.patch
asoc-wm8960-fix-wrong-value-references-for-boolean-kctl.patch
asoc-wm9712-fix-wrong-value-references-for-boolean-kctl.patch
asoc-wm9713-fix-wrong-value-references-for-boolean-kctl.patch

12 files changed:
queue-3.19/asoc-adav80x-fix-wrong-value-references-for-boolean-kctl.patch [new file with mode: 0644]
queue-3.19/asoc-ak4641-fix-wrong-value-references-for-boolean-kctl.patch [new file with mode: 0644]
queue-3.19/asoc-tas5086-fix-wrong-value-references-for-boolean-kctl.patch [new file with mode: 0644]
queue-3.19/asoc-wm2000-fix-wrong-value-references-for-boolean-kctl.patch [new file with mode: 0644]
queue-3.19/asoc-wm8731-fix-wrong-value-references-for-boolean-kctl.patch [new file with mode: 0644]
queue-3.19/asoc-wm8903-fix-wrong-value-references-for-boolean-kctl.patch [new file with mode: 0644]
queue-3.19/asoc-wm8904-fix-wrong-value-references-for-boolean-kctl.patch [new file with mode: 0644]
queue-3.19/asoc-wm8955-fix-wrong-value-references-for-boolean-kctl.patch [new file with mode: 0644]
queue-3.19/asoc-wm8960-fix-wrong-value-references-for-boolean-kctl.patch [new file with mode: 0644]
queue-3.19/asoc-wm9712-fix-wrong-value-references-for-boolean-kctl.patch [new file with mode: 0644]
queue-3.19/asoc-wm9713-fix-wrong-value-references-for-boolean-kctl.patch [new file with mode: 0644]
queue-3.19/series

diff --git a/queue-3.19/asoc-adav80x-fix-wrong-value-references-for-boolean-kctl.patch b/queue-3.19/asoc-adav80x-fix-wrong-value-references-for-boolean-kctl.patch
new file mode 100644 (file)
index 0000000..6988f9b
--- /dev/null
@@ -0,0 +1,43 @@
+From 2bf4c1d483d911cda5dd385527194d23e5cea73d Mon Sep 17 00:00:00 2001
+From: Takashi Iwai <tiwai@suse.de>
+Date: Tue, 10 Mar 2015 12:39:03 +0100
+Subject: ASoC: adav80x: Fix wrong value references for boolean kctl
+
+From: Takashi Iwai <tiwai@suse.de>
+
+commit 2bf4c1d483d911cda5dd385527194d23e5cea73d upstream.
+
+The correct values referred by a boolean control are
+value.integer.value[], not value.enumerated.item[].
+The former is long while the latter is int, so it's even incompatible
+on 64bit architectures.
+
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+Acked-by: Lars-Peter Clausen <lars@metafoo.de>
+Signed-off-by: Mark Brown <broonie@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ sound/soc/codecs/adav80x.c |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/sound/soc/codecs/adav80x.c
++++ b/sound/soc/codecs/adav80x.c
+@@ -317,7 +317,7 @@ static int adav80x_put_deemph(struct snd
+ {
+       struct snd_soc_codec *codec = snd_soc_kcontrol_codec(kcontrol);
+       struct adav80x *adav80x = snd_soc_codec_get_drvdata(codec);
+-      unsigned int deemph = ucontrol->value.enumerated.item[0];
++      unsigned int deemph = ucontrol->value.integer.value[0];
+       if (deemph > 1)
+               return -EINVAL;
+@@ -333,7 +333,7 @@ static int adav80x_get_deemph(struct snd
+       struct snd_soc_codec *codec = snd_soc_kcontrol_codec(kcontrol);
+       struct adav80x *adav80x = snd_soc_codec_get_drvdata(codec);
+-      ucontrol->value.enumerated.item[0] = adav80x->deemph;
++      ucontrol->value.integer.value[0] = adav80x->deemph;
+       return 0;
+ };
diff --git a/queue-3.19/asoc-ak4641-fix-wrong-value-references-for-boolean-kctl.patch b/queue-3.19/asoc-ak4641-fix-wrong-value-references-for-boolean-kctl.patch
new file mode 100644 (file)
index 0000000..8c9ff2e
--- /dev/null
@@ -0,0 +1,42 @@
+From 08641d9b7bf915144a57a736b42642e13eb1167f Mon Sep 17 00:00:00 2001
+From: Takashi Iwai <tiwai@suse.de>
+Date: Tue, 10 Mar 2015 12:39:04 +0100
+Subject: ASoC: ak4641: Fix wrong value references for boolean kctl
+
+From: Takashi Iwai <tiwai@suse.de>
+
+commit 08641d9b7bf915144a57a736b42642e13eb1167f upstream.
+
+The correct values referred by a boolean control are
+value.integer.value[], not value.enumerated.item[].
+The former is long while the latter is int, so it's even incompatible
+on 64bit architectures.
+
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+Signed-off-by: Mark Brown <broonie@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ sound/soc/codecs/ak4641.c |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/sound/soc/codecs/ak4641.c
++++ b/sound/soc/codecs/ak4641.c
+@@ -76,7 +76,7 @@ static int ak4641_put_deemph(struct snd_
+ {
+       struct snd_soc_codec *codec = snd_soc_kcontrol_codec(kcontrol);
+       struct ak4641_priv *ak4641 = snd_soc_codec_get_drvdata(codec);
+-      int deemph = ucontrol->value.enumerated.item[0];
++      int deemph = ucontrol->value.integer.value[0];
+       if (deemph > 1)
+               return -EINVAL;
+@@ -92,7 +92,7 @@ static int ak4641_get_deemph(struct snd_
+       struct snd_soc_codec *codec = snd_soc_kcontrol_codec(kcontrol);
+       struct ak4641_priv *ak4641 = snd_soc_codec_get_drvdata(codec);
+-      ucontrol->value.enumerated.item[0] = ak4641->deemph;
++      ucontrol->value.integer.value[0] = ak4641->deemph;
+       return 0;
+ };
diff --git a/queue-3.19/asoc-tas5086-fix-wrong-value-references-for-boolean-kctl.patch b/queue-3.19/asoc-tas5086-fix-wrong-value-references-for-boolean-kctl.patch
new file mode 100644 (file)
index 0000000..ec548ae
--- /dev/null
@@ -0,0 +1,42 @@
+From 4c523ef61160b7d478371ddc9f48c8ce0a00d675 Mon Sep 17 00:00:00 2001
+From: Takashi Iwai <tiwai@suse.de>
+Date: Tue, 10 Mar 2015 12:39:08 +0100
+Subject: ASoC: tas5086: Fix wrong value references for boolean kctl
+
+From: Takashi Iwai <tiwai@suse.de>
+
+commit 4c523ef61160b7d478371ddc9f48c8ce0a00d675 upstream.
+
+The correct values referred by a boolean control are
+value.integer.value[], not value.enumerated.item[].
+The former is long while the latter is int, so it's even incompatible
+on 64bit architectures.
+
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+Signed-off-by: Mark Brown <broonie@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ sound/soc/codecs/tas5086.c |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/sound/soc/codecs/tas5086.c
++++ b/sound/soc/codecs/tas5086.c
+@@ -281,7 +281,7 @@ static int tas5086_get_deemph(struct snd
+       struct snd_soc_codec *codec = snd_soc_kcontrol_codec(kcontrol);
+       struct tas5086_private *priv = snd_soc_codec_get_drvdata(codec);
+-      ucontrol->value.enumerated.item[0] = priv->deemph;
++      ucontrol->value.integer.value[0] = priv->deemph;
+       return 0;
+ }
+@@ -292,7 +292,7 @@ static int tas5086_put_deemph(struct snd
+       struct snd_soc_codec *codec = snd_soc_kcontrol_codec(kcontrol);
+       struct tas5086_private *priv = snd_soc_codec_get_drvdata(codec);
+-      priv->deemph = ucontrol->value.enumerated.item[0];
++      priv->deemph = ucontrol->value.integer.value[0];
+       return tas5086_set_deemph(codec);
+ }
diff --git a/queue-3.19/asoc-wm2000-fix-wrong-value-references-for-boolean-kctl.patch b/queue-3.19/asoc-wm2000-fix-wrong-value-references-for-boolean-kctl.patch
new file mode 100644 (file)
index 0000000..b0fa2fb
--- /dev/null
@@ -0,0 +1,61 @@
+From 00a14c2968e3d55817e0fa35c78106ca840537bf Mon Sep 17 00:00:00 2001
+From: Takashi Iwai <tiwai@suse.de>
+Date: Tue, 10 Mar 2015 12:39:09 +0100
+Subject: ASoC: wm2000: Fix wrong value references for boolean kctl
+
+From: Takashi Iwai <tiwai@suse.de>
+
+commit 00a14c2968e3d55817e0fa35c78106ca840537bf upstream.
+
+The correct values referred by a boolean control are
+value.integer.value[], not value.enumerated.item[].
+The former is long while the latter is int, so it's even incompatible
+on 64bit architectures.
+
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+Acked-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
+Signed-off-by: Mark Brown <broonie@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ sound/soc/codecs/wm2000.c |    8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+--- a/sound/soc/codecs/wm2000.c
++++ b/sound/soc/codecs/wm2000.c
+@@ -610,7 +610,7 @@ static int wm2000_anc_mode_get(struct sn
+       struct snd_soc_codec *codec = snd_soc_kcontrol_codec(kcontrol);
+       struct wm2000_priv *wm2000 = dev_get_drvdata(codec->dev);
+-      ucontrol->value.enumerated.item[0] = wm2000->anc_active;
++      ucontrol->value.integer.value[0] = wm2000->anc_active;
+       return 0;
+ }
+@@ -620,7 +620,7 @@ static int wm2000_anc_mode_put(struct sn
+ {
+       struct snd_soc_codec *codec = snd_soc_kcontrol_codec(kcontrol);
+       struct wm2000_priv *wm2000 = dev_get_drvdata(codec->dev);
+-      int anc_active = ucontrol->value.enumerated.item[0];
++      int anc_active = ucontrol->value.integer.value[0];
+       int ret;
+       if (anc_active > 1)
+@@ -643,7 +643,7 @@ static int wm2000_speaker_get(struct snd
+       struct snd_soc_codec *codec = snd_soc_kcontrol_codec(kcontrol);
+       struct wm2000_priv *wm2000 = dev_get_drvdata(codec->dev);
+-      ucontrol->value.enumerated.item[0] = wm2000->spk_ena;
++      ucontrol->value.integer.value[0] = wm2000->spk_ena;
+       return 0;
+ }
+@@ -653,7 +653,7 @@ static int wm2000_speaker_put(struct snd
+ {
+       struct snd_soc_codec *codec = snd_soc_kcontrol_codec(kcontrol);
+       struct wm2000_priv *wm2000 = dev_get_drvdata(codec->dev);
+-      int val = ucontrol->value.enumerated.item[0];
++      int val = ucontrol->value.integer.value[0];
+       int ret;
+       if (val > 1)
diff --git a/queue-3.19/asoc-wm8731-fix-wrong-value-references-for-boolean-kctl.patch b/queue-3.19/asoc-wm8731-fix-wrong-value-references-for-boolean-kctl.patch
new file mode 100644 (file)
index 0000000..09b0344
--- /dev/null
@@ -0,0 +1,43 @@
+From bd14016fbf31aa199026f1e2358eab695f374eb1 Mon Sep 17 00:00:00 2001
+From: Takashi Iwai <tiwai@suse.de>
+Date: Tue, 10 Mar 2015 12:39:10 +0100
+Subject: ASoC: wm8731: Fix wrong value references for boolean kctl
+
+From: Takashi Iwai <tiwai@suse.de>
+
+commit bd14016fbf31aa199026f1e2358eab695f374eb1 upstream.
+
+The correct values referred by a boolean control are
+value.integer.value[], not value.enumerated.item[].
+The former is long while the latter is int, so it's even incompatible
+on 64bit architectures.
+
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+Acked-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
+Signed-off-by: Mark Brown <broonie@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ sound/soc/codecs/wm8731.c |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/sound/soc/codecs/wm8731.c
++++ b/sound/soc/codecs/wm8731.c
+@@ -125,7 +125,7 @@ static int wm8731_get_deemph(struct snd_
+       struct snd_soc_codec *codec = snd_soc_kcontrol_codec(kcontrol);
+       struct wm8731_priv *wm8731 = snd_soc_codec_get_drvdata(codec);
+-      ucontrol->value.enumerated.item[0] = wm8731->deemph;
++      ucontrol->value.integer.value[0] = wm8731->deemph;
+       return 0;
+ }
+@@ -135,7 +135,7 @@ static int wm8731_put_deemph(struct snd_
+ {
+       struct snd_soc_codec *codec = snd_soc_kcontrol_codec(kcontrol);
+       struct wm8731_priv *wm8731 = snd_soc_codec_get_drvdata(codec);
+-      int deemph = ucontrol->value.enumerated.item[0];
++      int deemph = ucontrol->value.integer.value[0];
+       int ret = 0;
+       if (deemph > 1)
diff --git a/queue-3.19/asoc-wm8903-fix-wrong-value-references-for-boolean-kctl.patch b/queue-3.19/asoc-wm8903-fix-wrong-value-references-for-boolean-kctl.patch
new file mode 100644 (file)
index 0000000..cbbc4e3
--- /dev/null
@@ -0,0 +1,43 @@
+From 24cc883c1fd16df34211ae41624aa6d3cd906693 Mon Sep 17 00:00:00 2001
+From: Takashi Iwai <tiwai@suse.de>
+Date: Tue, 10 Mar 2015 12:39:11 +0100
+Subject: ASoC: wm8903: Fix wrong value references for boolean kctl
+
+From: Takashi Iwai <tiwai@suse.de>
+
+commit 24cc883c1fd16df34211ae41624aa6d3cd906693 upstream.
+
+The correct values referred by a boolean control are
+value.integer.value[], not value.enumerated.item[].
+The former is long while the latter is int, so it's even incompatible
+on 64bit architectures.
+
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+Acked-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
+Signed-off-by: Mark Brown <broonie@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ sound/soc/codecs/wm8903.c |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/sound/soc/codecs/wm8903.c
++++ b/sound/soc/codecs/wm8903.c
+@@ -442,7 +442,7 @@ static int wm8903_get_deemph(struct snd_
+       struct snd_soc_codec *codec = snd_soc_kcontrol_codec(kcontrol);
+       struct wm8903_priv *wm8903 = snd_soc_codec_get_drvdata(codec);
+-      ucontrol->value.enumerated.item[0] = wm8903->deemph;
++      ucontrol->value.integer.value[0] = wm8903->deemph;
+       return 0;
+ }
+@@ -452,7 +452,7 @@ static int wm8903_put_deemph(struct snd_
+ {
+       struct snd_soc_codec *codec = snd_soc_kcontrol_codec(kcontrol);
+       struct wm8903_priv *wm8903 = snd_soc_codec_get_drvdata(codec);
+-      int deemph = ucontrol->value.enumerated.item[0];
++      int deemph = ucontrol->value.integer.value[0];
+       int ret = 0;
+       if (deemph > 1)
diff --git a/queue-3.19/asoc-wm8904-fix-wrong-value-references-for-boolean-kctl.patch b/queue-3.19/asoc-wm8904-fix-wrong-value-references-for-boolean-kctl.patch
new file mode 100644 (file)
index 0000000..790c60c
--- /dev/null
@@ -0,0 +1,43 @@
+From eaddf6fd959074f6a6e71deffe079c71eef35da6 Mon Sep 17 00:00:00 2001
+From: Takashi Iwai <tiwai@suse.de>
+Date: Tue, 10 Mar 2015 12:39:12 +0100
+Subject: ASoC: wm8904: Fix wrong value references for boolean kctl
+
+From: Takashi Iwai <tiwai@suse.de>
+
+commit eaddf6fd959074f6a6e71deffe079c71eef35da6 upstream.
+
+The correct values referred by a boolean control are
+value.integer.value[], not value.enumerated.item[].
+The former is long while the latter is int, so it's even incompatible
+on 64bit architectures.
+
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+Acked-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
+Signed-off-by: Mark Brown <broonie@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ sound/soc/codecs/wm8904.c |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/sound/soc/codecs/wm8904.c
++++ b/sound/soc/codecs/wm8904.c
+@@ -525,7 +525,7 @@ static int wm8904_get_deemph(struct snd_
+       struct snd_soc_codec *codec = snd_soc_kcontrol_codec(kcontrol);
+       struct wm8904_priv *wm8904 = snd_soc_codec_get_drvdata(codec);
+-      ucontrol->value.enumerated.item[0] = wm8904->deemph;
++      ucontrol->value.integer.value[0] = wm8904->deemph;
+       return 0;
+ }
+@@ -534,7 +534,7 @@ static int wm8904_put_deemph(struct snd_
+ {
+       struct snd_soc_codec *codec = snd_soc_kcontrol_codec(kcontrol);
+       struct wm8904_priv *wm8904 = snd_soc_codec_get_drvdata(codec);
+-      int deemph = ucontrol->value.enumerated.item[0];
++      int deemph = ucontrol->value.integer.value[0];
+       if (deemph > 1)
+               return -EINVAL;
diff --git a/queue-3.19/asoc-wm8955-fix-wrong-value-references-for-boolean-kctl.patch b/queue-3.19/asoc-wm8955-fix-wrong-value-references-for-boolean-kctl.patch
new file mode 100644 (file)
index 0000000..8b7a64e
--- /dev/null
@@ -0,0 +1,43 @@
+From 07892b10356f17717abdc578acbef72db86c880e Mon Sep 17 00:00:00 2001
+From: Takashi Iwai <tiwai@suse.de>
+Date: Tue, 10 Mar 2015 12:39:13 +0100
+Subject: ASoC: wm8955: Fix wrong value references for boolean kctl
+
+From: Takashi Iwai <tiwai@suse.de>
+
+commit 07892b10356f17717abdc578acbef72db86c880e upstream.
+
+The correct values referred by a boolean control are
+value.integer.value[], not value.enumerated.item[].
+The former is long while the latter is int, so it's even incompatible
+on 64bit architectures.
+
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+Acked-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
+Signed-off-by: Mark Brown <broonie@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ sound/soc/codecs/wm8955.c |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/sound/soc/codecs/wm8955.c
++++ b/sound/soc/codecs/wm8955.c
+@@ -393,7 +393,7 @@ static int wm8955_get_deemph(struct snd_
+       struct snd_soc_codec *codec = snd_soc_kcontrol_codec(kcontrol);
+       struct wm8955_priv *wm8955 = snd_soc_codec_get_drvdata(codec);
+-      ucontrol->value.enumerated.item[0] = wm8955->deemph;
++      ucontrol->value.integer.value[0] = wm8955->deemph;
+       return 0;
+ }
+@@ -402,7 +402,7 @@ static int wm8955_put_deemph(struct snd_
+ {
+       struct snd_soc_codec *codec = snd_soc_kcontrol_codec(kcontrol);
+       struct wm8955_priv *wm8955 = snd_soc_codec_get_drvdata(codec);
+-      int deemph = ucontrol->value.enumerated.item[0];
++      int deemph = ucontrol->value.integer.value[0];
+       if (deemph > 1)
+               return -EINVAL;
diff --git a/queue-3.19/asoc-wm8960-fix-wrong-value-references-for-boolean-kctl.patch b/queue-3.19/asoc-wm8960-fix-wrong-value-references-for-boolean-kctl.patch
new file mode 100644 (file)
index 0000000..026cf66
--- /dev/null
@@ -0,0 +1,43 @@
+From b4a18c8b1af15ebfa9054a3d2aef7b0a7e6f2a05 Mon Sep 17 00:00:00 2001
+From: Takashi Iwai <tiwai@suse.de>
+Date: Tue, 10 Mar 2015 12:39:14 +0100
+Subject: ASoC: wm8960: Fix wrong value references for boolean kctl
+
+From: Takashi Iwai <tiwai@suse.de>
+
+commit b4a18c8b1af15ebfa9054a3d2aef7b0a7e6f2a05 upstream.
+
+The correct values referred by a boolean control are
+value.integer.value[], not value.enumerated.item[].
+The former is long while the latter is int, so it's even incompatible
+on 64bit architectures.
+
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+Acked-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
+Signed-off-by: Mark Brown <broonie@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ sound/soc/codecs/wm8960.c |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/sound/soc/codecs/wm8960.c
++++ b/sound/soc/codecs/wm8960.c
+@@ -182,7 +182,7 @@ static int wm8960_get_deemph(struct snd_
+       struct snd_soc_codec *codec = snd_soc_kcontrol_codec(kcontrol);
+       struct wm8960_priv *wm8960 = snd_soc_codec_get_drvdata(codec);
+-      ucontrol->value.enumerated.item[0] = wm8960->deemph;
++      ucontrol->value.integer.value[0] = wm8960->deemph;
+       return 0;
+ }
+@@ -191,7 +191,7 @@ static int wm8960_put_deemph(struct snd_
+ {
+       struct snd_soc_codec *codec = snd_soc_kcontrol_codec(kcontrol);
+       struct wm8960_priv *wm8960 = snd_soc_codec_get_drvdata(codec);
+-      int deemph = ucontrol->value.enumerated.item[0];
++      int deemph = ucontrol->value.integer.value[0];
+       if (deemph > 1)
+               return -EINVAL;
diff --git a/queue-3.19/asoc-wm9712-fix-wrong-value-references-for-boolean-kctl.patch b/queue-3.19/asoc-wm9712-fix-wrong-value-references-for-boolean-kctl.patch
new file mode 100644 (file)
index 0000000..5751e5b
--- /dev/null
@@ -0,0 +1,52 @@
+From 4b0b669b86a963f71feaa1a694e881832fdf4f86 Mon Sep 17 00:00:00 2001
+From: Takashi Iwai <tiwai@suse.de>
+Date: Tue, 10 Mar 2015 12:39:15 +0100
+Subject: ASoC: wm9712: Fix wrong value references for boolean kctl
+
+From: Takashi Iwai <tiwai@suse.de>
+
+commit 4b0b669b86a963f71feaa1a694e881832fdf4f86 upstream.
+
+The correct values referred by a boolean control are
+value.integer.value[], not value.enumerated.item[].
+The former is long while the latter is int, so it's even incompatible
+on 64bit architectures.
+
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+Acked-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
+Signed-off-by: Mark Brown <broonie@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ sound/soc/codecs/wm9712.c |    6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+--- a/sound/soc/codecs/wm9712.c
++++ b/sound/soc/codecs/wm9712.c
+@@ -180,7 +180,7 @@ static int wm9712_hp_mixer_put(struct sn
+       struct snd_soc_dapm_context *dapm = snd_soc_dapm_kcontrol_dapm(kcontrol);
+       struct snd_soc_codec *codec = snd_soc_dapm_to_codec(dapm);
+       struct wm9712_priv *wm9712 = snd_soc_codec_get_drvdata(codec);
+-      unsigned int val = ucontrol->value.enumerated.item[0];
++      unsigned int val = ucontrol->value.integer.value[0];
+       struct soc_mixer_control *mc =
+               (struct soc_mixer_control *)kcontrol->private_value;
+       unsigned int mixer, mask, shift, old;
+@@ -193,7 +193,7 @@ static int wm9712_hp_mixer_put(struct sn
+       mutex_lock(&wm9712->lock);
+       old = wm9712->hp_mixer[mixer];
+-      if (ucontrol->value.enumerated.item[0])
++      if (ucontrol->value.integer.value[0])
+               wm9712->hp_mixer[mixer] |= mask;
+       else
+               wm9712->hp_mixer[mixer] &= ~mask;
+@@ -231,7 +231,7 @@ static int wm9712_hp_mixer_get(struct sn
+       mixer = mc->shift >> 8;
+       shift = mc->shift & 0xff;
+-      ucontrol->value.enumerated.item[0] =
++      ucontrol->value.integer.value[0] =
+               (wm9712->hp_mixer[mixer] >> shift) & 1;
+       return 0;
diff --git a/queue-3.19/asoc-wm9713-fix-wrong-value-references-for-boolean-kctl.patch b/queue-3.19/asoc-wm9713-fix-wrong-value-references-for-boolean-kctl.patch
new file mode 100644 (file)
index 0000000..f02684b
--- /dev/null
@@ -0,0 +1,52 @@
+From 87a8b286e2f63c048a586dc677140d4a5b5808aa Mon Sep 17 00:00:00 2001
+From: Takashi Iwai <tiwai@suse.de>
+Date: Tue, 10 Mar 2015 12:39:16 +0100
+Subject: ASoC: wm9713: Fix wrong value references for boolean kctl
+
+From: Takashi Iwai <tiwai@suse.de>
+
+commit 87a8b286e2f63c048a586dc677140d4a5b5808aa upstream.
+
+The correct values referred by a boolean control are
+value.integer.value[], not value.enumerated.item[].
+The former is long while the latter is int, so it's even incompatible
+on 64bit architectures.
+
+Signed-off-by: Takashi Iwai <tiwai@suse.de>
+Acked-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
+Signed-off-by: Mark Brown <broonie@kernel.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+---
+ sound/soc/codecs/wm9713.c |    6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+--- a/sound/soc/codecs/wm9713.c
++++ b/sound/soc/codecs/wm9713.c
+@@ -255,7 +255,7 @@ static int wm9713_hp_mixer_put(struct sn
+       struct snd_soc_dapm_context *dapm = snd_soc_dapm_kcontrol_dapm(kcontrol);
+       struct snd_soc_codec *codec = snd_soc_dapm_to_codec(dapm);
+       struct wm9713_priv *wm9713 = snd_soc_codec_get_drvdata(codec);
+-      unsigned int val = ucontrol->value.enumerated.item[0];
++      unsigned int val = ucontrol->value.integer.value[0];
+       struct soc_mixer_control *mc =
+               (struct soc_mixer_control *)kcontrol->private_value;
+       unsigned int mixer, mask, shift, old;
+@@ -268,7 +268,7 @@ static int wm9713_hp_mixer_put(struct sn
+       mutex_lock(&wm9713->lock);
+       old = wm9713->hp_mixer[mixer];
+-      if (ucontrol->value.enumerated.item[0])
++      if (ucontrol->value.integer.value[0])
+               wm9713->hp_mixer[mixer] |= mask;
+       else
+               wm9713->hp_mixer[mixer] &= ~mask;
+@@ -306,7 +306,7 @@ static int wm9713_hp_mixer_get(struct sn
+       mixer = mc->shift >> 8;
+       shift = mc->shift & 0xff;
+-      ucontrol->value.enumerated.item[0] =
++      ucontrol->value.integer.value[0] =
+               (wm9713->hp_mixer[mixer] >> shift) & 1;
+       return 0;
index 29d22c65eefd99a39313e196363b49d26cc912c5..b9951490fe8378fdbd6c90b0ed6772d1fd21f7a2 100644 (file)
@@ -5,3 +5,14 @@ asoc-sgtl5000-remove-useless-register-write-clearing-chrgpump_powerup.patch
 asoc-pcm1681-fix-wrong-value-references-for-boolean-kctl.patch
 asoc-cs4271-fix-wrong-value-references-for-boolean-kctl.patch
 asoc-es8238-fix-wrong-value-references-for-boolean-kctl.patch
+asoc-wm8960-fix-wrong-value-references-for-boolean-kctl.patch
+asoc-tas5086-fix-wrong-value-references-for-boolean-kctl.patch
+asoc-wm8731-fix-wrong-value-references-for-boolean-kctl.patch
+asoc-wm2000-fix-wrong-value-references-for-boolean-kctl.patch
+asoc-wm8903-fix-wrong-value-references-for-boolean-kctl.patch
+asoc-wm8904-fix-wrong-value-references-for-boolean-kctl.patch
+asoc-ak4641-fix-wrong-value-references-for-boolean-kctl.patch
+asoc-adav80x-fix-wrong-value-references-for-boolean-kctl.patch
+asoc-wm8955-fix-wrong-value-references-for-boolean-kctl.patch
+asoc-wm9712-fix-wrong-value-references-for-boolean-kctl.patch
+asoc-wm9713-fix-wrong-value-references-for-boolean-kctl.patch