hw/arm/boot: arm_load_kernel implemented as a machine init done notifier
commitac9d32e39664e060cd1b538ff190980d57ad69e4
authorEric Auger <eric.auger@linaro.org>
Tue, 2 Jun 2015 11:29:12 +0000 (2 12:29 +0100)
committerPeter Maydell <peter.maydell@linaro.org>
Tue, 2 Jun 2015 15:31:17 +0000 (2 16:31 +0100)
tree580082f19f0deaae931bc15e9fbaa2740db3c422
parent11d306b9df172faeeb3409deba4083dbe479b23c
hw/arm/boot: arm_load_kernel implemented as a machine init done notifier

Device tree nodes for the platform bus and its children dynamic sysbus
devices are added in a machine init done notifier. To load the dtb once,
after those latter nodes are built and before ROM freeze, the actual
arm_load_kernel existing code is moved into a notifier notify function,
arm_load_kernel_notify. arm_load_kernel now only registers the
corresponding notifier.

Machine files that do not support platform bus stay unchanged. Machine
files willing to support dynamic sysbus devices must call arm_load_kernel
before sysbus-fdt arm_register_platform_bus_fdt_creator to make sure
dynamic sysbus device nodes are integrated in the dtb.

Signed-off-by: Eric Auger <eric.auger@linaro.org>
Reviewed-by: Shannon Zhao <zhaoshenglong@huawei.com>
Reviewed-by: Alexander Graf <agraf@suse.de>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Message-id: 1433244554-12898-3-git-send-email-eric.auger@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
hw/arm/boot.c
include/hw/arm/arm.h