mbox

[PULL,00/33] ppc-for-6.1 queue 20210709

Message ID 20210709051728.170203-1-david@gibson.dropbear.id.au (mailing list archive)
State New, archived
Headers show

Pull-request

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

Message

David Gibson July 9, 2021, 5:16 a.m. UTC
The following changes since commit 9db3065c62a983286d06c207f4981408cf42184d:

  Merge remote-tracking branch 'remotes/vivier2/tags/linux-user-for-6.1-pull-request' into staging (2021-07-08 16:30:18 +0100)

are available in the Git repository at:

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

for you to fetch changes up to 82123b756a1a2f1965350e5794aaa7b5c6a15282:

  target/ppc: Support for H_RPT_INVALIDATE hcall (2021-07-09 11:01:06 +1000)

----------------------------------------------------------------
ppc patch queue 2021-07-09

Here's a (probably) final pull request before the qemu-6.1 soft
freeze.  Includes:
  * Implementation of the new H_RPT_INVALIDATE hypercall
  * Virtual Open Firmware for pSeries and pegasos2 machine types.
    This is an experimental minimal Open Firmware implementation which
    works by delegating nearly everything to qemu itself via a special
    hypercall.
  * A number of cleanups to the ppc soft MMU code
  * Fix to handling of two-level radix mode translations for the
    powernv machine type
  * Update the H_GET_CPU_CHARACTERISTICS call with newly defined bits.
    This will allow more flexible handling of possible future CPU
    Spectre-like flaws
  * Correctly treat mtmsrd as an illegal instruction on BookE cpus
  * Firmware update for the ppce500 machine type

----------------------------------------------------------------
Alexey Kardashevskiy (3):
      spapr: tune rtas-size
      spapr: Implement Open Firmware client interface
      spapr: Fix implementation of Open Firmware client interface

BALATON Zoltan (4):
      ppc/pegasos2: Introduce Pegasos2MachineState structure
      target/ppc: Allow virtual hypervisor on CPU without HV
      ppc/pegasos2: Use Virtual Open Firmware as firmware replacement
      ppc/pegasos2: Implement some RTAS functions with VOF

Bharata B Rao (2):
      linux-headers: Update
      target/ppc: Support for H_RPT_INVALIDATE hcall

Bin Meng (2):
      roms/u-boot: Bump ppce500 u-boot to v2021.07 to add eTSEC support
      docs/system: ppc: Update ppce500 documentation with eTSEC support

Bruno Larsen (billionai) (4):
      target/ppc: fix address translation bug for radix mmus
      target/ppc: changed ppc_hash64_xlate to use mmu_idx
      target/ppc: introduce mmu-books.h
      target/ppc: change ppc_hash32_xlate to use mmu_idx

David Gibson (1):
      ppc/pegasos2: Fix use of && instead of &

Fabiano Rosas (3):
      target/ppc: Fix compilation with DUMP_PAGE_TABLES debug option
      target/ppc: Fix compilation with FLUSH_ALL_TLBS debug option
      target/ppc: Fix compilation with DEBUG_BATS debug option

Greg Kurz (2):
      target/ppc: Introduce ppc_interrupts_little_endian()
      target/ppc: Drop PowerPCCPUClass::interrupts_big_endian()

Lucas Mateus Castro (alqotel) (1):
      target/ppc: Don't compile ppc_tlb_invalid_all without TCG

Nicholas Piggin (2):
      target/ppc: mtmsrd is an illegal instruction on BookE
      target/ppc/spapr: Update H_GET_CPU_CHARACTERISTICS L1D cache flush bits

