diff --git a/common/Makefile b/common/Makefile index 3cfaae2e7..a52e96b40 100644 --- a/common/Makefile +++ b/common/Makefile @@ -77,7 +77,7 @@ $(obj)/barebox_default_env: FORCE $(call cmd,envs) quiet_cmd_env_h = ENVH $@ -cmd_env_h = cat $< | (cd $(obj) && $(objtree)/scripts/bin2c default_environment) > $@; \ +cmd_env_h = cat $< | (cd $(obj) && $(objtree)/scripts/bin2c "__aligned(4) default_environment") > $@; \ echo "static const int default_environment_uncompress_size=`stat -c%s $(obj)/barebox_default_env`;" >> $@ $(obj)/barebox_default_env.h: $(obj)/barebox_default_env$(DEFAULT_COMPRESSION_SUFFIX) FORCE diff --git a/common/startup.c b/common/startup.c index 4bc5628f4..6847b61b4 100644 --- a/common/startup.c +++ b/common/startup.c @@ -53,21 +53,12 @@ static int register_default_env(void) void *defaultenv; if (!IS_ENABLED(CONFIG_DEFAULT_COMPRESSION_NONE)) { - void *tmp = malloc(default_environment_size); - - if (!tmp) - return -ENOMEM; - - memcpy(tmp, default_environment, default_environment_size); defaultenv = xzalloc(default_environment_uncompress_size); - ret = uncompress(tmp, default_environment_size, + ret = uncompress(default_environment, default_environment_size, NULL, NULL, defaultenv, NULL, uncompress_err_stdout); - - free(tmp); - if (ret) { free(defaultenv); return ret;