From: Greg Kroah-Hartman Date: Fri, 3 Apr 2015 18:26:14 +0000 (+0200) Subject: 3.19-stable patches X-Git-Tag: v3.10.74~17 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=ce6d9ee5e9f98147ed4efe6cf58df87b60f75550;p=thirdparty%2Fkernel%2Fstable-queue.git 3.19-stable patches 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 --- 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 index 00000000000..6988f9b9e59 --- /dev/null +++ b/queue-3.19/asoc-adav80x-fix-wrong-value-references-for-boolean-kctl.patch @@ -0,0 +1,43 @@ +From 2bf4c1d483d911cda5dd385527194d23e5cea73d Mon Sep 17 00:00:00 2001 +From: Takashi Iwai +Date: Tue, 10 Mar 2015 12:39:03 +0100 +Subject: ASoC: adav80x: Fix wrong value references for boolean kctl + +From: Takashi Iwai + +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 +Acked-by: Lars-Peter Clausen +Signed-off-by: Mark Brown +Signed-off-by: Greg Kroah-Hartman + +--- + 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 index 00000000000..8c9ff2ea6f4 --- /dev/null +++ b/queue-3.19/asoc-ak4641-fix-wrong-value-references-for-boolean-kctl.patch @@ -0,0 +1,42 @@ +From 08641d9b7bf915144a57a736b42642e13eb1167f Mon Sep 17 00:00:00 2001 +From: Takashi Iwai +Date: Tue, 10 Mar 2015 12:39:04 +0100 +Subject: ASoC: ak4641: Fix wrong value references for boolean kctl + +From: Takashi Iwai + +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 +Signed-off-by: Mark Brown +Signed-off-by: Greg Kroah-Hartman + +--- + 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 index 00000000000..ec548aeefac --- /dev/null +++ b/queue-3.19/asoc-tas5086-fix-wrong-value-references-for-boolean-kctl.patch @@ -0,0 +1,42 @@ +From 4c523ef61160b7d478371ddc9f48c8ce0a00d675 Mon Sep 17 00:00:00 2001 +From: Takashi Iwai +Date: Tue, 10 Mar 2015 12:39:08 +0100 +Subject: ASoC: tas5086: Fix wrong value references for boolean kctl + +From: Takashi Iwai + +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 +Signed-off-by: Mark Brown +Signed-off-by: Greg Kroah-Hartman + +--- + 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 index 00000000000..b0fa2fb498a --- /dev/null +++ b/queue-3.19/asoc-wm2000-fix-wrong-value-references-for-boolean-kctl.patch @@ -0,0 +1,61 @@ +From 00a14c2968e3d55817e0fa35c78106ca840537bf Mon Sep 17 00:00:00 2001 +From: Takashi Iwai +Date: Tue, 10 Mar 2015 12:39:09 +0100 +Subject: ASoC: wm2000: Fix wrong value references for boolean kctl + +From: Takashi Iwai + +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 +Acked-by: Charles Keepax +Signed-off-by: Mark Brown +Signed-off-by: Greg Kroah-Hartman + +--- + 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 index 00000000000..09b03446ccd --- /dev/null +++ b/queue-3.19/asoc-wm8731-fix-wrong-value-references-for-boolean-kctl.patch @@ -0,0 +1,43 @@ +From bd14016fbf31aa199026f1e2358eab695f374eb1 Mon Sep 17 00:00:00 2001 +From: Takashi Iwai +Date: Tue, 10 Mar 2015 12:39:10 +0100 +Subject: ASoC: wm8731: Fix wrong value references for boolean kctl + +From: Takashi Iwai + +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 +Acked-by: Charles Keepax +Signed-off-by: Mark Brown +Signed-off-by: Greg Kroah-Hartman + +--- + 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 index 00000000000..cbbc4e3e2e4 --- /dev/null +++ b/queue-3.19/asoc-wm8903-fix-wrong-value-references-for-boolean-kctl.patch @@ -0,0 +1,43 @@ +From 24cc883c1fd16df34211ae41624aa6d3cd906693 Mon Sep 17 00:00:00 2001 +From: Takashi Iwai +Date: Tue, 10 Mar 2015 12:39:11 +0100 +Subject: ASoC: wm8903: Fix wrong value references for boolean kctl + +From: Takashi Iwai + +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 +Acked-by: Charles Keepax +Signed-off-by: Mark Brown +Signed-off-by: Greg Kroah-Hartman + +--- + 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 index 00000000000..790c60c1d08 --- /dev/null +++ b/queue-3.19/asoc-wm8904-fix-wrong-value-references-for-boolean-kctl.patch @@ -0,0 +1,43 @@ +From eaddf6fd959074f6a6e71deffe079c71eef35da6 Mon Sep 17 00:00:00 2001 +From: Takashi Iwai +Date: Tue, 10 Mar 2015 12:39:12 +0100 +Subject: ASoC: wm8904: Fix wrong value references for boolean kctl + +From: Takashi Iwai + +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 +Acked-by: Charles Keepax +Signed-off-by: Mark Brown +Signed-off-by: Greg Kroah-Hartman + +--- + 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 index 00000000000..8b7a64edf84 --- /dev/null +++ b/queue-3.19/asoc-wm8955-fix-wrong-value-references-for-boolean-kctl.patch @@ -0,0 +1,43 @@ +From 07892b10356f17717abdc578acbef72db86c880e Mon Sep 17 00:00:00 2001 +From: Takashi Iwai +Date: Tue, 10 Mar 2015 12:39:13 +0100 +Subject: ASoC: wm8955: Fix wrong value references for boolean kctl + +From: Takashi Iwai + +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 +Acked-by: Charles Keepax +Signed-off-by: Mark Brown +Signed-off-by: Greg Kroah-Hartman + +--- + 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 index 00000000000..026cf66da56 --- /dev/null +++ b/queue-3.19/asoc-wm8960-fix-wrong-value-references-for-boolean-kctl.patch @@ -0,0 +1,43 @@ +From b4a18c8b1af15ebfa9054a3d2aef7b0a7e6f2a05 Mon Sep 17 00:00:00 2001 +From: Takashi Iwai +Date: Tue, 10 Mar 2015 12:39:14 +0100 +Subject: ASoC: wm8960: Fix wrong value references for boolean kctl + +From: Takashi Iwai + +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 +Acked-by: Charles Keepax +Signed-off-by: Mark Brown +Signed-off-by: Greg Kroah-Hartman + +--- + 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 index 00000000000..5751e5b6d59 --- /dev/null +++ b/queue-3.19/asoc-wm9712-fix-wrong-value-references-for-boolean-kctl.patch @@ -0,0 +1,52 @@ +From 4b0b669b86a963f71feaa1a694e881832fdf4f86 Mon Sep 17 00:00:00 2001 +From: Takashi Iwai +Date: Tue, 10 Mar 2015 12:39:15 +0100 +Subject: ASoC: wm9712: Fix wrong value references for boolean kctl + +From: Takashi Iwai + +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 +Acked-by: Charles Keepax +Signed-off-by: Mark Brown +Signed-off-by: Greg Kroah-Hartman + +--- + 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 index 00000000000..f02684b5b1c --- /dev/null +++ b/queue-3.19/asoc-wm9713-fix-wrong-value-references-for-boolean-kctl.patch @@ -0,0 +1,52 @@ +From 87a8b286e2f63c048a586dc677140d4a5b5808aa Mon Sep 17 00:00:00 2001 +From: Takashi Iwai +Date: Tue, 10 Mar 2015 12:39:16 +0100 +Subject: ASoC: wm9713: Fix wrong value references for boolean kctl + +From: Takashi Iwai + +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 +Acked-by: Charles Keepax +Signed-off-by: Mark Brown +Signed-off-by: Greg Kroah-Hartman + +--- + 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; diff --git a/queue-3.19/series b/queue-3.19/series index 29d22c65eef..b9951490fe8 100644 --- a/queue-3.19/series +++ b/queue-3.19/series @@ -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