* [PATCH] hw/arm/xilinx_zynq: Fix IRQ/FIQ routing
@ 2024-06-10 5:29 Sebastian Huber
2024-06-10 6:04 ` Philippe Mathieu-Daudé
2024-06-10 10:26 ` Peter Maydell
0 siblings, 2 replies; 3+ messages in thread
From: Sebastian Huber @ 2024-06-10 5:29 UTC (permalink / raw)
To: qemu-devel; +Cc: qemu-arm, Peter Maydell
Fix the system bus interrupt line to CPU core assignment.
Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
---
hw/arm/xilinx_zynq.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/hw/arm/xilinx_zynq.c b/hw/arm/xilinx_zynq.c
index 7f7a3d23fb..c79661bbc1 100644
--- a/hw/arm/xilinx_zynq.c
+++ b/hw/arm/xilinx_zynq.c
@@ -252,10 +252,11 @@ static void zynq_init(MachineState *machine)
zynq_binfo.gic_cpu_if_addr = MPCORE_PERIPHBASE + 0x100;
sysbus_create_varargs("l2x0", MPCORE_PERIPHBASE + 0x2000, NULL);
for (n = 0; n < smp_cpus; n++) {
+ /* See "hw/intc/arm_gic.h" for the IRQ line association */
DeviceState *cpudev = DEVICE(zynq_machine->cpu[n]);
- sysbus_connect_irq(busdev, (2 * n) + 0,
+ sysbus_connect_irq(busdev, n,
qdev_get_gpio_in(cpudev, ARM_CPU_IRQ));
- sysbus_connect_irq(busdev, (2 * n) + 1,
+ sysbus_connect_irq(busdev, smp_cpus + n,
qdev_get_gpio_in(cpudev, ARM_CPU_FIQ));
}
--
2.35.3
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] hw/arm/xilinx_zynq: Fix IRQ/FIQ routing
2024-06-10 5:29 [PATCH] hw/arm/xilinx_zynq: Fix IRQ/FIQ routing Sebastian Huber
@ 2024-06-10 6:04 ` Philippe Mathieu-Daudé
2024-06-10 10:26 ` Peter Maydell
1 sibling, 0 replies; 3+ messages in thread
From: Philippe Mathieu-Daudé @ 2024-06-10 6:04 UTC (permalink / raw)
To: Sebastian Huber, qemu-devel; +Cc: qemu-arm, Peter Maydell
On 10/6/24 07:29, Sebastian Huber wrote:
> Fix the system bus interrupt line to CPU core assignment.
>
> Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
> ---
> hw/arm/xilinx_zynq.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] hw/arm/xilinx_zynq: Fix IRQ/FIQ routing
2024-06-10 5:29 [PATCH] hw/arm/xilinx_zynq: Fix IRQ/FIQ routing Sebastian Huber
2024-06-10 6:04 ` Philippe Mathieu-Daudé
@ 2024-06-10 10:26 ` Peter Maydell
1 sibling, 0 replies; 3+ messages in thread
From: Peter Maydell @ 2024-06-10 10:26 UTC (permalink / raw)
To: Sebastian Huber; +Cc: qemu-devel, qemu-arm
On Mon, 10 Jun 2024 at 06:29, Sebastian Huber
<sebastian.huber@embedded-brains.de> wrote:
>
> Fix the system bus interrupt line to CPU core assignment.
>
> Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>
> ---
> hw/arm/xilinx_zynq.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/hw/arm/xilinx_zynq.c b/hw/arm/xilinx_zynq.c
> index 7f7a3d23fb..c79661bbc1 100644
> --- a/hw/arm/xilinx_zynq.c
> +++ b/hw/arm/xilinx_zynq.c
> @@ -252,10 +252,11 @@ static void zynq_init(MachineState *machine)
> zynq_binfo.gic_cpu_if_addr = MPCORE_PERIPHBASE + 0x100;
> sysbus_create_varargs("l2x0", MPCORE_PERIPHBASE + 0x2000, NULL);
> for (n = 0; n < smp_cpus; n++) {
> + /* See "hw/intc/arm_gic.h" for the IRQ line association */
> DeviceState *cpudev = DEVICE(zynq_machine->cpu[n]);
> - sysbus_connect_irq(busdev, (2 * n) + 0,
> + sysbus_connect_irq(busdev, n,
> qdev_get_gpio_in(cpudev, ARM_CPU_IRQ));
> - sysbus_connect_irq(busdev, (2 * n) + 1,
> + sysbus_connect_irq(busdev, smp_cpus + n,
> qdev_get_gpio_in(cpudev, ARM_CPU_FIQ));
> }
Applied to target-arm.next, thanks.
-- PMM
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2024-06-10 10:27 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-06-10 5:29 [PATCH] hw/arm/xilinx_zynq: Fix IRQ/FIQ routing Sebastian Huber
2024-06-10 6:04 ` Philippe Mathieu-Daudé
2024-06-10 10:26 ` Peter Maydell
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).