[PULL 00/46] ppc-for-6.1 queue 20210504

David Gibson posted 46 patches 2 weeks ago
Test checkpatch passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20210504055312.306823-1-david@gibson.dropbear.id.au
Maintainers: Greg Kurz <groug@kaod.org>, "Michael S. Tsirkin" <mst@redhat.com>, Jiaxun Yang <jiaxun.yang@flygoat.com>, Laurent Vivier <laurent@vivier.eu>, David Gibson <david@gibson.dropbear.id.au>, "Cédric Le Goater" <clg@kaod.org>, Huacai Chen <chenhuacai@kernel.org>, Marcel Apfelbaum <marcel.apfelbaum@gmail.com>, "Philippe Mathieu-Daudé" <f4bug@amsat.org>
MAINTAINERS                             |  10 +
default-configs/devices/ppc-softmmu.mak |   2 +
docs/system/ppc/ppce500.rst             | 156 ++++++
docs/system/target-ppc.rst              |   1 +
hw/intc/spapr_xive.c                    |   2 +-
hw/isa/vt82c686.c                       | 422 +++++++++++---
hw/pci-host/Kconfig                     |   4 +
hw/pci-host/meson.build                 |   2 +
hw/pci-host/mv64361.c                   | 951 ++++++++++++++++++++++++++++++++
hw/pci-host/mv643xx.h                   | 918 ++++++++++++++++++++++++++++++
hw/pci-host/trace-events                |   6 +
hw/ppc/Kconfig                          |   9 +
hw/ppc/mac_newworld.c                   |   4 +
hw/ppc/meson.build                      |   2 +
hw/ppc/pegasos2.c                       | 144 +++++
hw/ppc/pnv_core.c                       |   3 +-
hw/ppc/pnv_psi.c                        |   4 +-
hw/ppc/spapr.c                          |  19 +-
hw/ppc/spapr_drc.c                      |  23 +
hw/ppc/spapr_hcall.c                    |   8 +-
hw/ppc/spapr_nvdimm.c                   |  36 ++
hw/ppc/spapr_rtas.c                     |   2 +
hw/ppc/spapr_vio.c                      |   2 +-
include/hw/isa/vt82c686.h               |   2 +-
include/hw/pci-host/mv64361.h           |   8 +
include/hw/pci/pci_ids.h                |   4 +-
include/hw/ppc/spapr.h                  |   7 +-
linux-user/ppc/cpu_loop.c               |   5 +-
linux-user/ppc/signal.c                 |  23 +-
pc-bios/u-boot.e500                     | Bin 349148 -> 406920 bytes
roms/Makefile                           |   8 +-
roms/u-boot                             |   2 +-
target/ppc/cpu-qom.h                    |   2 +
target/ppc/cpu.h                        |  80 ++-
target/ppc/excp_helper.c                | 217 ++++++--
target/ppc/gdbstub.c                    | 258 +++++++++
target/ppc/helper.h                     |   1 +
target/ppc/helper_regs.c                | 280 ++++++++++
target/ppc/helper_regs.h                | 183 +-----
target/ppc/int_helper.c                 |   1 +
target/ppc/internal.h                   |  13 +
target/ppc/machine.c                    |  39 +-
target/ppc/mem_helper.c                 |   2 +-
target/ppc/meson.build                  |   1 +
target/ppc/misc_helper.c                |  13 +-
target/ppc/mmu-hash64.c                 |   3 +
target/ppc/translate.c                  | 493 ++++++++++++++---
target/ppc/translate_init.c.inc         | 833 ++++------------------------
48 files changed, 4010 insertions(+), 1198 deletions(-)
create mode 100644 docs/system/ppc/ppce500.rst
create mode 100644 hw/pci-host/mv64361.c
create mode 100644 hw/pci-host/mv643xx.h
create mode 100644 hw/ppc/pegasos2.c
create mode 100644 include/hw/pci-host/mv64361.h
create mode 100644 target/ppc/helper_regs.c

[PULL 00/46] ppc-for-6.1 queue 20210504

Posted by David Gibson 2 weeks ago
The following changes since commit 15106f7dc3290ff3254611f265849a314a93eb0e:

  Merge remote-tracking branch 'remotes/rth-gitlab/tags/pull-hex-20210502' into staging (2021-05-02 16:23:05 +0100)

are available in the Git repository at:

  https://gitlab.com/dgibson/qemu.git tags/ppc-for-6.1-20210504

for you to fetch changes up to 4bb32cd7b1e42c46d274b727c8be8e45b4df3814:

  hw/ppc/pnv_psi: Use device_cold_reset() instead of device_legacy_reset() (2021-05-04 13:12:59 +1000)

