The global.endianness variable make it possible to determine current endian mode from command line or from script on bi-endian capable system. Signed-off-by: Antony Pavlov <antonynpavlov@xxxxxxxxx> --- common/globalvar.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/common/globalvar.c b/common/globalvar.c index c87f2c9339..264833f88c 100644 --- a/common/globalvar.c +++ b/common/globalvar.c @@ -591,6 +591,8 @@ int globalvar_add_simple_ip(const char *name, IPaddr_t *ip) static int globalvar_init(void) { + const char *endianness; + register_device(&global_device); if (IS_ENABLED(CONFIG_NVVAR)) @@ -598,11 +600,19 @@ static int globalvar_init(void) globalvar_add_simple("version", UTS_RELEASE); + if (IS_ENABLED(CONFIG_CPU_BIG_ENDIAN)) + endianness = "big"; + else + endianness = "little"; + + globalvar_add_simple("endianness", endianness); + return 0; } pure_initcall(globalvar_init); BAREBOX_MAGICVAR_NAMED(global_version, global.version, "The barebox version"); +BAREBOX_MAGICVAR_NAMED(global_endianness, global.endianness, "The barebox endianness"); /** * nvvar_save - save NV variables to persistent environment -- 2.25.0 _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox