avr32: define __fls
authorRusty Russell <rusty@rustcorp.com.au>
Wed, 31 Dec 2008 23:42:16 +0000 (10:12 +1030)
committerRusty Russell <rusty@rustcorp.com.au>
Wed, 31 Dec 2008 23:42:16 +0000 (10:12 +1030)
Like fls, but can't be handed 0 and returns the bit number.

(I broke this arch in linux-next by using __fls in generic code).

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
arch/avr32/include/asm/bitops.h

index 1a50b69b1a192de23bd6bdf88881a5181082faeb..f7dd5f71edf7e497537a31725cf05f514f7de5ca 100644 (file)
@@ -263,6 +263,11 @@ static inline int fls(unsigned long word)
        return 32 - result;
 }
 
+static inline int __fls(unsigned long word)
+{
+       return fls(word) - 1;
+}
+
 unsigned long find_first_zero_bit(const unsigned long *addr,
                                  unsigned long size);
 unsigned long find_next_zero_bit(const unsigned long *addr,