Blame view

kernel/linux-rt-4.4.41/arch/avr32/include/uapi/asm/swab.h 789 Bytes
5113f6f70   김현기   kernel add
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
  /*
   * AVR32 byteswapping functions.
   */
  #ifndef _UAPI__ASM_AVR32_SWAB_H
  #define _UAPI__ASM_AVR32_SWAB_H
  
  #include <linux/types.h>
  #include <linux/compiler.h>
  
  #define __SWAB_64_THRU_32__
  
  #ifdef __CHECKER__
  extern unsigned long __builtin_bswap_32(unsigned long x);
  extern unsigned short __builtin_bswap_16(unsigned short x);
  #endif
  
  /*
   * avr32-linux-gcc versions earlier than 4.2 improperly sign-extends
   * the result.
   */
  #if !(__GNUC__ == 4 && __GNUC_MINOR__ < 2)
  static inline __attribute_const__ __u16 __arch_swab16(__u16 val)
  {
  	return __builtin_bswap_16(val);
  }
  #define __arch_swab16 __arch_swab16
  
  static inline __attribute_const__ __u32 __arch_swab32(__u32 val)
  {
  	return __builtin_bswap_32(val);
  }
  #define __arch_swab32 __arch_swab32
  #endif
  
  #endif /* _UAPI__ASM_AVR32_SWAB_H */