POST: add progress API

Add POST progress API implemented as weak calls before and after
each call to the POST test callback in the post_run_single routine
of the post.c file.

Signed-off-by: Michael Zaidman <michael.zaidman@gmail.com>
Acked-by: Detlev Zundel <dzu@denx.de>
This commit is contained in:
Michael Zaidman
2010-03-01 11:47:36 +02:00
committed by Wolfgang Denk
parent 47ab5ad145
commit e070a56c77
2 changed files with 20 additions and 2 deletions

View File

@@ -231,6 +231,12 @@ static void post_get_flags (int *test_flags)
}
}
void __show_post_progress (unsigned int test_num, int before, int result)
{
}
void show_post_progress (unsigned int, int, int)
__attribute__((weak, alias("__show_post_progress")));
static int post_run_single (struct post_test *test,
int test_flags, int flags, unsigned int i)
{
@@ -248,13 +254,18 @@ static int post_run_single (struct post_test *test,
if (test_flags & POST_PREREL)
post_log_mark_start ( test->testid );
else
post_log ("POST %s ", test->cmd);
post_log ("POST %s ", test->cmd);
}
show_post_progress(i, POST_BEFORE, POST_FAILED);
if (test_flags & POST_PREREL) {
if ((*test->test) (flags) == 0)
if ((*test->test) (flags) == 0) {
post_log_mark_succ ( test->testid );
show_post_progress(i, POST_AFTER, POST_PASSED);
}
else {
show_post_progress(i, POST_AFTER, POST_FAILED);
if (test_flags & POST_CRITICAL)
gd->flags |= GD_FLG_POSTFAIL;
if (test_flags & POST_STOP)
@@ -264,6 +275,7 @@ static int post_run_single (struct post_test *test,
if ((*test->test) (flags) != 0) {
post_log ("FAILED\n");
show_boot_progress (-32);
show_post_progress(i, POST_AFTER, POST_FAILED);
if (test_flags & POST_CRITICAL)
gd->flags |= GD_FLG_POSTFAIL;
if (test_flags & POST_STOP)
@@ -271,6 +283,7 @@ static int post_run_single (struct post_test *test,
}
else
post_log ("PASSED\n");
show_post_progress(i, POST_AFTER, POST_PASSED);
}
if ((test_flags & POST_REBOOT) && !(flags & POST_MANUAL)) {