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)
committerTakashi Iwai <tiwai@suse.de>
Sun, 16 Dec 2018 09:11:29 +0000 (10:11 +0100)
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>
sound/firewire/fireface/ff-protocol-ff400.c

index 8f34174ee81354922136dd03e055e9646c322e0c..fd257051d4a4b9e9d659cb23756255e2a59a7de3 100644 (file)
@@ -86,7 +86,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