mbox series

[0/5] hw/intc/loongarch_ipi: Enhance multiple CPU irq routing

Message ID 20241128021024.662057-1-maobibo@loongson.cn (mailing list archive)
Headers show
Series hw/intc/loongarch_ipi: Enhance multiple CPU irq routing | expand

Message

Bibo Mao Nov. 28, 2024, 2:10 a.m. UTC
LoongArch IPI can send intterrupt to multiple CPUs, physical cpu id is
used to route interrupt for CPUs.

With cpu hotplug feature in future, logic cpu index depends on
CPUState::cpu_index heavily. Here add cpu hotplug notification interface
in IPI driver, cpu mapping logic is created inside. CPUState::cpu_index
is not used any more by IPI driver. 

Bibo Mao (5):
  hw/intc/loongson_ipi: Add more output parameter for cpu_by_arch_id
  hw/intc/loongarch_ipi: Add basic hotplug framework
  hw/intc/loongarch_ipi: Add cpu map table from physical cpu id
  hw/intc/loongarch_ipi: Implment cpu hotplug interface
  hw/intc/loongarch_ipi: Optimize function cpu_by_arch_id

 hw/intc/loongarch_ipi.c               | 126 ++++++++++++++++++++++----
 hw/intc/loongson_ipi.c                |  23 ++++-
 hw/intc/loongson_ipi_common.c         |  21 +++--
 hw/loongarch/virt.c                   |   5 +-
 include/hw/intc/loongarch_ipi.h       |   6 ++
 include/hw/intc/loongson_ipi_common.h |   3 +-
 include/hw/loongarch/virt.h           |   9 ++
 7 files changed, 160 insertions(+), 33 deletions(-)


base-commit: 791e3837c1105aec4e328674aad32e34056957e2