mips: fix bootblock stack definitions
Bootblock stack on Danube should be SRAM and defined separately from
the rest of the coreboot stack. The actual coreboot stack will be
defined later.
The top of the stack should be above the bottom, as the stack grows
towards lower addresses.
BUG=chrome-os-partner:31438
TEST=ran bootblock on simulator under codescape, observed stack
properly initialized.
Change-Id: I3c37c8b5a1c0e7fd19411558a8f6d899fc283191
Signed-off-by: Vadim Bendebury <vbendeb@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/218732
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
This commit is contained in:
parent
7adbdab761
commit
e02724cb4b
2 changed files with 12 additions and 10 deletions
|
|
@ -23,18 +23,18 @@
|
|||
.globl _start
|
||||
_start:
|
||||
/* Set the stack pointer */
|
||||
li $sp, CONFIG_STACK_TOP
|
||||
li $sp, CONFIG_BOOTBLOCK_STACK_TOP
|
||||
|
||||
/*
|
||||
* Initialise the stack to a known value, used later to check for
|
||||
* overflow.
|
||||
*/
|
||||
li $t0, CONFIG_STACK_BOTTOM
|
||||
li $t0, CONFIG_BOOTBLOCK_STACK_BOTTOM
|
||||
addi $t1, $sp, -4
|
||||
li $t2, 0xdeadbeef
|
||||
1: sw $t2, 0($t0)
|
||||
bne $t0, $t1, 1b
|
||||
addi $t0, $t0, 4
|
||||
addi $t0, $t0, 4
|
||||
|
||||
/* Run main */
|
||||
b main
|
||||
|
|
|
|||
|
|
@ -55,15 +55,17 @@ config CBMEM_CONSOLE_PRERAM_BASE
|
|||
Allocate 4KB to the pre-ram console buffer, we should be able to use
|
||||
GRAM eventually and have a much larger buffer.
|
||||
|
||||
config STACK_TOP
|
||||
config BOOTBLOCK_STACK_BOTTOM
|
||||
hex
|
||||
default 0x9b00e000
|
||||
help
|
||||
This allocates 6KB of stack space. One needs to verify that this is
|
||||
sufficient.
|
||||
|
||||
config BOOTBLOCK_STACK_TOP
|
||||
hex
|
||||
default CBMEM_CONSOLE_PRERAM_BASE
|
||||
|
||||
config STACK_BOTTOM
|
||||
hex
|
||||
default 0x9b00f000
|
||||
help
|
||||
Allocating 12KB for the stack, should be able to have more once GRAM
|
||||
is available.
|
||||
|
||||
Bootblock stack starts immediately under the CBMEM console buffer,
|
||||
stack location might be changed by ro stage.
|
||||
endif
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue