]> git.hungrycats.org Git - linux/commitdiff
[ARM] Fix Acorn VIDC sound driver.
authorRussell King <rmk@flint.arm.linux.org.uk>
Fri, 20 Feb 2004 22:58:35 +0000 (22:58 +0000)
committerRussell King <rmk@flint.arm.linux.org.uk>
Fri, 20 Feb 2004 22:58:35 +0000 (22:58 +0000)
Update the Acorn VIDC sound interrupt handler to return IRQ_HANDLED.

sound/oss/vidc.c
sound/oss/vidc.h
sound/oss/vidc_fill.S

index cddbb0638c179b03398b29f5c39bec89e869903f..86ad13c7a54fbfb19b1d811e45982868af6943c2 100644 (file)
@@ -324,9 +324,10 @@ static int vidc_audio_prepare_for_input(int dev, int bsize, int bcount)
        return -EINVAL;
 }
 
-static void vidc_audio_dma_interrupt(void)
+static irqreturn_t vidc_audio_dma_interrupt(void)
 {
        DMAbuf_outputintr(vidc_adev, 1);
+       return IRQ_HANDLED;
 }
 
 /*
index 4fbcebf1458ee59597960f9c49ded35fd630e9c8..bab7044572d38b02572e99e3294562e9698fc9db 100644 (file)
@@ -50,7 +50,7 @@ extern unsigned long (*vidc_filler) (unsigned long ibuf, unsigned long iend,
  * Virtual DMA buffer exhausted
  */
 
-extern void     (*dma_interrupt) (void);
+extern irqreturn_t (*dma_interrupt) (void);
 
 /*
  * Virtual DMA buffer addresses
index e8030cf0e3c8d05c62b7cca2148994b68fb90bc2..01ccc074cc11c8db479e6efdd8fe2a7fc9ec4b0d 100644 (file)
@@ -133,10 +133,6 @@ ENTRY(vidc_clear)
  *  ip = corrupted
  */
 
-%%%%%%%%%%%%%%%%%%%
-fixme!  This funtion needs to return IRQ_HANDLED
-%%%%%%%%%%%%%%%%%%%
-
 ENTRY(vidc_sound_dma_irq)
                stmfd   sp!, {r4 - r8, lr}
                ldr     r8, =dma_start
@@ -189,6 +185,7 @@ ENTRY(vidc_sound_dma_irq)
                mov     r0, #0x10
                strneb  r0, [ip, #IOMD_SD0CR]
                ldmfd   sp!, {r4 - r8, lr}
+               mov     r0, #1                          @ IRQ_HANDLED
                teq     r1, #0                          @ If we have no more
                movne   pc, lr
                teq     r3, #0