Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ALSA: oxygen: Support PCM sync_stop

The driver invokes snd_pcm_period_elapsed() simply from the interrupt
handler. Set card->sync_irq for enabling the missing sync_stop PCM
operation, as well as removing the superfluous synchronize_irq()
call.

Link: https://lore.kernel.org/r/20191210063454.31603-30-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>

+1 -1
+1 -1
sound/pci/oxygen/oxygen_lib.c
··· 661 661 goto err_card; 662 662 } 663 663 chip->irq = pci->irq; 664 + card->sync_irq = chip->irq; 664 665 665 666 strcpy(card->driver, chip->model.chip); 666 667 strcpy(card->shortname, chip->model.shortname); ··· 744 743 oxygen_write16(chip, OXYGEN_INTERRUPT_MASK, 0); 745 744 spin_unlock_irq(&chip->reg_lock); 746 745 747 - synchronize_irq(chip->irq); 748 746 flush_work(&chip->spdif_input_bits_work); 749 747 flush_work(&chip->gpio_work); 750 748 chip->interrupt_mask = saved_interrupt_mask;