byteorder.h 557 B

1234567891011121314151617181920212223242526
  1. #ifndef _CRIS_ARCH_BYTEORDER_H
  2. #define _CRIS_ARCH_BYTEORDER_H
  3. #include <asm/types.h>
  4. #include <linux/compiler.h>
  5. /* we just define these two (as we can do the swap in a single
  6. * asm instruction in CRIS) and the arch-independent files will put
  7. * them together into ntohl etc.
  8. */
  9. extern __inline__ __attribute_const__ __u32 ___arch__swab32(__u32 x)
  10. {
  11. __asm__ ("swapwb %0" : "=r" (x) : "0" (x));
  12. return(x);
  13. }
  14. extern __inline__ __attribute_const__ __u16 ___arch__swab16(__u16 x)
  15. {
  16. __asm__ ("swapb %0" : "=r" (x) : "0" (x));
  17. return(x);
  18. }
  19. #endif