u-boot/board/emulation/qemu-riscv/Kconfig
Anup Patel 8aa278df0a riscv: qemu: Use correct SYS_TEXT_BASE for S-mode on 32bit system
For 32bit system, the OpenSBI (or BBL) will jump to 0x80400000 address
in S-mode whereas for 64bit system it will jump to 0x80200000 address
in S-mode.

Currently, the S-mode U-Boot sets SYS_TEXT_BASE to 0x80200000 for both
32bit and 64bit system. This breaks S-mode U-Boot for 32bit system.

This patch sets different SYS_TEXT_BASE for 32bit and 64bit system so
that S-mode U-Boot works fine for both.

Signed-off-by: Anup Patel <anup.patel@wdc.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Lukas Auer <lukas.auer@aisec.fraunhofer.de>
Tested-by: Karsten Merker <merker@debian.org>
2019-05-09 16:46:24 +08:00

40 lines
716 B
Text

if TARGET_QEMU_VIRT
config SYS_BOARD
default "qemu-riscv"
config SYS_VENDOR
default "emulation"
config SYS_CPU
default "generic"
config SYS_CONFIG_NAME
default "qemu-riscv"
config SYS_TEXT_BASE
default 0x80000000 if !RISCV_SMODE
default 0x80200000 if RISCV_SMODE && ARCH_RV64I
default 0x80400000 if RISCV_SMODE && ARCH_RV32I
config BOARD_SPECIFIC_OPTIONS # dummy
def_bool y
select GENERIC_RISCV
imply SYS_NS16550
imply VIRTIO_MMIO
imply VIRTIO_NET
imply VIRTIO_BLK
imply CMD_PING
imply CMD_FS_GENERIC
imply DOS_PARTITION
imply EFI_PARTITION
imply ISO_PARTITION
imply CMD_EXT2
imply CMD_EXT4
imply CMD_FAT
imply BOARD_LATE_INIT
imply OF_BOARD_SETUP
imply SIFIVE_SERIAL
imply SMP
endif