• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #ifndef _CRIS_ARCH_SWAB_H
2 #define _CRIS_ARCH_SWAB_H
3 
4 #include <asm/types.h>
5 #include <linux/compiler.h>
6 
7 #define __SWAB_64_THRU_32__
8 
9 /* we just define these two (as we can do the swap in a single
10  * asm instruction in CRIS) and the arch-independent files will put
11  * them together into ntohl etc.
12  */
13 
__arch_swab32(__u32 x)14 static inline __attribute_const__ __u32 __arch_swab32(__u32 x)
15 {
16 	__asm__ ("swapwb %0" : "=r" (x) : "0" (x));
17 
18 	return(x);
19 }
20 #define __arch_swab32 __arch_swab32
21 
__arch_swab16(__u16 x)22 static inline __attribute_const__ __u16 __arch_swab16(__u16 x)
23 {
24 	__asm__ ("swapb %0" : "=r" (x) : "0" (x));
25 
26 	return(x);
27 }
28 #define __arch_swab16 __arch_swab16
29 
30 #endif
31