summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSughosh Ganu <sughosh.ganu@linaro.org>2020-12-30 19:27:00 +0530
committerHeinrich Schuchardt <xypron.glpk@gmx.de>2020-12-31 14:41:31 +0100
commite1ee06dde7b133267d5780d48dc5a47e672fc36c (patch)
treeae886ee9f300a1058860f1b8932989f4fbebfd03
parent322c813f4becb6a256e0eeedd8e6a856bb075dfc (diff)
downloadu-boot-e1ee06dde7b133267d5780d48dc5a47e672fc36c.tar.gz
u-boot-e1ee06dde7b133267d5780d48dc5a47e672fc36c.tar.bz2
u-boot-e1ee06dde7b133267d5780d48dc5a47e672fc36c.zip
qemu: arm: Initialise virtio devices in board_late_init
On the qemu arm platform, the virtio devices are initialised in the board_init function, which gets called before the initr_pci. With this sequence, the virtio block devices on the pci bus are not initialised. Move the initialisation of the virtio devices to board_late_init which gets called after the call to initr_pci. Signed-off-by: Sughosh Ganu <sughosh.ganu@linaro.org>
-rw-r--r--arch/arm/mach-qemu/Kconfig2
-rw-r--r--board/emulation/qemu-arm/qemu-arm.c5
2 files changed, 7 insertions, 0 deletions
diff --git a/arch/arm/mach-qemu/Kconfig b/arch/arm/mach-qemu/Kconfig
index 588d2d3102..186c3582eb 100644
--- a/arch/arm/mach-qemu/Kconfig
+++ b/arch/arm/mach-qemu/Kconfig
@@ -16,12 +16,14 @@ choice
config TARGET_QEMU_ARM_32BIT
bool "ARMv7-A, 32bit"
select ARCH_SUPPORT_PSCI
+ select BOARD_LATE_INIT
select CPU_V7A
select SYS_ARCH_TIMER
config TARGET_QEMU_ARM_64BIT
bool "ARMv8, 64bit"
select ARM64
+ select BOARD_LATE_INIT
endchoice
diff --git a/board/emulation/qemu-arm/qemu-arm.c b/board/emulation/qemu-arm/qemu-arm.c
index f18f2ed7da..aa68bef469 100644
--- a/board/emulation/qemu-arm/qemu-arm.c
+++ b/board/emulation/qemu-arm/qemu-arm.c
@@ -65,6 +65,11 @@ struct mm_region *mem_map = qemu_arm64_mem_map;
int board_init(void)
{
+ return 0;
+}
+
+int board_late_init(void)
+{
/*
* Make sure virtio bus is enumerated so that peripherals
* on the virtio bus can be discovered by their drivers