diff options
author | Stefan Reinauer <reinauer@chromium.org> | 2012-10-15 15:19:43 -0700 |
---|---|---|
committer | Stefan Reinauer <stefan.reinauer@coreboot.org> | 2012-11-13 18:25:17 +0100 |
commit | 75dbc389ec62d9ec85178eb5364850c7f9a77997 (patch) | |
tree | d8edbdbea72689f646774f87e1d419ebcd6dd5f3 /src/include | |
parent | 4221a195745837b05725d7ffeda415516ac44a7f (diff) |
Clean up stack checking code
Several small improvements of the stack checking code:
- move the CPU0 stack check right before jumping to the payload
and out of hardwaremain (that file is too crowded anyways)
- fix prototype in lib.h
- print size of used stack
- use checkstack function both on CPU0 and CPU1-x
- print amount of stack used per core
Signed-off-by: Stefan Reinauer <reinauer@google.com>
Test: Boot coreboot on Link, see the following output:
...
CPU1: stack: 00156000 - 00157000, lowest used address 00156c68,
stack used: 920 bytes
CPU2: stack: 00155000 - 00156000, lowest used address 00155c68,
stack used: 920 bytes
CPU3: stack: 00154000 - 00155000, lowest used address 00154c68,
stack used: 920 bytes
...
Jumping to boot code at 1110008
CPU0: stack: 00157000 - 00158000, lowest used address 00157af8,
stack used: 1288 bytes
Change-Id: I7b83eeee0186559a0a62daa12e3f7782990fd2df
Reviewed-on: http://review.coreboot.org/1787
Tested-by: build bot (Jenkins)
Reviewed-by: Ronald G. Minnich <rminnich@gmail.com>
Diffstat (limited to 'src/include')
-rw-r--r-- | src/include/lib.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/include/lib.h b/src/include/lib.h index b2f38a828f..9d8108532c 100644 --- a/src/include/lib.h +++ b/src/include/lib.h @@ -41,10 +41,10 @@ int ram_check_nodie(unsigned long start, unsigned long stop); void quick_ram_check(void); /* Defined in src/lib/stack.c */ -int checkstack(void *top_of_stack, int stacksize); +int checkstack(void *top_of_stack, int core); /* currently defined by a ldscript */ -extern u8 _estack; +extern unsigned char _estack[]; /* Defined in romstage.c */ #if CONFIG_CPU_AMD_GEODE_LX |