Hi; here's another arm pullreq; by volume most of this is refactoring from me, but there are also some bugfixes and other bits and pieces here.
thanks -- PMM The following changes since commit ed734377ab3f3f3cc15d7aa301a87ab6370f2eed: Merge tag 'linux-user-fix-gupnp-pull-request' of https://github.com/hdeller/qemu-hppa into staging (2025-01-24 14:43:07 -0500) are available in the Git repository at: https://git.linaro.org/people/pmaydell/qemu-arm.git tags/pull-target-arm-20250128-1 for you to fetch changes up to 664280abddcb3cacc9c6204706bb739fcc1316f7: hw/usb/canokey: Fix buffer overflow for OUT packet (2025-01-28 18:40:19 +0000) ---------------------------------------------------------------- target-arm queue: * hw/arm: Remove various uses of first_cpu global * hw/char/imx_serial: Fix reset value of UFCR register * hw/char/imx_serial: Update all state before restarting ageing timer * hw/pci-host/designware: Expose MSI IRQ * hw/arm/stellaris: refactoring, cleanup * hw/arm/stellaris: map both I2C controllers * tests/functional: Add a test for the arm microbit machine * target/arm: arm_reset_sve_state() should set FPSR, not FPCR * target/arm: refactorings preparatory to FEAT_AFP implementation * fpu: Rename float_flag_input_denormal to float_flag_input_denormal_flushed * fpu: Rename float_flag_output_denormal to float_flag_output_denormal_flushed * hw/usb/canokey: Fix buffer overflow for OUT packet ---------------------------------------------------------------- Bernhard Beschow (3): hw/char/imx_serial: Fix reset value of UFCR register hw/char/imx_serial: Update all state before restarting ageing timer hw/pci-host/designware: Expose MSI IRQ Hongren Zheng (1): hw/usb/canokey: Fix buffer overflow for OUT packet Peter Maydell (22): target/arm: arm_reset_sve_state() should set FPSR, not FPCR target/arm: Use FPSR_ constants in vfp_exceptbits_from_host() target/arm: Use uint32_t in vfp_exceptbits_from_host() target/arm: Define new fp_status_a32 and fp_status_a64 target/arm: Use vfp.fp_status_a64 in A64-only helper functions target/arm: Use fp_status_a64 or fp_status_a32 in is_ebf() target/arm: Use fp_status_a32 in vjvct helper target/arm: Use fp_status_a32 in vfp_cmp helpers target/arm: Use FPST_A32 in A32 decoder target/arm: Use FPST_A64 in A64 decoder target/arm: Remove now-unused vfp.fp_status and FPST_FPCR target/arm: Define new fp_status_f16_a32 and fp_status_f16_a64 target/arm: Use fp_status_f16_a32 in AArch32-only helpers target/arm: Use fp_status_f16_a64 in AArch64-only helpers target/arm: Use FPST_A32_F16 in A32 decoder target/arm: Use FPST_A64_F16 in A64 decoder target/arm: Remove now-unused vfp.fp_status_f16 and FPST_FPCR_F16 fpu: Rename float_flag_input_denormal to float_flag_input_denormal_flushed fpu: Rename float_flag_output_denormal to float_flag_output_denormal_flushed fpu: Fix a comment in softfloat-types.h target/arm: Remove redundant advsimd float16 helpers target/arm: Use FPST_A64_F16 for halfprec-to-other conversions Philippe Mathieu-Daudé (9): hw/arm/nrf51: Rename ARMv7MState 'cpu' -> 'armv7m' hw/arm/stellaris: Add 'armv7m' local variable hw/arm/v7m: Remove use of &first_cpu in machine_init() hw/arm/stellaris: Link each board schematic hw/arm/stellaris: Constify read-only arrays hw/arm/stellaris: Remove incorrect unimplemented i2c-0 at 0x40002000 hw/arm/stellaris: Replace magic numbers by definitions hw/arm/stellaris: Use DEVCAP macro to access DeviceCapability registers hw/arm/stellaris: Map both I2C controllers Thomas Huth (1): tests/functional: Add a test for the arm microbit machine MAINTAINERS | 1 + hw/usb/canokey.h | 4 -- include/fpu/softfloat-types.h | 10 +-- include/hw/arm/fsl-imx6.h | 4 +- include/hw/arm/fsl-imx7.h | 4 +- include/hw/arm/nrf51_soc.h | 2 +- include/hw/char/imx_serial.h | 2 +- include/hw/pci-host/designware.h | 1 + target/arm/cpu.h | 12 ++-- target/arm/tcg/helper-a64.h | 8 --- target/arm/tcg/translate.h | 32 ++++++--- fpu/softfloat.c | 6 +- hw/arm/b-l475e-iot01a.c | 2 +- hw/arm/fsl-imx6.c | 13 +++- hw/arm/fsl-imx7.c | 13 +++- hw/arm/microbit.c | 2 +- hw/arm/mps2-tz.c | 2 +- hw/arm/mps2.c | 2 +- hw/arm/msf2-som.c | 2 +- hw/arm/musca.c | 2 +- hw/arm/netduino2.c | 2 +- hw/arm/netduinoplus2.c | 2 +- hw/arm/nrf51_soc.c | 18 ++--- hw/arm/olimex-stm32-h405.c | 2 +- hw/arm/stellaris.c | 118 +++++++++++++++++++----------- hw/arm/stm32vldiscovery.c | 2 +- hw/char/imx_serial.c | 7 +- hw/pci-host/designware.c | 7 +- hw/usb/canokey.c | 6 +- target/arm/cpu.c | 6 +- target/arm/helper.c | 2 +- target/arm/tcg/helper-a64.c | 9 --- target/arm/tcg/sme_helper.c | 6 +- target/arm/tcg/sve_helper.c | 6 +- target/arm/tcg/translate-a64.c | 103 ++++++++++++++------------- target/arm/tcg/translate-sme.c | 4 +- target/arm/tcg/translate-sve.c | 130 +++++++++++++++++----------------- target/arm/tcg/translate-vfp.c | 78 ++++++++++---------- target/arm/tcg/vec_helper.c | 22 +++--- target/arm/vfp_helper.c | 73 +++++++++++-------- target/i386/tcg/fpu_helper.c | 8 +-- target/m68k/fpu_helper.c | 2 +- target/mips/tcg/msa_helper.c | 4 +- target/rx/op_helper.c | 4 +- target/tricore/fpu_helper.c | 6 +- fpu/softfloat-parts.c.inc | 4 +- hw/arm/Kconfig | 2 + tests/functional/meson.build | 1 + tests/functional/test_arm_microbit.py | 31 ++++++++ 49 files changed, 452 insertions(+), 337 deletions(-) create mode 100755 tests/functional/test_arm_microbit.py