提交 b4e2a16f 编写于 作者: O Ondrej Zary 提交者: Takashi Iwai

ALSA: wss_lib: Fix resume on Yamaha OPL3-SAx

Yamaha OPL3-SAx chips don't resume properly when playback is running -
garbage is played after resume. Restoring the CS4231_PLAYBK_FORMAT register
last fixes the problem.
Signed-off-by: NOndrej Zary <linux@rainbow-software.org>
Signed-off-by: NTakashi Iwai <tiwai@suse.de>
上级 ca3273fb
......@@ -1656,6 +1656,10 @@ static void snd_wss_resume(struct snd_wss *chip)
break;
}
}
/* Yamaha needs this to resume properly */
if (chip->hardware == WSS_HW_OPL3SA2)
snd_wss_out(chip, CS4231_PLAYBK_FORMAT,
chip->image[CS4231_PLAYBK_FORMAT]);
spin_unlock_irqrestore(&chip->reg_lock, flags);
#if 1
snd_wss_mce_down(chip);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册