mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-07 09:43:56 -06:00
Add i.MX7 SRC device implementation
The SRC device is normally used to start the secondary CPU. When running Linux directly, QEMU is emulating a PSCI interface that UBOOT is installing at boot time and therefore the fact that the SRC device is unimplemented is hidden as Qemu respond directly to PSCI requets without using the SRC device. But if you try to run a more bare metal application (maybe uboot itself), then it is not possible to start the secondary CPU as the SRC is an unimplemented device. This patch adds the ability to start the secondary CPU through the SRC device so that you can use this feature in bare metal applications. Signed-off-by: Jean-Christophe Dubois <jcd@tribudubois.net> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Message-id: ce9a0162defd2acee5dc7f8a674743de0cded569.1692964892.git.jcd@tribudubois.net Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
parent
736988a040
commit
12517bc978
6 changed files with 356 additions and 2 deletions
|
@ -82,6 +82,11 @@ static void fsl_imx7_init(Object *obj)
|
|||
*/
|
||||
object_initialize_child(obj, "gpcv2", &s->gpcv2, TYPE_IMX_GPCV2);
|
||||
|
||||
/*
|
||||
* SRC
|
||||
*/
|
||||
object_initialize_child(obj, "src", &s->src, TYPE_IMX7_SRC);
|
||||
|
||||
/*
|
||||
* ECSPIs
|
||||
*/
|
||||
|
@ -488,7 +493,8 @@ static void fsl_imx7_realize(DeviceState *dev, Error **errp)
|
|||
/*
|
||||
* SRC
|
||||
*/
|
||||
create_unimplemented_device("src", FSL_IMX7_SRC_ADDR, FSL_IMX7_SRC_SIZE);
|
||||
sysbus_realize(SYS_BUS_DEVICE(&s->src), &error_abort);
|
||||
sysbus_mmio_map(SYS_BUS_DEVICE(&s->src), 0, FSL_IMX7_SRC_ADDR);
|
||||
|
||||
/*
|
||||
* Watchdogs
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue