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.

---
  v1 ... v2:
    1. Refresh to latest version.
    2. Rename present_cpu_map with present_map, and present_cpu with index.
    3. Replace present_cpu and cs with struct::IPICPUState.

---
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       |  10 ++
 include/hw/intc/loongson_ipi_common.h |   3 +-
 include/hw/loongarch/virt.h           |   9 ++
 7 files changed, 164 insertions(+), 33 deletions(-)


base-commit: 2b7a80e07a29074530a0ebc8005a418ee07b1faf
-- 
2.39.3


Reply via email to