diff options
author | Oswald Buddenhagen <oswald.buddenhagen@gmx.de> | 2023-05-16 11:36:10 +0200 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2023-05-17 17:04:34 +0200 |
commit | 35a60d1edff4dec9a31862a3515676cd0fafe4e4 (patch) | |
tree | 93ccdcddca6eac7f9cc602f075dc0a0756145e74 /drivers/clk/clk-lmk04832.c | |
parent | a61c695aee87ba9c9f6b2996f98e933e3c33a049 (diff) |
ALSA: emu10k1: rewire {en,dis}abling interrupts for PCM playback
We now enable ints even before triggering, and disable them only after
stopping - otherwise there is a race condition we may plausibly run into
when we pause/resume near the end of the buffer.
Updating the epcm->running flag is moved the same way, as it affects the
*_pointer() functions, which are called by the interrupt handler.
Also, factor these out to own functions, for clarity.
For multi-channel, the extra voice is now triggered after all regular
voices - we wouldn't want to receive an int before all channels have
passed the period boundary.
Signed-off-by: Oswald Buddenhagen <oswald.buddenhagen@gmx.de>
Link: https://lore.kernel.org/r/20230516093612.3536451-5-oswald.buddenhagen@gmx.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'drivers/clk/clk-lmk04832.c')
0 files changed, 0 insertions, 0 deletions