Hi; here's the first target-arm pullreq for the 9.0 cycle.
The bulk of this is some cleanup/refactoring in the Arm
KVM code.
thanks
-- PMM
The following changes since commit bd00730ec0f621706d0179768436f82c39048499:
Open 9.0 development tree (2023-12-19 09:46:22 -0500)
are available in the Git repository at:
https://git.linaro.org/people/pmaydell/qemu-arm.git tags/pull-target-arm-20231219
for you to fetch changes up to 6f9c3aaa34e937d8deaab44671e7562e4027436b:
fsl-imx: add simple RTC emulation for i.MX6 and i.MX7 boards (2023-12-19 18:03:32 +0000)
----------------------------------------------------------------
target-arm queue:
* arm/kvm: drop the split between "common KVM support" and
"64-bit KVM support", since 32-bit Arm KVM no longer exists
* arm/kvm: clean up APIs to be consistent about CPU arguments
* Don't implement *32_EL2 registers when EL1 is AArch64 only
* Restrict DC CVAP & DC CVADP instructions to TCG accel
* Restrict TCG specific helpers
* Propagate MDCR_EL2.HPMN into PMCR_EL0.N
* Include missing 'exec/exec-all.h' header
* fsl-imx: add simple RTC emulation for i.MX6 and i.MX7 boards
----------------------------------------------------------------
Chao Du (1):
target/arm: kvm64: remove a redundant KVM_CAP_SET_GUEST_DEBUG probe
Jean-Philippe Brucker (1):
target/arm/helper: Propagate MDCR_EL2.HPMN into PMCR_EL0.N
Nikita Ostrenkov (1):
fsl-imx: add simple RTC emulation for i.MX6 and i.MX7 boards
Peter Maydell (1):
target/arm: Don't implement *32_EL2 registers when EL1 is AArch64 only
Philippe Mathieu-Daudé (19):
hw/intc/arm_gicv3: Include missing 'qemu/error-report.h' header
target/arm/kvm: Remove unused includes
target/arm/kvm: Have kvm_arm_add_vcpu_properties take a ARMCPU argument
target/arm/kvm: Have kvm_arm_sve_set_vls take a ARMCPU argument
target/arm/kvm: Have kvm_arm_sve_get_vls take a ARMCPU argument
target/arm/kvm: Have kvm_arm_set_device_attr take a ARMCPU argument
target/arm/kvm: Have kvm_arm_pvtime_init take a ARMCPU argument
target/arm/kvm: Have kvm_arm_pmu_init take a ARMCPU argument
target/arm/kvm: Have kvm_arm_pmu_set_irq take a ARMCPU argument
target/arm/kvm: Have kvm_arm_vcpu_init take a ARMCPU argument
target/arm/kvm: Have kvm_arm_vcpu_finalize take a ARMCPU argument
target/arm/kvm: Have kvm_arm_[get|put]_virtual_time take ARMCPU argument
target/arm/kvm: Have kvm_arm_verify_ext_dabt_pending take a ARMCPU arg
target/arm/kvm: Have kvm_arm_handle_dabt_nisv take a ARMCPU argument
target/arm/kvm: Have kvm_arm_handle_debug take a ARMCPU argument
target/arm/kvm: Have kvm_arm_hw_debug_active take a ARMCPU argument
target/arm: Restrict TCG specific helpers
target/arm: Restrict DC CVAP & DC CVADP instructions to TCG accel
target/arm/tcg: Including missing 'exec/exec-all.h' header
Richard Henderson (20):
accel/kvm: Make kvm_has_guest_debug static
target/arm/kvm: Merge kvm_arm_init_debug into kvm_arch_init
target/arm/kvm: Move kvm_arm_verify_ext_dabt_pending and unexport
target/arm/kvm: Move kvm_arm_copy_hw_debug_data and unexport
target/arm/kvm: Move kvm_arm_hw_debug_active and unexport
target/arm/kvm: Move kvm_arm_handle_debug and unexport
target/arm/kvm: Unexport kvm_arm_{get, put}_virtual_time
target/arm/kvm: Inline kvm_arm_steal_time_supported
target/arm/kvm: Move kvm_arm_get_host_cpu_features and unexport
target/arm/kvm: Use a switch for kvm_arm_cpreg_level
target/arm/kvm: Move kvm_arm_cpreg_level and unexport
target/arm/kvm: Move kvm_arm_reg_syncs_via_cpreg_list and unexport
target/arm/kvm: Merge kvm64.c into kvm.c
target/arm/kvm: Unexport kvm_arm_vcpu_init
target/arm/kvm: Unexport kvm_arm_vcpu_finalize
target/arm/kvm: Unexport kvm_arm_init_cpreg_list
target/arm/kvm: Init cap_has_inject_serror_esr in kvm_arch_init
target/arm/kvm: Unexport kvm_{get,put}_vcpu_events
target/arm/kvm: Unexport and tidy kvm_arm_sync_mpstate_to_{kvm, qemu}
target/arm/kvm: Unexport kvm_arm_vm_state_change
include/hw/misc/imx7_snvs.h | 7 +-
target/arm/kvm_arm.h | 231 +------
accel/kvm/kvm-all.c | 2 +-
hw/arm/virt.c | 9 +-
hw/intc/arm_gicv3_its_kvm.c | 1 +
hw/misc/imx7_snvs.c | 93 ++-
target/arm/cpu.c | 2 +-
target/arm/cpu64.c | 2 +-
target/arm/debug_helper.c | 23 +-
target/arm/helper.c | 117 ++--
target/arm/kvm.c | 1409 ++++++++++++++++++++++++++++++++++++++--
target/arm/kvm64.c | 1290 ------------------------------------
target/arm/tcg/op_helper.c | 55 ++
target/arm/tcg/translate-a64.c | 1 +
hw/misc/trace-events | 4 +-
target/arm/meson.build | 2 +-
16 files changed, 1592 insertions(+), 1656 deletions(-)
delete mode 100644 target/arm/kvm64.c