diff options
author | Wolfgang Denk <wd@xpert.denx.de> | 2008-10-21 11:23:56 +0200 |
---|---|---|
committer | Wolfgang Denk <wd@denx.de> | 2008-10-21 21:35:44 +0200 |
commit | def0819e920b05b34b56d8b42e1e43d9b89a52d6 (patch) | |
tree | 955dd2fbe11c8573f84a3a308e2eb5b0f41fd09c /include/libfdt_env.h | |
parent | 06c29422189388f3082c5bab226af17e90d51ee7 (diff) | |
download | u-boot-def0819e920b05b34b56d8b42e1e43d9b89a52d6.tar.gz u-boot-def0819e920b05b34b56d8b42e1e43d9b89a52d6.tar.xz u-boot-def0819e920b05b34b56d8b42e1e43d9b89a52d6.zip |
FDT: don't use private kernel header files
On some systems (for example Fedora Core 4) U-Boot builds with the
following wanrings only:
...
In file included from /home/wd/git/u-boot/include/libfdt_env.h:33,
from fdt.c:51:
/usr/include/asm/byteorder.h:6:2: warning: #warning using private kernel header; include <endian.h> instead!
This patch fixes this problem.
Signed-off-by: Wolfgang Denk <wd@denx.de>
Diffstat (limited to 'include/libfdt_env.h')
-rw-r--r-- | include/libfdt_env.h | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/include/libfdt_env.h b/include/libfdt_env.h index 671c3a8981..355ebf27b2 100644 --- a/include/libfdt_env.h +++ b/include/libfdt_env.h @@ -24,19 +24,28 @@ #ifdef USE_HOSTCC #include <stdint.h> #include <string.h> +#include <endian.h> +#include <byteswap.h> #else #include <linux/string.h> #include <linux/types.h> +#include <asm/byteorder.h> #endif /* USE_HOSTCC */ #include <stddef.h> -#include <asm/byteorder.h> extern struct fdt_header *working_fdt; /* Pointer to the working fdt */ -#define fdt32_to_cpu(x) __be32_to_cpu(x) -#define cpu_to_fdt32(x) __cpu_to_be32(x) -#define fdt64_to_cpu(x) __be64_to_cpu(x) -#define cpu_to_fdt64(x) __cpu_to_be64(x) +#if __BYTE_ORDER == __LITTLE_ENDIAN +#define fdt32_to_cpu(x) bswap_32(x) +#define cpu_to_fdt32(x) bswap_32(x) +#define fdt64_to_cpu(x) bswap_64(x) +#define cpu_to_fdt64(x) bswap_64(x) +#else +#define fdt32_to_cpu(x) (x) +#define cpu_to_fdt32(x) (x) +#define fdt64_to_cpu(x) (x) +#define cpu_to_fdt64(x) (x) +#endif /* * Types for `void *' pointers. |