diff options
Diffstat (limited to 'kernel/arch/cris/include/arch-v32/arch/swab.h')
-rw-r--r-- | kernel/arch/cris/include/arch-v32/arch/swab.h | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/kernel/arch/cris/include/arch-v32/arch/swab.h b/kernel/arch/cris/include/arch-v32/arch/swab.h new file mode 100644 index 000000000..9a4ea5e20 --- /dev/null +++ b/kernel/arch/cris/include/arch-v32/arch/swab.h @@ -0,0 +1,24 @@ +#ifndef _ASM_CRIS_ARCH_SWAB_H +#define _ASM_CRIS_ARCH_SWAB_H + +#include <asm/types.h> + +#define __SWAB_64_THRU_32__ + +static inline __const__ __u32 +__arch_swab32(__u32 x) +{ + __asm__ __volatile__ ("swapwb %0" : "=r" (x) : "0" (x)); + return (x); +} +#define __arch_swab32 __arch_swab32 + +static inline __const__ __u16 +__arch_swab16(__u16 x) +{ + __asm__ __volatile__ ("swapb %0" : "=r" (x) : "0" (x)); + return (x); +} +#define __arch_swab16 __arch_swab16 + +#endif /* _ASM_CRIS_ARCH_SWAB_H */ |