mbox series

[00/16] cpu: Introduce CPUSystemOperations structure

Message ID 20210226163227.4097950-1-f4bug@amsat.org
Headers show
Series cpu: Introduce CPUSystemOperations structure | expand

Message

Philippe Mathieu-Daudé Feb. 26, 2021, 4:32 p.m. UTC
Hi,

This series is inspired on Claudio TCG work.

Instead of separate TCG from other accelerators, here we
separate sysemu operations (system VS user).

This is part 1, overall preparation. Part 2 will make this
field a pointer, similarly to commit 78271684719 ("cpu: tcg_ops:
move to tcg-cpu-ops.h, keep a pointer in CPUClass").

Regards,

Phil.

Philippe Mathieu-Daudé (16):
  target: Set CPUClass::vmsd instead of DeviceClass::vmsd
  cpu: Un-inline cpu_get_phys_page_debug and cpu_asidx_from_attrs
  cpu: Introduce cpu_virtio_is_big_endian()
  cpu: Directly use cpu_write_elf*() fallback handlers in place
  cpu: Directly use get_paging_enabled() fallback handlers in place
  cpu: Directly use get_memory_mapping() fallback handlers in place
  cpu: Introduce CPUSystemOperations structure
  cpu: Move CPUClass::vmsd to CPUSystemOperations
  cpu: Move CPUClass::virtio_is_big_endian to CPUSystemOperations
  cpu: Move CPUClass::get_crash_info to CPUSystemOperations
  cpu: Move CPUClass::write_elf* to CPUSystemOperations
  cpu: Move CPUClass::asidx_from_attrs to CPUSystemOperations
  cpu: Move CPUClass::get_phys_page_debug to CPUSystemOperations
  cpu: Move CPUClass::get_memory_mapping to CPUSystemOperations
  cpu: Move CPUClass::get_paging_enabled to CPUSystemOperations
  cpu: Restrict cpu_paging_enabled / cpu_get_memory_mapping to sysemu

 include/hw/core/cpu.h           | 162 ++++++++++++++++++--------------
 cpu.c                           |  12 +--
 hw/core/cpu.c                   | 112 ++++++++++++----------
 hw/virtio/virtio.c              |   4 +-
 target/alpha/cpu.c              |   4 +-
 target/arm/cpu.c                |  12 +--
 target/avr/cpu.c                |   4 +-
 target/cris/cpu.c               |   4 +-
 target/hppa/cpu.c               |   4 +-
 target/i386/cpu.c               |  20 ++--
 target/lm32/cpu.c               |   4 +-
 target/m68k/cpu.c               |   4 +-
 target/microblaze/cpu.c         |   4 +-
 target/mips/cpu.c               |   4 +-
 target/moxie/cpu.c              |   4 +-
 target/nios2/cpu.c              |   2 +-
 target/openrisc/cpu.c           |   4 +-
 target/riscv/cpu.c              |   4 +-
 target/rx/cpu.c                 |   2 +-
 target/s390x/cpu.c              |   8 +-
 target/sh4/cpu.c                |   4 +-
 target/sparc/cpu.c              |   4 +-
 target/tricore/cpu.c            |   2 +-
 target/unicore32/cpu.c          |   4 +-
 target/xtensa/cpu.c             |   4 +-
 target/ppc/translate_init.c.inc |  10 +-
 26 files changed, 218 insertions(+), 188 deletions(-)