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: Ondrej Zary <linux@rainbow-software.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
                        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);