diff options
Diffstat (limited to 'post/post.c')
| -rw-r--r-- | post/post.c | 17 | 
1 files changed, 10 insertions, 7 deletions
| diff --git a/post/post.c b/post/post.c index 323447d1b..0474f1f75 100644 --- a/post/post.c +++ b/post/post.c @@ -65,9 +65,11 @@ void post_bootmode_init (void)  	DECLARE_GLOBAL_DATA_PTR;  	int bootmode = post_bootmode_get (0); -	if (bootmode == 0) { +	if (post_hotkeys_pressed(gd) && !(bootmode & POST_POWERTEST)) { +		bootmode = POST_SLOWTEST; +	} else if (bootmode == 0) {  		bootmode = POST_POWERON; -	} else if (bootmode == POST_POWERON) { +	} else if (bootmode == POST_POWERON || bootmode == POST_SLOWTEST) {  		bootmode = POST_NORMAL;  	} else {  		return; @@ -96,11 +98,6 @@ int post_bootmode_get (unsigned int *last_test)  	return bootmode;  } -void post_bootmode_clear (void) -{ -	post_word_store (0); -} -  /* POST tests run before relocation only mark status bits .... */  static void post_log_mark_start ( unsigned long testid )  { @@ -203,6 +200,12 @@ static void post_get_flags (int *test_flags)  			name = s + 1;  		}  	} + +	for (j = 0; j < post_list_size; j++) { +		if (test_flags[j] & POST_POWERON) { +			test_flags[j] |= POST_SLOWTEST; +		} +	}  }  static int post_run_single (struct post_test *test, |