bootm: Update fixup_silent_linux() to return an error

At present this function fails silently on error. Update it to produce
an error code. Report this error to the user and abort the boot, since it
likely will prevent a successful start.

No tests are added at this stage, since additional refactoring is taking
place in subsequent patches.

Signed-off-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Simon Glass
2020-11-05 10:33:39 -07:00
committed by Tom Rini
parent f158ba15ee
commit 4ae42643d0
3 changed files with 29 additions and 14 deletions

View File

@@ -23,26 +23,26 @@ static int bootm_test_silent_var(struct unit_test_state *uts)
/* 'silent_linux' not set should do nothing */
env_set("silent_linux", NULL);
env_set("bootargs", CONSOLE_STR);
fixup_silent_linux();
ut_assertok(fixup_silent_linux());
ut_asserteq_str(CONSOLE_STR, env_get("bootargs"));
env_set("bootargs", NULL);
fixup_silent_linux();
ut_assertok(fixup_silent_linux());
ut_assertnull(env_get("bootargs"));
ut_assertok(env_set("silent_linux", "no"));
env_set("bootargs", CONSOLE_STR);
fixup_silent_linux();
ut_assertok(fixup_silent_linux());
ut_asserteq_str(CONSOLE_STR, env_get("bootargs"));
ut_assertok(env_set("silent_linux", "yes"));
env_set("bootargs", CONSOLE_STR);
fixup_silent_linux();
ut_assertok(fixup_silent_linux());
ut_asserteq_str("console=", env_get("bootargs"));
/* Empty buffer should still add the string */
env_set("bootargs", NULL);
fixup_silent_linux();
ut_assertok(fixup_silent_linux());
ut_asserteq_str("console=", env_get("bootargs"));
return 0;