The following changes since commit 7d0e02405fc02a181319b1ab8681d2f72246b7c6:
Merge remote-tracking branch 'remotes/vivier2/tags/trivial-patches-pull-request' into staging (2019-07-01 17:40:32 +0100) are available in the Git repository at: git://github.com/dgibson/qemu.git tags/ppc-for-4.1-20190702 for you to fetch changes up to 1c3d4a8f4b4f24baa9dae31db0599925abc7d2a2: spapr/xive: Add proper rollback to kvmppc_xive_connect() (2019-07-02 10:11:44 +1000) ---------------------------------------------------------------- ppc patch queue 2019-07-2 Here's my next pull request for qemu-4.1. I'm not sure if this will squeak in just before the soft freeze, or just after. I don't think it really matters - most of this is bugfixes anyway. There's some cleanups which aren't stictly bugfixes, but which I think are safe enough improvements to go in the soft freeze. There's no true feature work. Unfortunately, I wasn't able to complete a few of my standard battery of pre-pull tests, due to some failures that appear to also be in master. I'm hoping that hasn't missed anything important in here. Highlights are: * A number of fixe and cleanups for the XIVE implementation * Cleanups to the XICS interrupt controller to fit better with the new XIVE code * Numerous fixes and improvements to TCG handling of ppc vector instructions * Remove a number of unnnecessary #ifdef CONFIG_KVM guards * Fix some errors in the PCI hotplug paths * Assorted other fixes ---------------------------------------------------------------- Alexey Kardashevskiy (1): spapr/rtas: Force big endian compile for rtas Cédric Le Goater (11): docs: updates on the POWER9 XIVE interrupt controller documentation ppc/pnv: fix StoreEOI activation ppc/pnv: fix XSCOM MMIO base address for P9 machines with multiple chips ppc/pnv: remove xscom_base field from PnvChip target/ppc: fix compile error in kvmppc_define_rtas_kernel_token() spapr/xive: rework the mapping the KVM memory regions spapr/xive: simplify spapr_irq_init_device() to remove the emulated init ppc/xive: Force the Physical CAM line value to group mode ppc/xive: Make the PIPR register readonly ppc/pnv: Rework cache watch model of PnvXIVE ppc/xive: Fix TM_PULL_POOL_CTX special operation Greg Kurz (21): xics/spapr: Prevent RTAS/hypercalls emulation to be used by in-kernel XICS xics/spapr: Register RTAS/hypercalls once at machine init xics/spapr: Detect old KVM XICS on POWER9 hosts xics: Add comment about CPU hotplug spapr_pci: Fix DRC owner in spapr_dt_pci_bus() xics/spapr: Only emulated XICS should use RTAS/hypercalls emulation spapr_pci: Drop useless CONFIG_KVM ifdefery hw/ppc/mac_oldworld: Drop useless CONFIG_KVM ifdefery hw/ppc/mac_newworld: Drop useless CONFIG_KVM ifdefery hw/ppc/prep: Drop useless CONFIG_KVM ifdefery hw/ppc: Drop useless CONFIG_KVM ifdefery xics/spapr: Drop unused function declaration xics/spapr: Rename xics_kvm_init() xics/kvm: Skip rollback when KVM XICS is absent xics/kvm: Always use local_err in xics_kvm_init() xics/kvm: Add error propagation to ic*_set_kvm_state() functions xics/kvm: Add proper rollback to xics_kvm_init() ppc: Introduce kvmppc_set_reg_tb_offset() helper target/ppc/machine: Add kvmppc_pvr_workaround_required() stub spapr_pci: Unregister listeners before destroying the IOMMU address space spapr/xive: Add proper rollback to kvmppc_xive_connect() Mark Cave-Ayland (15): target/ppc: remove getVSR()/putVSR() from fpu_helper.c target/ppc: remove getVSR()/putVSR() from mem_helper.c target/ppc: remove getVSR()/putVSR() from int_helper.c target/ppc: introduce separate VSX_CMP macro for xvcmp* instructions target/ppc: introduce GEN_VSX_HELPER_X3 macro to fpu_helper.c target/ppc: introduce separate generator and helper for xscvqpdp target/ppc: introduce GEN_VSX_HELPER_X2 macro to fpu_helper.c target/ppc: introduce GEN_VSX_HELPER_X2_AB macro to fpu_helper.c target/ppc: introduce GEN_VSX_HELPER_X1 macro to fpu_helper.c target/ppc: introduce GEN_VSX_HELPER_R3 macro to fpu_helper.c target/ppc: introduce GEN_VSX_HELPER_R2 macro to fpu_helper.c target/ppc: introduce GEN_VSX_HELPER_R2_AB macro to fpu_helper.c target/ppc: decode target register in VSX_VECTOR_LOAD_STORE_LENGTH at translation time target/ppc: decode target register in VSX_EXTRACT_INSERT at translation time target/ppc: improve VSX_FMADD with new GEN_VSX_HELPER_VSX_MADD macro Philippe Mathieu-Daudé (1): spapr_pci: Fix potential NULL pointer dereference in spapr_dt_pci_bus() docs/specs/ppc-spapr-xive.rst | 112 ++++- docs/specs/ppc-xive.rst | 9 +- hw/intc/pnv_xive.c | 145 +++++-- hw/intc/spapr_xive.c | 38 +- hw/intc/spapr_xive_kvm.c | 55 ++- hw/intc/xics.c | 40 +- hw/intc/xics_kvm.c | 117 +++-- hw/intc/xics_spapr.c | 55 ++- hw/intc/xive.c | 72 ++- hw/ppc/mac_newworld.c | 4 - hw/ppc/mac_oldworld.c | 2 - hw/ppc/pnv.c | 34 +- hw/ppc/pnv_xscom.c | 17 +- hw/ppc/ppc.c | 7 +- hw/ppc/prep.c | 2 - hw/ppc/spapr_irq.c | 39 +- hw/ppc/spapr_pci.c | 28 +- include/exec/memory.h | 10 + include/hw/ppc/pnv.h | 8 +- include/hw/ppc/pnv_xscom.h | 2 +- include/hw/ppc/spapr.h | 4 - include/hw/ppc/spapr_irq.h | 1 - include/hw/ppc/spapr_xive.h | 2 +- include/hw/ppc/xics.h | 7 +- include/hw/ppc/xics_spapr.h | 3 +- include/hw/ppc/xive.h | 1 + memory.c | 7 + pc-bios/spapr-rtas/Makefile | 5 +- target/ppc/fpu_helper.c | 841 ++++++++++++++++-------------------- target/ppc/helper.h | 320 +++++++------- target/ppc/int_helper.c | 26 +- target/ppc/internal.h | 12 - target/ppc/kvm.c | 11 +- target/ppc/kvm_ppc.h | 10 + target/ppc/machine.c | 2 - target/ppc/mem_helper.c | 25 +- target/ppc/translate/vsx-impl.inc.c | 567 ++++++++++++++++-------- target/ppc/translate/vsx-ops.inc.c | 70 +-- 38 files changed, 1516 insertions(+), 1194 deletions(-)