diff options
-rw-r--r-- | common/Kconfig | 6 | ||||
-rw-r--r-- | common/imd-barebox.c | 10 |
2 files changed, 16 insertions, 0 deletions
diff --git a/common/Kconfig b/common/Kconfig index dba6aa43fd..f7a6a96e87 100644 --- a/common/Kconfig +++ b/common/Kconfig @@ -730,6 +730,12 @@ config IMD select CRC32 bool "barebox metadata support" +config IMD_ENDIANNESS + bool "add endianness record to metadata" + depends on IMD + depends on SYS_SUPPORTS_LITTLE_ENDIAN && SYS_SUPPORTS_BIG_ENDIAN + default y + choice prompt "console support" default CONSOLE_FULL diff --git a/common/imd-barebox.c b/common/imd-barebox.c index e11fdca845..7877c8de39 100644 --- a/common/imd-barebox.c +++ b/common/imd-barebox.c @@ -23,6 +23,16 @@ __BAREBOX_IMD_SECTION(.barebox_imd_end) = { .type = cpu_to_le32(IMD_TYPE_END), }; +#ifdef CONFIG_IMD_ENDIANNESS +#ifdef CONFIG_CPU_LITTLE_ENDIAN +#define IMD_ENDIANNESS "little" +#else +#define IMD_ENDIANNESS "big" +#endif +BAREBOX_IMD_TAG_STRING(imd_endianness_tag, IMD_TYPE_PARAMETER, + "endianness=" IMD_ENDIANNESS, 1); +#endif /* CONFIG_IMD_ENDIANNESS */ + BAREBOX_IMD_TAG_STRING(imd_build_tag, IMD_TYPE_BUILD, UTS_VERSION, 1); BAREBOX_IMD_TAG_STRING(imd_release_tag, IMD_TYPE_RELEASE, UTS_RELEASE, 1); BAREBOX_IMD_TAG_STRING(imd_buildsystem_version_tag, IMD_TYPE_BUILDSYSTEM, BUILDSYSTEM_VERSION, 1); |