ALSA: fireface: fix for state to fetch PCM frames
authorTakashi Sakamoto <o-takashi@sakamocchi.jp>
Sat, 15 Dec 2018 10:06:48 +0000 (19:06 +0900)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 9 Jan 2019 16:14:47 +0000 (17:14 +0100)
commit 3d16200a3e55a39caa1c88419cb559c00316f721 upstream.

According to my memo at hand and saved records, writing 0x00000001 to
SND_FF_REG_FETCH_PCM_FRAMES disables fetching PCM frames in corresponding
channel, however current implement uses reversed logic. This results in
muted volume in device side during playback.

This commit corrects the bug.

Cc: <stable@vger.kernel.org> # v4.12+
Fixes: 76fdb3a9e13a ('ALSA: fireface: add support for Fireface 400')
Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
sound/firewire/fireface/ff-protocol-ff400.c

index b47954a6b8aba6efdb503e85162e3f6d3e36afca..bb0c1abf47182b53f04398cf639f869d59516e72 100644 (file)
@@ -152,7 +152,7 @@ static int ff400_switch_fetching_mode(struct snd_ff *ff, bool enable)
        if (reg == NULL)
                return -ENOMEM;
 
-       if (enable) {
+       if (!enable) {
                /*
                 * Each quadlet is corresponding to data channels in a data
                 * blocks in reverse order. Precisely, quadlets for available