Interrupt controller extioi and ipi connect to multiple CPUs with irq line method. With command -smp x, -device la464-loongarch-cpu, CPU object may be created with cold-plug method. smp.cpus is not accurate for all possible CPU objects, possible_cpu_arch_ids() is used here.
--- v1 ... v2: 1. Remove cpu irq line connection from machine_done callback, and put it after ipi and extioi irqchip is created. If CPU object is created after ipi irqchip object, there will be double function calling about cpu irq line connection in both cold-plug handler and machine_done callback. --- Bibo Mao (3): hw/loongarch/virt: Set iocsr address space when CPU is created hw/loongarch/virt: Remove unused ipistate hw/loongarch/virt: CPU irq line connection improvement hw/loongarch/virt.c | 67 ++++++++++++++++++++----------------- include/hw/loongarch/virt.h | 2 ++ target/loongarch/cpu.h | 2 -- 3 files changed, 39 insertions(+), 32 deletions(-) base-commit: d922088eb4ba6bc31a99f17b32cf75e59dd306cd -- 2.39.3