sPAPR xics related changes required for powernv platform. This brings infrastructure to get the xics native mode for powernv. Tested pseries guests in KVM and TCG mode. These are the pending patches of the original set.
Changelog v3: * Added ICP_Native and XICSNative in "native" implementation * Added fix for migration hang when kernel-irqchip=off Changelog v2: * Restore xirr_owner after migration * Call icp_resend after restoring all the ICP Changelog v1: * Change XICS to XICS_SPAPR and KVM_XICS to XICS_KVM_SPAPR * Added xics_ to function get_cpu_index_by_dt_id as this is a global symbol * Dropped server parameter from icp_check_ipi * Send HW_ERROR when ics is NULL * Remove redundant parameters in trace routines * Use type ICS_SIMPLE, ICS_BASE and ICS_KVM * Dropped xics-native and info pic patches for this version ToDo: + xics_spapr_alloc - getting rid of that Benjamin Herrenschmidt (6): ppc/xics: Make the ICSState a list ppc/xics: An ICS with offset 0 is assumed to be uninitialized ppc/xics: Use a helper to add a new ICS ppc/xics: Split ICS into ics-base and ics class ppc/xics: Add "native" XICS subclass ppc/xics: Add xics to the monitor "info pic" command Nikunj A Dadhania (3): ppc/xics: account correct irq status ppc/xics: Fix migration failure with kernel-irqchip=off ppc/xics: move set_nr_{irqs,servers} to xics.c default-configs/ppc64-softmmu.mak | 3 +- hmp-commands-info.hx | 2 + hw/intc/Makefile.objs | 1 + hw/intc/trace-events | 15 +- hw/intc/xics.c | 405 ++++++++++++++++++++++++++++---------- hw/intc/xics_kvm.c | 55 ++---- hw/intc/xics_native.c | 306 ++++++++++++++++++++++++++++ hw/intc/xics_spapr.c | 147 +++++++------- hw/ppc/ppc.c | 14 ++ hw/ppc/spapr_events.c | 2 +- hw/ppc/spapr_pci.c | 5 +- hw/ppc/spapr_vio.c | 2 +- include/hw/ppc/ppc.h | 1 + include/hw/ppc/xics.h | 72 +++++-- monitor.c | 4 + 15 files changed, 787 insertions(+), 247 deletions(-) create mode 100644 hw/intc/xics_native.c -- 2.7.4