From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:38879) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YaYfg-0002BZ-UH for qemu-devel@nongnu.org; Tue, 24 Mar 2015 19:55:46 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YaYff-0000nT-OP for qemu-devel@nongnu.org; Tue, 24 Mar 2015 19:55:44 -0400 Received: from mail-pa0-x22a.google.com ([2607:f8b0:400e:c03::22a]:36761) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YaYff-0000nD-HX for qemu-devel@nongnu.org; Tue, 24 Mar 2015 19:55:43 -0400 Received: by padcy3 with SMTP id cy3so9032565pad.3 for ; Tue, 24 Mar 2015 16:55:42 -0700 (PDT) From: Sergey Fedorov Date: Tue, 24 Mar 2015 16:55:30 -0700 Message-Id: <1427241331-11403-3-git-send-email-serge.fdrv@gmail.com> In-Reply-To: <1427241331-11403-1-git-send-email-serge.fdrv@gmail.com> References: <1427241331-11403-1-git-send-email-serge.fdrv@gmail.com> Subject: [Qemu-devel] [PATCH 2/3] hw/arm/vexpress: introduce VEDBoardInfo::smp_bootreg_addr List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Peter Maydell , Sergey Fedorov Require secondary CPU release address to be specified explicitly in each daughterboard info structure. Signed-off-by: Sergey Fedorov --- hw/arm/vexpress.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/hw/arm/vexpress.c b/hw/arm/vexpress.c index 8496c16..97ccf15 100644 --- a/hw/arm/vexpress.c +++ b/hw/arm/vexpress.c @@ -186,6 +186,7 @@ struct VEDBoardInfo { struct arm_boot_info bootinfo; const hwaddr *motherboard_map; hwaddr loader_start; + hwaddr smp_bootreg_addr; const hwaddr gic_cpu_if_addr; uint32_t proc_id; uint32_t num_voltage_sensors; @@ -337,6 +338,7 @@ static const uint32_t a9_clocks[] = { static VEDBoardInfo a9_daughterboard = { .motherboard_map = motherboard_legacy_map, .loader_start = 0x60000000, + .smp_bootreg_addr = 0x10000030, .gic_cpu_if_addr = 0x1e000100, .proc_id = 0x0c000191, .num_voltage_sensors = ARRAY_SIZE(a9_voltages), @@ -418,6 +420,7 @@ static const uint32_t a15_clocks[] = { static VEDBoardInfo a15_daughterboard = { .motherboard_map = motherboard_aseries_map, .loader_start = 0x80000000, + .smp_bootreg_addr = 0x1c010030, .gic_cpu_if_addr = 0x2c002000, .proc_id = 0x14000237, .num_voltage_sensors = ARRAY_SIZE(a15_voltages), @@ -700,7 +703,7 @@ static void vexpress_common_init(MachineState *machine) daughterboard->bootinfo.board_id = VEXPRESS_BOARD_ID; daughterboard->bootinfo.loader_start = daughterboard->loader_start; daughterboard->bootinfo.smp_loader_start = map[VE_SRAM]; - daughterboard->bootinfo.smp_bootreg_addr = map[VE_SYSREGS] + 0x30; + daughterboard->bootinfo.smp_bootreg_addr = daughterboard->smp_bootreg_addr; daughterboard->bootinfo.gic_cpu_if_addr = daughterboard->gic_cpu_if_addr; daughterboard->bootinfo.modify_dtb = vexpress_modify_dtb; /* Indicate that when booting Linux we should be in secure state */ -- 2.3.4