mirror of
https://github.com/Fishwaldo/opensbi.git
synced 2025-03-15 19:31:32 +00:00
platform: Apply relocatable address
Since jump and payload firmware support relocatable address, make general platform use runtime relocatable address. Signed-off-by: Inochi Amaoto <inochiama@outlook.com> Reviewed-by: Anup Patel <anup@brainfault.org>
This commit is contained in:
parent
f056939d8a
commit
2cff7f350f
2 changed files with 21 additions and 4 deletions
|
@ -27,12 +27,12 @@ FW_DYNAMIC=y
|
|||
FW_JUMP=y
|
||||
ifeq ($(PLATFORM_RISCV_XLEN), 32)
|
||||
# This needs to be 4MB aligned for 32-bit system
|
||||
FW_JUMP_ADDR=$(shell printf "0x%X" $$(($(FW_TEXT_START) + 0x400000)))
|
||||
FW_JUMP_OFFSET=0x400000
|
||||
else
|
||||
# This needs to be 2MB aligned for 64-bit system
|
||||
FW_JUMP_ADDR=$(shell printf "0x%X" $$(($(FW_TEXT_START) + 0x200000)))
|
||||
FW_JUMP_OFFSET=0x200000
|
||||
endif
|
||||
FW_JUMP_FDT_ADDR=$(shell printf "0x%X" $$(($(FW_TEXT_START) + 0x2200000)))
|
||||
FW_JUMP_FDT_OFFSET=0x2200000
|
||||
FW_PAYLOAD=y
|
||||
ifeq ($(PLATFORM_RISCV_XLEN), 32)
|
||||
# This needs to be 4MB aligned for 32-bit system
|
||||
|
@ -41,4 +41,4 @@ else
|
|||
# This needs to be 2MB aligned for 64-bit system
|
||||
FW_PAYLOAD_OFFSET=0x200000
|
||||
endif
|
||||
FW_PAYLOAD_FDT_ADDR=$(FW_JUMP_FDT_ADDR)
|
||||
FW_PAYLOAD_FDT_OFFSET=$(FW_JUMP_FDT_OFFSET)
|
||||
|
|
|
@ -63,6 +63,17 @@ FW_JUMP=<y|n>
|
|||
# This needs to be 4MB aligned for 32-bit support
|
||||
# This needs to be 2MB aligned for 64-bit support
|
||||
# ifeq ($(PLATFORM_RISCV_XLEN), 32)
|
||||
# FW_JUMP_OFFSET=0x400000
|
||||
# else
|
||||
# FW_JUMP_OFFSET=0x200000
|
||||
# endif
|
||||
# FW_JUMP_FDT_OFFSET=0x2200000
|
||||
#
|
||||
# You can use fixed address for jump firmware as an alternative option,
|
||||
# but this may fail when setting wrong FW_TEXT_START. Use with caution.
|
||||
# SBI will prefer "<X>_ADDR" if both "<X>_ADDR" and "<X>_OFFSET" are
|
||||
# defined
|
||||
# ifeq ($(PLATFORM_RISCV_XLEN), 32)
|
||||
# FW_JUMP_ADDR=0x80400000
|
||||
# else
|
||||
# FW_JUMP_ADDR=0x80200000
|
||||
|
@ -84,4 +95,10 @@ FW_PAYLOAD_OFFSET=0x200000
|
|||
endif
|
||||
# FW_PAYLOAD_ALIGN=0x1000
|
||||
# FW_PAYLOAD_PATH="path to next boot stage binary image file"
|
||||
# FW_PAYLOAD_FDT_OFFSET=0x2200000
|
||||
#
|
||||
# You can use fixed address for payload firmware as an alternative option,
|
||||
# but this may fail when setting wrong FW_TEXT_START. Use with caution.
|
||||
# SBI will prefer "FW_PAYLOAD_FDT_ADDR" if both "FW_PAYLOAD_FDT_OFFSET"
|
||||
# and "FW_PAYLOAD_FDT_ADDR" are defined.
|
||||
# FW_PAYLOAD_FDT_ADDR=0x82200000
|
||||
|
|
Loading…
Add table
Reference in a new issue