Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=56f621c7f6f735311eed3f36858b402013023c18
Commit:     56f621c7f6f735311eed3f36858b402013023c18
Parent:     41bd61a8e357f79dc65502b22d9d124a619491c0
Author:     Ralf Baechle <[EMAIL PROTECTED]>
AuthorDate: Mon Oct 15 01:00:06 2007 +0100
Committer:  Ralf Baechle <[EMAIL PROTECTED]>
CommitDate: Tue Oct 16 18:23:48 2007 +0100

    [MIPS] Alchemy: Get rid of au_ffs().
    
    It was plain a bad idea ...
    
    Signed-off-by: Ralf Baechle <[EMAIL PROTECTED]>
---
 arch/mips/au1000/common/dbdma.c       |    2 +-
 arch/mips/au1000/common/irq.c         |    8 ++++----
 arch/mips/au1000/pb1200/irqmap.c      |    2 +-
 include/asm-mips/mach-au1x00/au1000.h |   10 ----------
 4 files changed, 6 insertions(+), 16 deletions(-)

diff --git a/arch/mips/au1000/common/dbdma.c b/arch/mips/au1000/common/dbdma.c
index 461cf01..9d6ad43 100644
--- a/arch/mips/au1000/common/dbdma.c
+++ b/arch/mips/au1000/common/dbdma.c
@@ -859,7 +859,7 @@ dbdma_interrupt(int irq, void *dev_id)
 
        intstat = dbdma_gptr->ddma_intstat;
        au_sync();
-       chan_index = au_ffs(intstat) - 1;
+       chan_index = ffs(intstat);
 
        ctp = chan_tab_ptr[chan_index];
        cp = ctp->chan_ptr;
diff --git a/arch/mips/au1000/common/irq.c b/arch/mips/au1000/common/irq.c
index e86b430..b0ae1ab 100644
--- a/arch/mips/au1000/common/irq.c
+++ b/arch/mips/au1000/common/irq.c
@@ -481,7 +481,7 @@ static void intc0_req0_irqdispatch(void)
                return;
        }
 #endif
-       irq = au_ffs(intc0_req0) - 1;
+       irq = ffs(intc0_req0);
        intc0_req0 &= ~(1 << irq);
        do_IRQ(irq);
 }
@@ -497,7 +497,7 @@ static void intc0_req1_irqdispatch(void)
        if (!intc0_req1)
                return;
 
-       irq = au_ffs(intc0_req1) - 1;
+       irq = ffs(intc0_req1);
        intc0_req1 &= ~(1 << irq);
        do_IRQ(irq);
 }
@@ -517,7 +517,7 @@ static void intc1_req0_irqdispatch(void)
        if (!intc1_req0)
                return;
 
-       irq = au_ffs(intc1_req0) - 1;
+       irq = ffs(intc1_req0);
        intc1_req0 &= ~(1 << irq);
        irq += 32;
        do_IRQ(irq);
@@ -534,7 +534,7 @@ static void intc1_req1_irqdispatch(void)
        if (!intc1_req1)
                return;
 
-       irq = au_ffs(intc1_req1) - 1;
+       irq = ffs(intc1_req1);
        intc1_req1 &= ~(1 << irq);
        irq += 32;
        do_IRQ(irq);
diff --git a/arch/mips/au1000/pb1200/irqmap.c b/arch/mips/au1000/pb1200/irqmap.c
index 7c708db..aa85eed 100644
--- a/arch/mips/au1000/pb1200/irqmap.c
+++ b/arch/mips/au1000/pb1200/irqmap.c
@@ -74,7 +74,7 @@ irqreturn_t pb1200_cascade_handler( int irq, void *dev_id)
        bcsr->int_status = bisr;
        for( ; bisr; bisr &= (bisr-1) )
        {
-               extirq_nr = (PB1200_INT_BEGIN-1) + au_ffs(bisr);
+               extirq_nr = PB1200_INT_BEGIN + au_ffs(bisr);
                /* Ack and dispatch IRQ */
                do_IRQ(extirq_nr);
        }
diff --git a/include/asm-mips/mach-au1x00/au1000.h 
b/include/asm-mips/mach-au1x00/au1000.h
index 10f613f..6cd6e8b 100644
--- a/include/asm-mips/mach-au1x00/au1000.h
+++ b/include/asm-mips/mach-au1x00/au1000.h
@@ -98,16 +98,6 @@ static __inline__ int au_ffz(unsigned int x)
        return __ilog2(x & -x);
 }
 
-/*
- * ffs: find first bit set. This is defined the same way as
- * the libc and compiler builtin ffs routines, therefore
- * differs in spirit from the above ffz (man ffs).
- */
-static __inline__ int au_ffs(int x)
-{
-       return __ilog2(x & -x) + 1;
-}
-
 /* arch/mips/au1000/common/clocks.c */
 extern void set_au1x00_speed(unsigned int new_freq);
 extern unsigned int get_au1x00_speed(void);
-
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