From dbb71ab05f39162e7e65dbde36cd60be50a4bd5c Mon Sep 17 00:00:00 2001 From: Takashi Iwai Date: Tue, 10 Dec 2019 07:34:18 +0100 Subject: ALSA: es1968: 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-20-tiwai@suse.de Signed-off-by: Takashi Iwai --- sound/pci/es1968.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'sound/pci/es1968.c') diff --git a/sound/pci/es1968.c b/sound/pci/es1968.c index 4f5063ebce89..3610aa1da94c 100644 --- a/sound/pci/es1968.c +++ b/sound/pci/es1968.c @@ -2602,8 +2602,6 @@ static int snd_es1968_free(struct es1968 *chip) #endif if (chip->io_port) { - if (chip->irq >= 0) - synchronize_irq(chip->irq); outw(1, chip->io_port + 0x04); /* clear WP interrupts */ outw(0, chip->io_port + ESM_PORT_HOST_IRQ); /* disable IRQ */ } @@ -2712,6 +2710,7 @@ static int snd_es1968_create(struct snd_card *card, return -EBUSY; } chip->irq = pci->irq; + card->sync_irq = chip->irq; /* Clear Maestro_map */ for (i = 0; i < 32; i++) -- cgit v1.2.3