[alsa-cvslog] CVS: alsa-kernel/isa es18xx.c,1.33,1.34 opl3sa2.c,1.24,1.25 sgalaxy.c,1.16,1.17
Brought to you by:
perex
From: Jaroslav K. <pe...@us...> - 2003-04-23 10:03:02
|
Update of /cvsroot/alsa/alsa-kernel/isa In directory sc8-pr-cvs1:/tmp/cvs-serv8543/alsa-kernel/isa Modified Files: es18xx.c opl3sa2.c sgalaxy.c Log Message: irqreturn_t changes for 2.5 Index: es18xx.c =================================================================== RCS file: /cvsroot/alsa/alsa-kernel/isa/es18xx.c,v retrieving revision 1.33 retrieving revision 1.34 diff -u -r1.33 -r1.34 --- es18xx.c 11 Apr 2003 07:45:22 -0000 1.33 +++ es18xx.c 23 Apr 2003 10:01:33 -0000 1.34 @@ -727,12 +727,11 @@ return snd_es18xx_playback2_trigger(chip, substream, cmd); } -static void snd_es18xx_interrupt(int irq, void *dev_id, struct pt_regs *regs) +static irqreturn_t snd_es18xx_interrupt(int irq, void *dev_id, struct pt_regs *regs) { - es18xx_t *chip = snd_magic_cast(es18xx_t, dev_id, return); + es18xx_t *chip = snd_magic_cast(es18xx_t, dev_id, return IRQ_NONE); unsigned char status; - if (chip->caps & ES18XX_CONTROL) { /* Read Interrupt status */ status = inb(chip->ctrl_port + 6); @@ -787,7 +786,7 @@ /* ack interrupt */ snd_es18xx_mixer_write(chip, 0x66, 0x00); } - + return IRQ_HANDLED; } static snd_pcm_uframes_t snd_es18xx_playback_pointer(snd_pcm_substream_t * substream) Index: opl3sa2.c =================================================================== RCS file: /cvsroot/alsa/alsa-kernel/isa/opl3sa2.c,v retrieving revision 1.24 retrieving revision 1.25 diff -u -r1.24 -r1.25 --- opl3sa2.c 11 Apr 2003 07:40:26 -0000 1.24 +++ opl3sa2.c 23 Apr 2003 10:01:34 -0000 1.25 @@ -297,26 +297,34 @@ return 0; } -static void snd_opl3sa2_interrupt(int irq, void *dev_id, struct pt_regs *regs) +static irqreturn_t snd_opl3sa2_interrupt(int irq, void *dev_id, struct pt_regs *regs) { unsigned short status; - opl3sa2_t *chip = snd_magic_cast(opl3sa2_t, dev_id, return); + opl3sa2_t *chip = snd_magic_cast(opl3sa2_t, dev_id, return IRQ_NONE); + int handled = 0; if (chip == NULL || chip->card == NULL) - return; + return IRQ_NONE; status = snd_opl3sa2_read(chip, OPL3SA2_IRQ_STATUS); - if (status & 0x20) + if (status & 0x20) { + handled = 1; snd_opl3_interrupt(chip->synth); + } - if ((status & 0x10) && chip->rmidi != NULL) + if ((status & 0x10) && chip->rmidi != NULL) { + handled = 1; snd_mpu401_uart_interrupt(irq, chip->rmidi->private_data, regs); + } - if (status & 0x07) /* TI,CI,PI */ + if (status & 0x07) { /* TI,CI,PI */ + handled = 1; snd_cs4231_interrupt(irq, chip->cs4231, regs); + } if (status & 0x40) { /* hardware volume change */ + handled = 1; /* reading from Master Lch register at 0x07 clears this bit */ snd_opl3sa2_read(chip, OPL3SA2_MASTER_RIGHT); snd_opl3sa2_read(chip, OPL3SA2_MASTER_LEFT); @@ -325,6 +333,7 @@ snd_ctl_notify(chip->card, SNDRV_CTL_EVENT_MASK_VALUE, &chip->master_volume->id); } } + return IRQ_RETVAL(handled); } #define OPL3SA2_SINGLE(xname, xindex, reg, shift, mask, invert) \ Index: sgalaxy.c =================================================================== RCS file: /cvsroot/alsa/alsa-kernel/isa/sgalaxy.c,v retrieving revision 1.16 retrieving revision 1.17 diff -u -r1.16 -r1.17 --- sgalaxy.c 7 Apr 2003 15:54:37 -0000 1.16 +++ sgalaxy.c 23 Apr 2003 10:01:34 -0000 1.17 @@ -112,8 +112,9 @@ return 0; } -static void snd_sgalaxy_dummy_interrupt(int irq, void *dev_id, struct pt_regs *regs) +static irqreturn_t snd_sgalaxy_dummy_interrupt(int irq, void *dev_id, struct pt_regs *regs) { + return IRQ_NONE; } static int __init snd_sgalaxy_setup_wss(unsigned long port, int irq, int dma) |