ARM: Make it possible to use a custom bootblock implementation.
Tegra needs to use a custom bootblock implementation because it starts on a
coprocessor which uses ARMv4. It doesn't have the same control registers,
caches, etc., and the regular bootblock gets exceptions and dies.
Change-Id: Id197db2939bc840ad64244d6e2017fc5c89e0cbd
Signed-off-by: Gabe Black <gabeblack@google.com>
Reviewed-on: https://chromium-review.googlesource.com/171018
Reviewed-by: Ronald Minnich <rminnich@chromium.org>
Commit-Queue: Gabe Black <gabeblack@chromium.org>
Tested-by: Gabe Black <gabeblack@chromium.org>
(cherry picked from commit a66393fdd6)
Signed-off-by: Isaac Christensen <isaac.christensen@se-eng.com>
Reviewed-on: http://review.coreboot.org/6710
Tested-by: build bot (Jenkins)
Reviewed-by: Ronald G. Minnich <rminnich@gmail.com>
Reviewed-by: Furquan Shaikh <furquan@google.com>
This commit is contained in:
parent
74fade43ee
commit
a2a87d4bca
2 changed files with 10 additions and 3 deletions
|
|
@ -11,6 +11,12 @@ config ARCH_RAMSTAGE_ARMV7
|
|||
bool
|
||||
default n
|
||||
|
||||
# If a custom bootblock is necessary, this option should be "select"-ed by
|
||||
# the thing that needs it, probably the CPU.
|
||||
config ARM_BOOTBLOCK_CUSTOM
|
||||
bool
|
||||
default n
|
||||
|
||||
config CPU_HAS_BOOTBLOCK_INIT
|
||||
bool
|
||||
default n
|
||||
|
|
|
|||
|
|
@ -51,11 +51,12 @@ endif # CONFIG_ARCH_ARMV7
|
|||
|
||||
ifeq ($(CONFIG_ARCH_BOOTBLOCK_ARMV7),y)
|
||||
|
||||
bootblock-y += id.S
|
||||
ifneq ($(CONFIG_ARM_BOOTBLOCK_CUSTOM),y)
|
||||
bootblock-y += bootblock.S
|
||||
|
||||
bootblock-$(CONFIG_BOOTBLOCK_SIMPLE) += bootblock_simple.c
|
||||
endif
|
||||
bootblock-y += id.S
|
||||
$(obj)/arch/arm/id.bootblock.o: $(obj)/build.h
|
||||
bootblock-y += $(call strip_quotes,$(CONFIG_BOOTBLOCK_SOURCE))
|
||||
|
||||
bootblock-y += stages.c
|
||||
bootblock-y += cache.c
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue