[PATCH v2 4/6] arm: use asm-generic/bitops/le.h
Russell King - ARM Linux
linux at arm.linux.org.uk
Wed Apr 27 05:19:49 EDT 2011
On Tue, Apr 26, 2011 at 10:23:41PM +0900, Akinobu Mita wrote:
> The previous style change enables to use asm-generic/bitops/le.h
> on arm.
>
> Signed-off-by: Akinobu Mita <akinobu.mita at gmail.com>
> Cc: Russell King <linux at arm.linux.org.uk>
Acked-by: Russell King <rmk+kernel at arm.linux.org.uk>
> Cc: linux-arm-kernel at lists.infradead.org
> ---
>
> No change from previous submission
>
> arch/arm/include/asm/bitops.h | 43 ++++------------------------------------
> 1 files changed, 5 insertions(+), 38 deletions(-)
>
> diff --git a/arch/arm/include/asm/bitops.h b/arch/arm/include/asm/bitops.h
> index 18a024b..b4892a0 100644
> --- a/arch/arm/include/asm/bitops.h
> +++ b/arch/arm/include/asm/bitops.h
> @@ -203,8 +203,6 @@ extern int _find_next_bit_be(const unsigned long *p, int size, int offset);
> #define find_first_bit(p,sz) _find_first_bit_le(p,sz)
> #define find_next_bit(p,sz,off) _find_next_bit_le(p,sz,off)
>
> -#define WORD_BITOFF_TO_LE(x) ((x))
> -
> #else
> /*
> * These are the big endian, atomic definitions.
> @@ -214,8 +212,6 @@ extern int _find_next_bit_be(const unsigned long *p, int size, int offset);
> #define find_first_bit(p,sz) _find_first_bit_be(p,sz)
> #define find_next_bit(p,sz,off) _find_next_bit_be(p,sz,off)
>
> -#define WORD_BITOFF_TO_LE(x) ((x) ^ 0x18)
> -
> #endif
>
> #if __LINUX_ARM_ARCH__ < 5
> @@ -287,40 +283,7 @@ static inline int fls(int x)
> #include <asm-generic/bitops/hweight.h>
> #include <asm-generic/bitops/lock.h>
>
> -static inline void __set_bit_le(int nr, void *addr)
> -{
> - __set_bit(WORD_BITOFF_TO_LE(nr), addr);
> -}
> -
> -static inline void __clear_bit_le(int nr, void *addr)
> -{
> - __clear_bit(WORD_BITOFF_TO_LE(nr), addr);
> -}
> -
> -static inline int __test_and_set_bit_le(int nr, void *addr)
> -{
> - return __test_and_set_bit(WORD_BITOFF_TO_LE(nr), addr);
> -}
> -
> -static inline int test_and_set_bit_le(int nr, void *addr)
> -{
> - return test_and_set_bit(WORD_BITOFF_TO_LE(nr), addr);
> -}
> -
> -static inline int __test_and_clear_bit_le(int nr, void *addr)
> -{
> - return __test_and_clear_bit(WORD_BITOFF_TO_LE(nr), addr);
> -}
> -
> -static inline int test_and_clear_bit_le(int nr, void *addr)
> -{
> - return test_and_clear_bit(WORD_BITOFF_TO_LE(nr), addr);
> -}
> -
> -static inline int test_bit_le(int nr, const void *addr)
> -{
> - return test_bit(WORD_BITOFF_TO_LE(nr), addr);
> -}
> +#ifdef __ARMEB__
>
> static inline int find_first_zero_bit_le(const void *p, unsigned size)
> {
> @@ -340,6 +303,10 @@ static inline int find_next_bit_le(const void *p, int size, int offset)
> }
> #define find_next_bit_le find_next_bit_le
>
> +#endif
> +
> +#include <asm-generic/bitops/le.h>
> +
> /*
> * Ext2 is defined to use little-endian byte ordering.
> */
> --
> 1.7.4.4
>
More information about the linux-arm-kernel
mailing list