Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=62578cbfaa50df06b3bb6e4231adc3b911a3d4b4
Commit:     62578cbfaa50df06b3bb6e4231adc3b911a3d4b4
Parent:     f69eda00d4e9808f0ddc88826278f93512cd2c98
Author:     Kevin Hilman <[EMAIL PROTECTED]>
AuthorDate: Wed Feb 7 05:41:37 2007 +0100
Committer:  Russell King <[EMAIL PROTECTED]>
CommitDate: Sun Feb 18 10:59:48 2007 +0000

    [ARM] 4138/1: AACI: multiple channel support for IRQ handling
    
    Add AACI channel support to interrupt handler.
    Also, clear underrun interrupt for correct channel.
    
    Signed-off-by: Kevin Hilman <[EMAIL PROTECTED]>
    Signed-off-by: Russell King <[EMAIL PROTECTED]>
---
 sound/arm/aaci.c |    7 ++++---
 1 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/sound/arm/aaci.c b/sound/arm/aaci.c
index 53675cf..b85df79 100644
--- a/sound/arm/aaci.c
+++ b/sound/arm/aaci.c
@@ -164,10 +164,11 @@ static inline void aaci_chan_wait_ready(struct 
aaci_runtime *aacirun)
 /*
  * Interrupt support.
  */
-static void aaci_fifo_irq(struct aaci *aaci, u32 mask)
+static void aaci_fifo_irq(struct aaci *aaci, int channel, u32 mask)
 {
        if (mask & ISR_URINTR) {
-               writel(ICLR_TXUEC1, aaci->base + AACI_INTCLR);
+               dev_dbg(&aaci->dev->dev, "TX underrun on chan %d\n", channel);
+               writel(ICLR_TXUEC1 << channel, aaci->base + AACI_INTCLR);
        }
 
        if (mask & ISR_TXINTR) {
@@ -233,7 +234,7 @@ static irqreturn_t aaci_irq(int irq, void *devid)
                u32 m = mask;
                for (i = 0; i < 4; i++, m >>= 7) {
                        if (m & 0x7f) {
-                               aaci_fifo_irq(aaci, m);
+                               aaci_fifo_irq(aaci, i, m);
                        }
                }
        }
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to