----------------------------------------------------------------
ppc patch queue 2021-05-04

Here's the first ppc pull request for qemu-6.1.  It has a wide variety
of stuff accumulated during the 6.0 freeze.  Highlights are:

 * Multi-phase reset cleanups for PAPR
 * Preliminary cleanups towards allowing !CONFIG_TCG for the ppc target
 * Cleanup of AIL logic and extension to POWER10
 * Further improvements to handling of hot unplug failures on PAPR
 * Allow much larger numbers of CPU on pseries
 * Support for the H_SCM_HEALTH hypercall
 * Add support for the Pegasos II board
 * Substantial cleanup to hflag handling
 * Assorted minor fixes and cleanups

----------------------------------------------------------------
Alexey Kardashevskiy (1):
      spapr: Rename RTAS_MAX_ADDR to FDT_MAX_ADDR

BALATON Zoltan (6):
      vt82c686: QOM-ify superio related functionality
      vt82c686: Add VT8231_SUPERIO based on VIA_SUPERIO
      vt82c686: Introduce abstract TYPE_VIA_ISA and base vt82c686b_isa on it
      vt82c686: Add emulation of VT8231 south bridge
      hw/pci-host: Add emulation of Marvell MV64361 PPC system controller
      hw/ppc: Add emulation of Genesi/bPlan Pegasos II

Bin Meng (3):
      roms/Makefile: Update ppce500 u-boot build directory name
      roms/u-boot: Bump ppce500 u-boot to v2021.04 to fix broken pci support
      docs/system: ppc: Add documentation for ppce500 machine

Bruno Larsen (billionai) (3):
      target/ppc: code motion from translate_init.c.inc to gdbstub.c
      target/ppc: move opcode table logic to translate.c
      target/ppc: removed VSCR from SPR registration

Daniel Henrique Barboza (3):
      spapr.c: do not use MachineClass::max_cpus to limit CPUs
      spapr.h: increase FDT_MAX_SIZE
      spapr_drc.c: handle hotunplug errors in drc_unisolate_logical()

Nicholas Piggin (4):
      target/ppc: Fix POWER9 radix guest HV interrupt AIL behaviour
      target/ppc: POWER10 supports scv
      target/ppc: rework AIL logic in interrupt delivery
      target/ppc: Add POWER10 exception model

Peter Maydell (3):
      hw/intc/spapr_xive: Use device_cold_reset() instead of device_legacy_reset()
      hw/ppc/spapr_vio: Reset TCE table object with device_cold_reset()
      hw/ppc/pnv_psi: Use device_cold_reset() instead of device_legacy_reset()

Philippe Mathieu-Daudé (1):
      hw/ppc/mac_newworld: Restrict RAM to 2 GiB

Ravi Bangoria (1):
      ppc: Rename current DAWR macros and variables

Richard Henderson (20):
      target/ppc: Move helper_regs.h functions out-of-line
      target/ppc: Move 601 hflags adjustment to hreg_compute_hflags
      target/ppc: Properly sync cpu state with new msr in cpu_load_old
      target/ppc: Do not call hreg_compute_mem_idx after ppc_store_msr
      target/ppc: Retain hflags_nmsr only for migration
      target/ppc: Fix comment for MSR_FE{0,1}
      hw/ppc/pnv_core: Update hflags after setting msr
      hw/ppc/spapr_rtas: Update hflags after setting msr
      target/ppc: Extract post_load_update_msr
      target/ppc: Disconnect hflags from MSR
      target/ppc: Reduce env->hflags to uint32_t
      target/ppc: Put dbcr0 single-step bits into hflags
      target/ppc: Create helper_scv
      target/ppc: Put LPCR[GTSE] in hflags
      target/ppc: Remove MSR_SA and MSR_AP from hflags
      target/ppc: Remove env->immu_idx and env->dmmu_idx
      linux-user/ppc: Fix msr updates for signal handling
      target/ppc: Validate hflags with CONFIG_DEBUG_TCG
      target/ppc: Clean up _spr_register et al
      target/ppc: Reduce the size of ppc_spr_t

