| From eab3c4db193f5fcccf70e884de9a922ca2c63d80 Mon Sep 17 00:00:00 2001 |
| From: Takashi Iwai <tiwai@suse.de> |
| Date: Mon, 29 Feb 2016 14:26:43 +0100 |
| Subject: ALSA: hdsp: Fix wrong boolean ctl value accesses |
| |
| From: Takashi Iwai <tiwai@suse.de> |
| |
| commit eab3c4db193f5fcccf70e884de9a922ca2c63d80 upstream. |
| |
| snd-hdsp 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/hdsp.c | 4 ++-- |
| 1 file changed, 2 insertions(+), 2 deletions(-) |
| |
| --- a/sound/pci/rme9652/hdsp.c |
| +++ b/sound/pci/rme9652/hdsp.c |
| @@ -2923,7 +2923,7 @@ static int snd_hdsp_get_dds_offset(struc |
| { |
| struct hdsp *hdsp = snd_kcontrol_chip(kcontrol); |
| |
| - ucontrol->value.enumerated.item[0] = hdsp_dds_offset(hdsp); |
| + ucontrol->value.integer.value[0] = hdsp_dds_offset(hdsp); |
| return 0; |
| } |
| |
| @@ -2935,7 +2935,7 @@ static int snd_hdsp_put_dds_offset(struc |
| |
| if (!snd_hdsp_use_is_exclusive(hdsp)) |
| return -EBUSY; |
| - val = ucontrol->value.enumerated.item[0]; |
| + val = ucontrol->value.integer.value[0]; |
| spin_lock_irq(&hdsp->lock); |
| if (val != hdsp_dds_offset(hdsp)) |
| change = (hdsp_set_dds_offset(hdsp, val) == 0) ? 1 : 0; |