diff options
author | Masahiro Yamada <yamada.masahiro@socionext.com> | 2017-10-17 22:30:20 +0900 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2017-11-17 07:44:13 -0500 |
commit | 50a327ded68b7e675389ad284ea3f8c62e683bda (patch) | |
tree | 8ca210b444ac4b4de6a5104431066b89777c8897 /include | |
parent | 1c4b453ad2a62d0243ae5fd6657f2d6b7eb7332d (diff) |
lib: libfdt: wrap scripts/dtc/libfdt/* where possible
lib/libfdt/ and scripts/dtc/libfdt have the same copies for the
followings 6 files:
fdt.c fdt_addresses.c fdt_empty_tree.c fdt_overlay.c fdt_strerr.c
fdt_sw.c
Make them a wrapper of scripts/dtc/libfdt/*. This is exactly what
Linux does to sync libfdt. In order to make is possible, import
<linux/libfdt.h> and <linux/libfdt_env.h> from Linux 4.14-rc5.
Unfortunately, U-Boot locally modified the following 3 files:
fdt_ro.c fdt_wip.c fdt_rw.c
The fdt_region.c is U-Boot own file.
I did not touch them in order to avoid unpredictable impact.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/libfdt_env.h | 6 | ||||
-rw-r--r-- | include/linux/libfdt.h | 17 | ||||
-rw-r--r-- | include/linux/libfdt_env.h | 22 |
3 files changed, 39 insertions, 6 deletions
diff --git a/include/libfdt_env.h b/include/libfdt_env.h index 6c6845f76c..273b5d30f8 100644 --- a/include/libfdt_env.h +++ b/include/libfdt_env.h @@ -23,12 +23,6 @@ typedef __be64 fdt64_t; #define fdt64_to_cpu(x) be64_to_cpu(x) #define cpu_to_fdt64(x) cpu_to_be64(x) -#ifdef __UBOOT__ -#include <vsprintf.h> - -#define strtoul(cp, endp, base) simple_strtoul(cp, endp, base) -#endif - /* adding a ramdisk needs 0x44 bytes in version 2008.10 */ #define FDT_RAMDISK_OVERHEAD 0x80 diff --git a/include/linux/libfdt.h b/include/linux/libfdt.h new file mode 100644 index 0000000000..2a663c6bb4 --- /dev/null +++ b/include/linux/libfdt.h @@ -0,0 +1,17 @@ +#ifndef _LIBFDT_ENV_H +#define _LIBFDT_ENV_H + +#include <linux/string.h> + +#include <asm/byteorder.h> + +typedef __be16 fdt16_t; +typedef __be32 fdt32_t; +typedef __be64 fdt64_t; + +#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) + +#endif /* _LIBFDT_ENV_H */ diff --git a/include/linux/libfdt_env.h b/include/linux/libfdt_env.h new file mode 100644 index 0000000000..8178f9174b --- /dev/null +++ b/include/linux/libfdt_env.h @@ -0,0 +1,22 @@ +#ifndef _LIBFDT_ENV_H +#define _LIBFDT_ENV_H + +#include <linux/string.h> + +#include <asm/byteorder.h> + +typedef __be16 fdt16_t; +typedef __be32 fdt32_t; +typedef __be64 fdt64_t; + +#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) + +/* U-Boot: for strtoul in fdt_overlay.c */ +#include <vsprintf.h> + +#define strtoul(cp, endp, base) simple_strtoul(cp, endp, base) + +#endif /* _LIBFDT_ENV_H */ |