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: I43d2bae5f85a09a95ca0103b253399bd92555aef Signed-off-by: Patrick Georgi <pgeorgi@chromium.org> Original-Commit-Id: e02724cb4b30990ebaa631dabb45917af29d6437 Original-Change-Id: I3c37c8b5a1c0e7fd19411558a8f6d899fc283191 Original-Signed-off-by: Vadim Bendebury <vbendeb@chromium.org> Original-Reviewed-on: https://chromium-review.googlesource.com/218732 Original-Reviewed-by: Aaron Durbin <adurbin@chromium.org> Reviewed-on: http://review.coreboot.org/8767 Tested-by: build bot (Jenkins) Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org> Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
This commit is contained in:
parent
cac5022e2f
commit
197b801f19
|
@ -23,13 +23,13 @@
|
||||||
.globl _start
|
.globl _start
|
||||||
_start:
|
_start:
|
||||||
/* Set the stack pointer */
|
/* 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
|
* Initialise the stack to a known value, used later to check for
|
||||||
* overflow.
|
* overflow.
|
||||||
*/
|
*/
|
||||||
li $t0, CONFIG_STACK_BOTTOM
|
li $t0, CONFIG_BOOTBLOCK_STACK_BOTTOM
|
||||||
addi $t1, $sp, -4
|
addi $t1, $sp, -4
|
||||||
li $t2, 0xdeadbeef
|
li $t2, 0xdeadbeef
|
||||||
1: sw $t2, 0($t0)
|
1: sw $t2, 0($t0)
|
||||||
|
|
|
@ -57,15 +57,17 @@ config CBMEM_CONSOLE_PRERAM_BASE
|
||||||
Allocate 4KB to the pre-ram console buffer, we should be able to use
|
Allocate 4KB to the pre-ram console buffer, we should be able to use
|
||||||
GRAM eventually and have a much larger buffer.
|
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
|
hex
|
||||||
default CBMEM_CONSOLE_PRERAM_BASE
|
default CBMEM_CONSOLE_PRERAM_BASE
|
||||||
|
|
||||||
config STACK_BOTTOM
|
|
||||||
hex
|
|
||||||
default 0x9b00f000
|
|
||||||
help
|
help
|
||||||
Allocating 12KB for the stack, should be able to have more once GRAM
|
Bootblock stack starts immediately under the CBMEM console buffer,
|
||||||
is available.
|
stack location might be changed by romstage.
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|
Loading…
Reference in New Issue