| From 537e48136295c5860a92138c5ea3959b9542868b Mon Sep 17 00:00:00 2001 |
| From: Takashi Iwai <tiwai@suse.de> |
| Date: Mon, 29 Feb 2016 14:25:16 +0100 |
| Subject: ALSA: hdspm: Fix wrong boolean ctl value accesses |
| |
| From: Takashi Iwai <tiwai@suse.de> |
| |
| commit 537e48136295c5860a92138c5ea3959b9542868b upstream. |
| |
| snd-hdspm driver accesses enum item values (int) instead of boolean |
| values (long) wrongly for some ctl elements. This patch fixes them. |
| |
| Signed-off-by: Takashi Iwai <tiwai@suse.de> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| sound/pci/rme9652/hdspm.c | 8 ++++---- |
| 1 file changed, 4 insertions(+), 4 deletions(-) |
| |
| --- a/sound/pci/rme9652/hdspm.c |
| +++ b/sound/pci/rme9652/hdspm.c |
| @@ -2091,7 +2091,7 @@ static int snd_hdspm_put_system_sample_r |
| { |
| struct hdspm *hdspm = snd_kcontrol_chip(kcontrol); |
| |
| - hdspm_set_dds_value(hdspm, ucontrol->value.enumerated.item[0]); |
| + hdspm_set_dds_value(hdspm, ucontrol->value.integer.value[0]); |
| return 0; |
| } |
| |
| @@ -4199,7 +4199,7 @@ static int snd_hdspm_get_tco_word_term(s |
| { |
| struct hdspm *hdspm = snd_kcontrol_chip(kcontrol); |
| |
| - ucontrol->value.enumerated.item[0] = hdspm->tco->term; |
| + ucontrol->value.integer.value[0] = hdspm->tco->term; |
| |
| return 0; |
| } |
| @@ -4210,8 +4210,8 @@ static int snd_hdspm_put_tco_word_term(s |
| { |
| struct hdspm *hdspm = snd_kcontrol_chip(kcontrol); |
| |
| - if (hdspm->tco->term != ucontrol->value.enumerated.item[0]) { |
| - hdspm->tco->term = ucontrol->value.enumerated.item[0]; |
| + if (hdspm->tco->term != ucontrol->value.integer.value[0]) { |
| + hdspm->tco->term = ucontrol->value.integer.value[0]; |
| |
| hdspm_tco_write(hdspm); |
| |