Vaibhav Jain (1):
      ppc/spapr: Add support for implement support for H_SCM_HEALTH

 MAINTAINERS                             |  10 +
 default-configs/devices/ppc-softmmu.mak |   2 +
 docs/system/ppc/ppce500.rst             | 156 ++++++
 docs/system/target-ppc.rst              |   1 +
 hw/intc/spapr_xive.c                    |   2 +-
 hw/isa/vt82c686.c                       | 422 +++++++++++---
 hw/pci-host/Kconfig                     |   4 +
 hw/pci-host/meson.build                 |   2 +
 hw/pci-host/mv64361.c                   | 951 ++++++++++++++++++++++++++++++++
 hw/pci-host/mv643xx.h                   | 918 ++++++++++++++++++++++++++++++
 hw/pci-host/trace-events                |   6 +
 hw/ppc/Kconfig                          |   9 +
 hw/ppc/mac_newworld.c                   |   4 +
 hw/ppc/meson.build                      |   2 +
 hw/ppc/pegasos2.c                       | 144 +++++
 hw/ppc/pnv_core.c                       |   3 +-
 hw/ppc/pnv_psi.c                        |   4 +-
 hw/ppc/spapr.c                          |  19 +-
 hw/ppc/spapr_drc.c                      |  23 +
 hw/ppc/spapr_hcall.c                    |   8 +-
 hw/ppc/spapr_nvdimm.c                   |  36 ++
 hw/ppc/spapr_rtas.c                     |   2 +
 hw/ppc/spapr_vio.c                      |   2 +-
 include/hw/isa/vt82c686.h               |   2 +-
 include/hw/pci-host/mv64361.h           |   8 +
 include/hw/pci/pci_ids.h                |   4 +-
 include/hw/ppc/spapr.h                  |   7 +-
 linux-user/ppc/cpu_loop.c               |   5 +-
 linux-user/ppc/signal.c                 |  23 +-
 pc-bios/u-boot.e500                     | Bin 349148 -> 406920 bytes
 roms/Makefile                           |   8 +-
 roms/u-boot                             |   2 +-
 target/ppc/cpu-qom.h                    |   2 +
 target/ppc/cpu.h                        |  80 ++-
 target/ppc/excp_helper.c                | 217 ++++++--
 target/ppc/gdbstub.c                    | 258 +++++++++
 target/ppc/helper.h                     |   1 +
 target/ppc/helper_regs.c                | 280 ++++++++++
 target/ppc/helper_regs.h                | 183 +-----
 target/ppc/int_helper.c                 |   1 +
 target/ppc/internal.h                   |  13 +
 target/ppc/machine.c                    |  39 +-
 target/ppc/mem_helper.c                 |   2 +-
 target/ppc/meson.build                  |   1 +
 target/ppc/misc_helper.c                |  13 +-
 target/ppc/mmu-hash64.c                 |   3 +
 target/ppc/translate.c                  | 493 ++++++++++++++---
 target/ppc/translate_init.c.inc         | 833 ++++------------------------
 48 files changed, 4010 insertions(+), 1198 deletions(-)
 create mode 100644 docs/system/ppc/ppce500.rst
 create mode 100644 hw/pci-host/mv64361.c
 create mode 100644 hw/pci-host/mv643xx.h
 create mode 100644 hw/ppc/pegasos2.c
 create mode 100644 include/hw/pci-host/mv64361.h
 create mode 100644 target/ppc/helper_regs.c

Re: [PULL 00/46] ppc-for-6.1 queue 20210504

Posted by Peter Maydell 1 week, 4 days ago
On Tue, 4 May 2021 at 06:53, David Gibson <david@gibson.dropbear.id.au> wrote:
>
> The following changes since commit 15106f7dc3290ff3254611f265849a314a93eb0e:
>
>   Merge remote-tracking branch 'remotes/rth-gitlab/tags/pull-hex-20210502' into staging (2021-05-02 16:23:05 +0100)
>
> are available in the Git repository at:
>
>   https://gitlab.com/dgibson/qemu.git tags/ppc-for-6.1-20210504
>
> for you to fetch changes up to 4bb32cd7b1e42c46d274b727c8be8e45b4df3814:
>
>   hw/ppc/pnv_psi: Use device_cold_reset() instead of device_legacy_reset() (2021-05-04 13:12:59 +1000)
>
> ----------------------------------------------------------------
> ppc patch queue 2021-05-04
>
> Here's the first ppc pull request for qemu-6.1.  It has a wide variety
> of stuff accumulated during the 6.0 freeze.  Highlights are:
>
>  * Multi-phase reset cleanups for PAPR
>  * Preliminary cleanups towards allowing !CONFIG_TCG for the ppc target
>  * Cleanup of AIL logic and extension to POWER10
>  * Further improvements to handling of hot unplug failures on PAPR
>  * Allow much larger numbers of CPU on pseries
>  * Support for the H_SCM_HEALTH hypercall
>  * Add support for the Pegasos II board
>  * Substantial cleanup to hflag handling
>  * Assorted minor fixes and cleanups
>


Applied, thanks.

Please update the changelog at https://wiki.qemu.org/ChangeLog/6.1
for any user-visible changes.

-- PMM