Richard Henderson (9):
      target/ppc: Remove PowerPCCPUClass.handle_mmu_fault
      target/ppc: Use MMUAccessType with *_handle_mmu_fault
      target/ppc: Push real-mode handling into ppc_radix64_xlate
      target/ppc: Use bool success for ppc_radix64_xlate
      target/ppc: Split out ppc_hash64_xlate
      target/ppc: Split out ppc_hash32_xlate
      target/ppc: Split out ppc_jumbo_xlate
      target/ppc: Introduce ppc_xlate
      target/ppc: Restrict ppc_cpu_tlb_fill to TCG

 MAINTAINERS                                        |   12 +
 default-configs/devices/ppc-softmmu.mak            |    2 +-
 docs/system/ppc/ppce500.rst                        |   10 +-
 hw/ppc/Kconfig                                     |    5 +
 hw/ppc/meson.build                                 |    3 +
 hw/ppc/pegasos2.c                                  |  789 ++++++++++++++-
 hw/ppc/spapr.c                                     |   77 +-
 hw/ppc/spapr_caps.c                                |   41 +
 hw/ppc/spapr_hcall.c                               |   24 +-
 hw/ppc/spapr_vof.c                                 |  167 ++++
 hw/ppc/trace-events                                |   24 +
 hw/ppc/vof.c                                       | 1053 ++++++++++++++++++++
 include/hw/ppc/spapr.h                             |   31 +-
 include/hw/ppc/vof.h                               |   58 ++
 include/standard-headers/asm-x86/kvm_para.h        |   13 +
 include/standard-headers/drm/drm_fourcc.h          |    7 +
 include/standard-headers/linux/ethtool.h           |    4 +-
 include/standard-headers/linux/input-event-codes.h |    1 +
 include/standard-headers/linux/virtio_ids.h        |    2 +-
 include/standard-headers/linux/virtio_vsock.h      |    9 +
 linux-headers/asm-arm64/kvm.h                      |   11 +
 linux-headers/asm-generic/mman-common.h            |    3 +
 linux-headers/asm-generic/unistd.h                 |    4 +-
 linux-headers/asm-mips/mman.h                      |    3 +
 linux-headers/asm-mips/unistd_n32.h                |    1 +
 linux-headers/asm-mips/unistd_n64.h                |    1 +
 linux-headers/asm-mips/unistd_o32.h                |    1 +
 linux-headers/asm-powerpc/unistd_32.h              |    1 +
 linux-headers/asm-powerpc/unistd_64.h              |    1 +
 linux-headers/asm-s390/unistd_32.h                 |    1 +
 linux-headers/asm-s390/unistd_64.h                 |    1 +
 linux-headers/asm-x86/kvm.h                        |   13 +
 linux-headers/asm-x86/unistd_32.h                  |    7 +-
 linux-headers/asm-x86/unistd_64.h                  |    7 +-
 linux-headers/asm-x86/unistd_x32.h                 |    7 +-
 linux-headers/linux/kvm.h                          |  105 ++
 linux-headers/linux/userfaultfd.h                  |   11 +-
 pc-bios/README                                     |    4 +
 pc-bios/u-boot.e500                                |  Bin 406920 -> 421720 bytes
 pc-bios/vof-nvram.bin                              |  Bin 0 -> 16384 bytes
 pc-bios/vof.bin                                    |  Bin 0 -> 3456 bytes
 pc-bios/vof/Makefile                               |   23 +
 pc-bios/vof/bootmem.c                              |   14 +
 pc-bios/vof/ci.c                                   |   91 ++
 pc-bios/vof/entry.S                                |   49 +
 pc-bios/vof/libc.c                                 |   66 ++
 pc-bios/vof/main.c                                 |   21 +
 pc-bios/vof/vof.h                                  |   41 +
 pc-bios/vof/vof.lds                                |   48 +
 roms/u-boot                                        |    2 +-
 target/ppc/arch_dump.c                             |    8 +-
 target/ppc/cpu-qom.h                               |    2 -
 target/ppc/cpu.c                                   |    2 +-
 target/ppc/cpu.h                                   |   15 +
 target/ppc/cpu_init.c                              |   64 +-
 target/ppc/excp_helper.c                           |    3 +-
 target/ppc/kvm.c                                   |   12 +
 target/ppc/kvm_ppc.h                               |   12 +
 target/ppc/mmu-book3s-v3.c                         |   19 -
 target/ppc/mmu-book3s-v3.h                         |    6 +-
 target/ppc/mmu-books.h                             |   30 +
 target/ppc/mmu-hash32.c                            |  254 +++--
 target/ppc/mmu-hash32.h                            |    8 +-
 target/ppc/mmu-hash64.c                            |  157 ++-
 target/ppc/mmu-hash64.h                            |    6 +-
 target/ppc/mmu-radix64.c                           |  151 ++-
 target/ppc/mmu-radix64.h                           |    6 +-
 target/ppc/mmu_helper.c                            |  215 ++--
 target/ppc/translate.c                             |    5 +
 tests/qtest/rtas-test.c                            |   15 +-
 70 files changed, 3256 insertions(+), 603 deletions(-)
 create mode 100644 hw/ppc/spapr_vof.c
 create mode 100644 hw/ppc/vof.c
 create mode 100644 include/hw/ppc/vof.h
 create mode 100644 pc-bios/vof-nvram.bin
 create mode 100755 pc-bios/vof.bin
 create mode 100644 pc-bios/vof/Makefile
 create mode 100644 pc-bios/vof/bootmem.c
 create mode 100644 pc-bios/vof/ci.c
 create mode 100644 pc-bios/vof/entry.S
 create mode 100644 pc-bios/vof/libc.c
 create mode 100644 pc-bios/vof/main.c
 create mode 100644 pc-bios/vof/vof.h
 create mode 100644 pc-bios/vof/vof.lds
 create mode 100644 target/ppc/mmu-books.h

Comments

Peter Maydell July 10, 2021, 6:54 p.m. UTC | #1
On Fri, 9 Jul 2021 at 06:17, David Gibson <david@gibson.dropbear.id.au> wrote:
>
> The following changes since commit 9db3065c62a983286d06c207f4981408cf42184d:
>
>   Merge remote-tracking branch 'remotes/vivier2/tags/linux-user-for-6.1-pull-request' into staging (2021-07-08 16:30:18 +0100)
>
> are available in the Git repository at:
>
>   https://gitlab.com/dgibson/qemu.git tags/ppc-for-6.1-20210709
>
> for you to fetch changes up to 82123b756a1a2f1965350e5794aaa7b5c6a15282:
>
>   target/ppc: Support for H_RPT_INVALIDATE hcall (2021-07-09 11:01:06 +1000)
>
> ----------------------------------------------------------------
> ppc patch queue 2021-07-09
>
> Here's a (probably) final pull request before the qemu-6.1 soft
> freeze.  Includes:
>   * Implementation of the new H_RPT_INVALIDATE hypercall
>   * Virtual Open Firmware for pSeries and pegasos2 machine types.
>     This is an experimental minimal Open Firmware implementation which
>     works by delegating nearly everything to qemu itself via a special
>     hypercall.
>   * A number of cleanups to the ppc soft MMU code
>   * Fix to handling of two-level radix mode translations for the
>     powernv machine type
>   * Update the H_GET_CPU_CHARACTERISTICS call with newly defined bits.
>     This will allow more flexible handling of possible future CPU
>     Spectre-like flaws
>   * Correctly treat mtmsrd as an illegal instruction on BookE cpus
>   * Firmware update for the ppce500 machine type
>


Applied, thanks.

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

-- PMM