summaryrefslogtreecommitdiffstats
path: root/include/asm-sparc/byteorder.h
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>1997-12-16 05:34:03 +0000
committerRalf Baechle <ralf@linux-mips.org>1997-12-16 05:34:03 +0000
commit967c65a99059fd459b956c1588ce0ba227912c4e (patch)
tree8224d013ff5d255420713d05610c7efebd204d2a /include/asm-sparc/byteorder.h
parente20c1cc1656a66a2773bca4591a895cbc12696ff (diff)
Merge with Linux 2.1.72, part 1.
Diffstat (limited to 'include/asm-sparc/byteorder.h')
-rw-r--r--include/asm-sparc/byteorder.h92
1 files changed, 6 insertions, 86 deletions
diff --git a/include/asm-sparc/byteorder.h b/include/asm-sparc/byteorder.h
index 5becb7c5d..7cbbfd26d 100644
--- a/include/asm-sparc/byteorder.h
+++ b/include/asm-sparc/byteorder.h
@@ -1,93 +1,13 @@
-/* $Id: byteorder.h,v 1.14 1997/05/28 11:35:38 jj Exp $ */
#ifndef _SPARC_BYTEORDER_H
#define _SPARC_BYTEORDER_H
-#define ntohl(x) ((unsigned long int)(x))
-#define ntohs(x) ((unsigned short int)(x))
-#define htonl(x) ((unsigned long int)(x))
-#define htons(x) ((unsigned short int)(x))
+#include <asm/types.h>
-/* Some programs depend upon these being around. */
-#define __constant_ntohl(x) ((unsigned long int)(x))
-#define __constant_ntohs(x) ((unsigned short int)(x))
-#define __constant_htonl(x) ((unsigned long int)(x))
-#define __constant_htons(x) ((unsigned short int)(x))
-
-#ifndef __BIG_ENDIAN
-#define __BIG_ENDIAN 4321
-#endif
-
-#ifndef __BIG_ENDIAN_BITFIELD
-#define __BIG_ENDIAN_BITFIELD
+#if defined(__GNUC__) && !defined(__STRICT_ANSI__) || defined(__KERNEL__)
+# define __BYTEORDER_HAS_U64__
+# define __SWAB_64_THRU_32__
#endif
-#ifdef __KERNEL__
-
-/* Convert from CPU byte order, to specified byte order. */
-extern __inline__ __u16 cpu_to_le16(__u16 value)
-{
- return (value >> 8) | (value << 8);
-}
-
-extern __inline__ __u32 cpu_to_le32(__u32 value)
-{
- return((value>>24) | ((value>>8)&0xff00) |
- ((value<<8)&0xff0000) | (value<<24));
-}
-#define cpu_to_be16(x) (x)
-#define cpu_to_be32(x) (x)
-
-/* The same, but returns converted value from the location pointer by addr. */
-extern __inline__ __u16 cpu_to_le16p(__u16 *addr)
-{
- return cpu_to_le16(*addr);
-}
-
-extern __inline__ __u32 cpu_to_le32p(__u32 *addr)
-{
- return cpu_to_le32(*addr);
-}
-
-extern __inline__ __u16 cpu_to_be16p(__u16 *addr)
-{
- return cpu_to_be16(*addr);
-}
-
-extern __inline__ __u32 cpu_to_be32p(__u32 *addr)
-{
- return cpu_to_be32(*addr);
-}
-
-/* The same, but do the conversion in situ, ie. put the value back to addr. */
-extern __inline__ void cpu_to_le16s(__u16 *addr)
-{
- *addr = cpu_to_le16(*addr);
-}
-
-extern __inline__ void cpu_to_le32s(__u32 *addr)
-{
- *addr = cpu_to_le32(*addr);
-}
-
-#define cpu_to_be16s(x) do { } while (0)
-#define cpu_to_be32s(x) do { } while (0)
-
-/* Convert from specified byte order, to CPU byte order. */
-#define le16_to_cpu(x) cpu_to_le16(x)
-#define le32_to_cpu(x) cpu_to_le32(x)
-#define be16_to_cpu(x) cpu_to_be16(x)
-#define be32_to_cpu(x) cpu_to_be32(x)
-
-#define le16_to_cpup(x) cpu_to_le16p(x)
-#define le32_to_cpup(x) cpu_to_le32p(x)
-#define be16_to_cpup(x) cpu_to_be16p(x)
-#define be32_to_cpup(x) cpu_to_be32p(x)
-
-#define le16_to_cpus(x) cpu_to_le16s(x)
-#define le32_to_cpus(x) cpu_to_le32s(x)
-#define be16_to_cpus(x) cpu_to_be16s(x)
-#define be32_to_cpus(x) cpu_to_be32s(x)
-
-#endif /* __KERNEL__ */
+#include <linux/byteorder/big_endian.h>
-#endif /* !(_SPARC_BYTEORDER_H) */
+#endif /* _SPARC_BYTEORDER_H */