The following changes since commit 835f3d24b42fcbeca5c49048994a4e5d0fe905c5:
Merge remote-tracking branch 'remotes/kraxel/tags/pull-audio-20161027-1' into staging (2016-10-27 17:24:29 +0100) are available in the git repository at: git://github.com/dgibson/qemu.git tags/ppc-for-2.8-20161028 for you to fetch changes up to 10c21b5c20bf3d20b7b0ad279db37ae89cc7937d: ppc: allow certain HV interrupts to be delivered to guests (2016-10-28 11:17:35 +1100) ---------------------------------------------------------------- ppc patch queue 2016-10-28 This pull request supersedes and extends the one from 2016-10-26 (which had a build bug). Highlights: * SLOF (pseries guest firmware) update * Enable a number of extra testcases on ppc / pseries * Added the 'powernv' machine type - Almost enough to be minimally usable - But still missing necessary interrupt controller updates * Cleanup and consolidation of NVRAM handling on several platforms with related firmware * Substantial cleanup to device tree construction * Some more POWER9 instruction emulation * Cleanup to handling of pseries option vectors and CAS reboot handling (host/guest feature negotiation mechanism) * Significant cleanups to handling of PCI devices in test cases * New hotplug event infrastructure * Memory hot unplug support for pseries * Several bug fixes The NVRAM cleanup affects some Sun sparc platforms as well as ppc ones, but have been tested by the sparc maintainer (Mark Cave-Ayland). The test additions also include substantial general changes to the test framework that aren't strictly ppc related. They don't seem to break tests on other platforms, they're for the benefit of enabling tests on ppc and there isn't a specific maintainer for them, so they're included in this tree. ---------------------------------------------------------------- Alexey Kardashevskiy (2): pseries: Update SLOF firmware image to 20161019 configure, ppc64: Copy skiboot.lid to build directory when configuring Benjamin Herrenschmidt (4): ppc/xics: Add xics to the monitor "info pic" command ppc: Fix single step with gdb stub ppc/pnv: add skeleton PowerNV platform ppc/pnv: add a LPC controller Bharata B Rao (2): spapr: Add DRC count indexed hotplug identifier type spapr: Memory hot-unplug support Cédric Le Goater (11): ppc/xics: add a xics_set_nr_servers common routine ppc/xics: add a XICSState backlink in ICPState ppc/xics: change the icp_ routines API to use an 'ICPState *' argument ppc: add skiboot firmware for the pnv platform ppc/pnv: add a PnvChip object ppc/pnv: add a core mask to PnvChip ppc/pnv: add a PIR handler to PnvChip ppc/pnv: add a PnvCore object ppc/pnv: add XSCOM infrastructure ppc/pnv: add XSCOM handlers to PnvCore ppc/pnv: add a ISA bus David Gibson (26): pseries: Remove unused callbacks from sPAPR VIO bus state pseries: Split device tree construction from device tree load pseries: Remove rtas_addr and fdt_addr fields from machinestate pseries: Make spapr_create_fdt_skel() get information from machine state pseries: Move adding of fdt reserve map entries pseries: Consolidate RTAS loading pseries: Move construction of /interrupt-controller fdt node pseries: Consolidate construction of /chosen device tree node pseries: Consolidate construction of /rtas device tree node pseries: Move /event-sources construction to spapr_build_fdt() pseries: Move /hypervisor node construction to fdt_build_fdt() pseries: Consolidate construction of /vdevice device tree node pseries: Remove spapr_create_fdt_skel() libqos: Give qvirtio_config_read*() consistent semantics libqos: Handle PCI IO de-multiplexing in common code libqos: Move BAR assignment to common code libqos: Better handling of PCI legacy IO tests: Adjust tco-test to use qpci_legacy_iomap() libqos: Add streaming accessors for PCI MMIO libqos: Implement mmio accessors in terms of mem{read,write} tests: Clean up IO handling in ide-test libqos: Add 64-bit PCI IO accessors tests: Use qpci_mem{read,write} in ivshmem-test tests: Don't assume structure of PCI IO base in ahci-test libqos: Change PCI accessors to take opaque BAR handle tests: Add pseries machine to the prom-env-test, too Hervé Poussineau (1): adb: change handler only when recognized Laurent Vivier (6): tests: fix memory leak in virtio-scsi-test tests: don't check if qtest_spapr_boot() returns NULL tests: move QVirtioBus pointer into QVirtioDevice tests: rename target_big_endian() as qvirtio_is_big_endian() tests: use qtest_pc_boot()/qtest_shutdown() in virtio tests tests: enable virtio tests on SPAPR Michael Roth (9): spapr_pci: advertise explicit numa IDs even when there's 1 node spapr_ovec: initial implementation of option vector helpers spapr_hcall: use spapr_ovec_* interfaces for CAS options spapr: add option vector handling in CAS-generated resets spapr: improve ibm,architecture-vec-5 property handling spapr: update spapr hotplug documentation spapr_events: add support for dedicated hotplug event source spapr: add hotplug interrupt machine options spapr: use count+index for memory hotplug Nicholas Piggin (2): ppc: fix MSR_ME handling for system reset interrupt ppc: allow certain HV interrupts to be delivered to guests Nikunj A Dadhania (2): target-ppc: implement vnegw/d instructions target-ppc: implement xxbr[qdwh] instruction Sandipan Das (1): target-ppc: add xscmp[eq,gt,ge,ne]dp instructions Swapnil Bokade (1): target-ppc: Add xvcmpnesp, xvcmpnedp instructions Thomas Huth (5): nvram: Introduce helper functions for CHRP "system" and "free space" partitions sparc: Use the new common NVRAM functions for system and free space partition nvram: Move the remaining CHRP NVRAM related code to chrp_nvram.[ch] nvram: Rename openbios_firmware_abi.h into sun_nvram.h spapr_nvram: Pre-initialize the NVRAM to support the -prom-env parameter Vasant Hegde (1): target-ppc: add vmul10[u,eu,cu,ecu]q instructions .gitmodules | 3 + MAINTAINERS | 1 + Makefile | 2 +- configure | 1 + default-configs/ppc64-softmmu.mak | 1 + docs/specs/ppc-spapr-hotplug.txt | 55 +- hw/input/adb.c | 26 +- hw/intc/xics.c | 99 ++- hw/intc/xics_kvm.c | 13 +- hw/intc/xics_spapr.c | 53 +- hw/nvram/Makefile.objs | 1 + hw/nvram/chrp_nvram.c | 85 +++ hw/nvram/mac_nvram.c | 49 +- hw/nvram/spapr_nvram.c | 6 + hw/ppc/Makefile.objs | 4 +- hw/ppc/pnv.c | 819 +++++++++++++++++++++ hw/ppc/pnv_core.c | 232 ++++++ hw/ppc/pnv_lpc.c | 471 ++++++++++++ hw/ppc/pnv_xscom.c | 275 +++++++ hw/ppc/spapr.c | 791 ++++++++++++-------- hw/ppc/spapr_cpu_core.c | 2 +- hw/ppc/spapr_drc.c | 17 + hw/ppc/spapr_events.c | 279 +++++-- hw/ppc/spapr_hcall.c | 70 +- hw/ppc/spapr_ovec.c | 242 ++++++ hw/ppc/spapr_pci.c | 8 +- hw/ppc/spapr_rtas.c | 91 +-- hw/ppc/spapr_vio.c | 40 +- hw/sparc/sun4m.c | 35 +- hw/sparc64/sun4u.c | 35 +- include/hw/nvram/chrp_nvram.h | 54 ++ .../nvram/{openbios_firmware_abi.h => sun_nvram.h} | 47 +- include/hw/ppc/pnv.h | 129 ++++ include/hw/ppc/pnv_core.h | 50 ++ include/hw/ppc/pnv_lpc.h | 67 ++ include/hw/ppc/pnv_xscom.h | 78 ++ include/hw/ppc/spapr.h | 27 +- include/hw/ppc/spapr_ovec.h | 67 ++ include/hw/ppc/spapr_vio.h | 6 +- include/hw/ppc/xics.h | 11 +- pc-bios/README | 7 +- pc-bios/skiboot.lid | Bin 0 -> 983893 bytes pc-bios/slof.bin | Bin 923832 -> 898232 bytes roms/Makefile | 8 +- roms/SLOF | 2 +- roms/skiboot | 1 + target-ppc/excp_helper.c | 34 +- target-ppc/fpu_helper.c | 71 +- target-ppc/helper.h | 8 + target-ppc/int_helper.c | 12 + target-ppc/translate.c | 34 +- target-ppc/translate/vmx-impl.inc.c | 74 ++ target-ppc/translate/vmx-ops.inc.c | 10 +- target-ppc/translate/vsx-impl.inc.c | 83 +++ target-ppc/translate/vsx-ops.inc.c | 14 + tests/Makefile.include | 3 +- tests/ahci-test.c | 13 +- tests/e1000e-test.c | 7 +- tests/ide-test.c | 177 +++-- tests/ivshmem-test.c | 47 +- tests/libqos/ahci.c | 4 +- tests/libqos/ahci.h | 7 +- tests/libqos/libqos.c | 2 + tests/libqos/pci-pc.c | 187 ++--- tests/libqos/pci-spapr.c | 194 ++--- tests/libqos/pci.c | 194 ++++- tests/libqos/pci.h | 66 +- tests/libqos/usb.c | 6 +- tests/libqos/usb.h | 2 +- tests/libqos/virtio-mmio.c | 17 +- tests/libqos/virtio-pci.c | 146 ++-- tests/libqos/virtio-pci.h | 2 +- tests/libqos/virtio.c | 78 +- tests/libqos/virtio.h | 57 +- tests/libqtest.h | 10 - tests/postcopy-test.c | 8 +- tests/prom-env-test.c | 20 +- tests/rtas-test.c | 1 - tests/rtl8139-test.c | 10 +- tests/tco-test.c | 80 +- tests/usb-hcd-ehci-test.c | 5 +- tests/vhost-user-test.c | 33 +- tests/virtio-9p-test.c | 73 +- tests/virtio-blk-test.c | 342 ++++----- tests/virtio-net-test.c | 106 +-- tests/virtio-rng-test.c | 7 +- tests/virtio-scsi-test.c | 93 ++- 87 files changed, 4983 insertions(+), 1714 deletions(-) create mode 100644 hw/nvram/chrp_nvram.c create mode 100644 hw/ppc/pnv.c create mode 100644 hw/ppc/pnv_core.c create mode 100644 hw/ppc/pnv_lpc.c create mode 100644 hw/ppc/pnv_xscom.c create mode 100644 hw/ppc/spapr_ovec.c create mode 100644 include/hw/nvram/chrp_nvram.h rename include/hw/nvram/{openbios_firmware_abi.h => sun_nvram.h} (50%) create mode 100644 include/hw/ppc/pnv.h create mode 100644 include/hw/ppc/pnv_core.h create mode 100644 include/hw/ppc/pnv_lpc.h create mode 100644 include/hw/ppc/pnv_xscom.h create mode 100644 include/hw/ppc/spapr_ovec.h create mode 100644 pc-bios/skiboot.lid create mode 160000 roms/skiboot