Commit f0007b7f03 for qemu.org

commit f0007b7f03e2d7fc33e71c3a582f2364c51a226b
Merge: 6be998b986 aaf042299a
Author: Richard Henderson <richard.henderson@linaro.org>
Date:   Wed Sep 17 11:10:55 2025 -0700

    Merge tag 'pull-target-arm-20250916' of https://gitlab.com/pm215/qemu into staging

    target-arm queue:
     * tests, scripts: Don't import print_function from __future__
     * Implement FEAT_ATS1A
     * Remove deprecated pxa CPU family
     * arm/kvm: report registers we failed to set
     * Expose SME registers to GDB via gdbstub
     * linux-user/aarch64: Generate ESR signal records
     * hw/arm/raspi4b: remove redundant check in raspi_add_memory_node
     * hw/arm/virt: Allow user-creatable SMMUv3 dev instantiation
     * system: drop the -old-param option

    # -----BEGIN PGP SIGNATURE-----
    #
    # iQJNBAABCAA3FiEE4aXFk81BneKOgxXPPCUl7RQ2DN4FAmjJpt8ZHHBldGVyLm1h
    # eWRlbGxAbGluYXJvLm9yZwAKCRA8JSXtFDYM3vRGEACO3VrePiMIA9N7egqlUiGn
    # aRQVqIKeuPVj6TRVG7BSNWlAX8qvnOWOKg1yGVHDZv/nLvRje9UyfUAw7pf6jXod
    # bzxWBCPJ0J0eOB64Tz87WRCLltKB5pEN+uIG00PtpBcXT1ixYCDgBZXyD3mwuJ4Q
    # 5Yc5hEwQzpmh+EycLtfCHbmjKDw3x1ncpVlGceOG4h5fvzIvIhcNcZJXfAHhbhyO
    # Y4c5PELrCkCLZaTtSSxd6VJ+vXQ9bNWyKaSZu2KRRnLcMeAqw2Ic7dLPlkzCVyxM
    # PTOHy4TuDu+kqCbkxdnhpI6fvq5kcHyfTL6qX6tth8ZZS+qKGtvMEIXnYoy6q1kh
    # 4jV5vizK8avx31fSiuTKVpttRv4dC+Aq5QrcgYtIVMeOwtkWHv610D8gcFPmXoG+
    # uHX9WdzOjrYOzXVKzJaCZF6b7L31ptSEfOrx7asBC9k2wPRwonFXg4JGNq16Yann
    # aAO5TM7NAUvM2IPgqS+Tf1Bk0iQqORxGfqzCyL76OO/QMMgfBy9elKH0UR0G+ePJ
    # yjpub1oWIELSXsQGMrdFo1W4/NIpFMTu3DP9W+6XRPu1AvrAx/AsrTuvSvXoeFY9
    # d/U3yWAXm5XxRzbCIUg7ke8I8zLwRz924M5PA8vophvSnfDLS3V8CJHLwbz/PqYc
    # 0P2KCeI6d2NIhVik4mgEoQ==
    # =5tK3
    # -----END PGP SIGNATURE-----
    # gpg: Signature made Tue 16 Sep 2025 11:05:19 AM PDT
    # gpg:                using RSA key E1A5C593CD419DE28E8315CF3C2525ED14360CDE
    # gpg:                issuer "peter.maydell@linaro.org"
    # gpg: Good signature from "Peter Maydell <peter.maydell@linaro.org>" [unknown]
    # gpg:                 aka "Peter Maydell <pmaydell@gmail.com>" [unknown]
    # gpg:                 aka "Peter Maydell <pmaydell@chiark.greenend.org.uk>" [unknown]
    # gpg:                 aka "Peter Maydell <peter@archaic.org.uk>" [unknown]
    # gpg: WARNING: The key's User ID is not certified with a trusted signature!
    # gpg:          There is no indication that the signature belongs to the owner.
    # Primary key fingerprint: E1A5 C593 CD41 9DE2 8E83  15CF 3C25 25ED 1436 0CDE

    * tag 'pull-target-arm-20250916' of https://gitlab.com/pm215/qemu: (36 commits)
      hw/usb/network: Remove hardcoded 0x40 prefix in STRING_ETHADDR response
      qtest/bios-tables-test: Update tables for smmuv3 tests
      qtest/bios-tables-test: Add tests for legacy smmuv3 and smmuv3 device
      bios-tables-test: Allow for smmuv3 test data.
      qemu-options.hx: Document the arm-smmuv3 device
      hw/arm/virt: Allow user-creatable SMMUv3 dev instantiation
      hw/pci: Introduce pci_setup_iommu_per_bus() for per-bus IOMMU ops retrieval
      hw/arm/virt: Add an SMMU_IO_LEN macro
      hw/arm/virt: Factor out common SMMUV3 dt bindings code
      hw/arm/virt-acpi-build: Update IORT for multiple smmuv3 devices
      hw/arm/virt-acpi-build: Re-arrange SMMUv3 IORT build
      hw/arm/smmu-common: Check SMMU has PCIe Root Complex association
      target/arm: Added test case for SME register exposure to GDB
      target/arm: Added support for SME register exposure to GDB
      target/arm: Increase MAX_PACKET_LENGTH for SME ZA remote gdb debugging
      arm/kvm: report registers we failed to set
      system: drop the -old-param option
      target/arm: Drop ARM_FEATURE_IWMMXT handling
      target/arm: Drop ARM_FEATURE_XSCALE handling
      target/arm: Remove iwmmxt helper functions
      ...

    Signed-off-by: Richard Henderson <richard.henderson@linaro.org>

diff --cc hw/arm/virt.c
index 6f01746e74,7b3f9b1cdf..02209fadcf
--- a/hw/arm/virt.c
+++ b/hw/arm/virt.c
@@@ -3216,8 -3276,12 +3274,9 @@@ static void virt_machine_class_init(Obj
       * configuration of the particular instance.
       */
      mc->max_cpus = 512;
 -    machine_class_allow_dynamic_sysbus_dev(mc, TYPE_VFIO_CALXEDA_XGMAC);
 -    machine_class_allow_dynamic_sysbus_dev(mc, TYPE_VFIO_AMD_XGBE);
      machine_class_allow_dynamic_sysbus_dev(mc, TYPE_RAMFB_DEVICE);
 -    machine_class_allow_dynamic_sysbus_dev(mc, TYPE_VFIO_PLATFORM);
      machine_class_allow_dynamic_sysbus_dev(mc, TYPE_UEFI_VARS_SYSBUS);
+     machine_class_allow_dynamic_sysbus_dev(mc, TYPE_ARM_SMMUV3);
  #ifdef CONFIG_TPM
      machine_class_allow_dynamic_sysbus_dev(mc, TYPE_TPM_TIS_SYSBUS);
  #endif
diff --cc hw/core/sysbus-fdt.c
index 07117363a6,e80776080b..59f1d17de1
--- a/hw/core/sysbus-fdt.c
+++ b/hw/core/sysbus-fdt.c
@@@ -31,7 -31,12 +31,8 @@@
  #include "qemu/error-report.h"
  #include "system/device_tree.h"
  #include "system/tpm.h"
+ #include "hw/arm/smmuv3.h"
  #include "hw/platform-bus.h"
 -#include "hw/vfio/vfio-platform.h"
 -#include "hw/vfio/vfio-calxeda-xgmac.h"
 -#include "hw/vfio/vfio-amd-xgbe.h"
 -#include "hw/vfio/vfio-region.h"
  #include "hw/display/ramfb.h"
  #include "hw/uefi/var-service-api.h"
  #include "hw/arm/fdt.h"