diff options
author | Jonathan Gray <jsg@jsg.id.au> | 2016-09-03 08:26:55 +1000 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2016-09-07 08:49:06 -0400 |
commit | 3715a540c49335532fb0f75f5b18bc9e269f4471 (patch) | |
tree | 74fad5909e21b772bd3123505f44e4cd7c4f5524 | |
parent | c989166037941f80e0d46f1fa4e37c9f4f876b80 (diff) |
compiler.h: use system endian macros on OpenBSD
The u-boot endian macros map directly to system endian
macros on OpenBSD.
Signed-off-by: Jonathan Gray <jsg@jsg.id.au>
-rw-r--r-- | include/compiler.h | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/include/compiler.h b/include/compiler.h index 47c296e202d..65b826e4d18 100644 --- a/include/compiler.h +++ b/include/compiler.h @@ -15,7 +15,7 @@ defined(__sun__) || \ defined(__APPLE__) # include <inttypes.h> -#elif defined(__linux__) || defined(__WIN32__) || defined(__MINGW32__) +#elif defined(__linux__) || defined(__WIN32__) || defined(__MINGW32__) || defined(__OpenBSD__) # include <stdint.h> #endif @@ -50,6 +50,8 @@ typedef unsigned long ulong; #endif #ifdef __FreeBSD__ # include <sys/endian.h> /* htole32 and friends */ +#elif defined(__OpenBSD__) +# include <endian.h> #endif #include <time.h> @@ -82,7 +84,20 @@ typedef unsigned int uint; # define uswap_64(x) _uswap_64(x, ) #endif -#if __BYTE_ORDER == __LITTLE_ENDIAN +#if defined(__OpenBSD__) +#define cpu_to_le16(x) htole16(x) +#define cpu_to_le32(x) htole32(x) +#define cpu_to_le64(x) htole64(x) +#define le16_to_cpu(x) letoh16(x) +#define le32_to_cpu(x) letoh32(x) +#define le64_to_cpu(x) letoh64(x) +#define cpu_to_be16(x) htobe16(x) +#define cpu_to_be32(x) htobe32(x) +#define cpu_to_be64(x) htobe64(x) +#define be16_to_cpu(x) betoh16(x) +#define be32_to_cpu(x) betoh32(x) +#define be64_to_cpu(x) betoh64(x) +#elif __BYTE_ORDER == __LITTLE_ENDIAN # define cpu_to_le16(x) (x) # define cpu_to_le32(x) (x) # define cpu_to_le64(x) (x) |