Hi; here's the target-arm queue for softfreeze. There are various bugfixes and refactorings; the big "new functionality" patchset is the reapi4b pci and ethernet support.
thanks -- PMM The following changes since commit 56afd82bd4db9688f1c1c9d0e2ea163b8cde3283: Merge tag 'qemu-sparc-20261101' of https://github.com/mcayland/qemu into staging (2026-11-01 08:37:48 -0800) are available in the Git repository at: https://gitlab.com/pm215/qemu.git tags/pull-target-arm-20261102 for you to fetch changes up to 79b27f3d0832c2b0ffa3e1a59f0f2c46fc0cdc3a: target/arm: fix bcm2835 migration issue (2026-11-02 11:41:14 +0000) ---------------------------------------------------------------- target-arm queue: * raspi4b: Implement PCI and GENET ethernet device * target/arm: Initialize SMCR_EL1.EZT0 for linux-user * hw/dma/xlnx_dpdma: Don't allow DMA off end of host buffers * target/arm: For linux-user, prioritize PC misalignment fault over insn abort * net/tap: Avoid "close(-1)" in net_init_tap() error path * hvf: arm: save/restore SME state only when SME on * hvf: arm: advertise ID_AA64PFR0_EL1.GIC correctly * target/arm: Refactoring preparatory to ID register configurability * target/arm/cpu64: Define cpreg migration tolerance for PMMIR_EL1 * gicv5: minor cleanups and bugfixes * target/arm: hold bql when SEV sets the event_register * target/arm: fix bcm2835 migration issue ---------------------------------------------------------------- Alex Bennée (3): target/arm: hold bql when SEV sets the event_register target/arm: don't pass env to the sev helper target/arm: fix bcm2835 migration issue Eric Auger (10): target/arm/cpu-sysregs.h.inc: Sort by name alphabetical order target/arm: Move REVIDR into isar.idregs[] storage target/arm: Move MIDR into isar.idregs[] storage target/arm: Enforce MPIDR into isar.idregs[] storage target/arm/kvm: Pass an error handle to kvm_arm_init_cpreg_list target/kvm: Pass an Error handle to kvm_arch_init_vcpu target/arm/kvm: Introduce kvm_arm_vcpu_prepare_init_features helper hw/arm/virt: Make sure virt_get_caches() keeps on reading CLIDR_EL1 as 0 target/arm: Directly store cpu probe failure error target/arm/kvm: Improve error handling on scratch vcpu probe Marcelo Manzo (8): hw/arm/bcm2838_pcie: add BCM2838 PCIe Root Complex hw/arm/bcm2838_pcie: add BCM2838 PCIe host hw/arm/bcm2838: enable BCM2838 PCIe host bridge hw/net/bcm2838_genet: add GENET stub device hw/net/bcm2838_genet: add migration state hw/arm/bcm2838: enable BCM2838 GENET controller docs/system/arm/raspi: move PCIe/GENET from missing to implemented tests/functional/aarch64: add raspi4b GENET networking test Mohamed Mediouni (4): hvf: arm: save/restore SME state only when SME on hvf: arm: remove broken ID_AA64PFR0_EL1.GIC sync hvf: arm: advertise ID_AA64PFR0_EL1.GIC hvf: arm: fetch more features Peter Maydell (10): hw/dma/xlnx_dpdma: Don't allow DMA off end of host buffers target/arm: For linux-user, prioritize PC misalignment fault over insn abort net/tap: Avoid "close(-1)" in net_init_tap() error path hw/intc/arm_gicv5: Ignore low bits in IRS_IST_BASER.ADDR hw/intc/arm_gicv5: Ignore low bits in L1_ISTE.L2_ADDR hw/intc/arm_gicv5: Regularize spacing in config_readl() switch target/arm: GICv5 cpuif: Use arm_cpu_set_irq() to set IRQ/FIQ status hw/intc/arm_gicv5: Pass CPU index to CPU interface hw/intc/arm_gicv5: Pass cpuidx rather than iaffid in gicv5_get_hppi() hw/intc/arm_gicv5: Relax QEMU_GICV5_MIN_LPI_ID_BITS to 0 Philippe Mathieu-Daudé (1): target/arm: Initialize SMCR_EL1.EZT0 for linux-user Sebastian Ott (2): target/arm/cpu64: fix typos in kvm_arm_set_cpreg_mig_tolerances() target/arm/cpu64: Define cpreg migration tolerance for PMMIR_EL1 Sergey Kambalin (9): hw/net/bcm2838_genet: add GENET register structs, part 1/4 hw/net/bcm2838_genet: add GENET register structs, part 2/4 hw/net/bcm2838_genet: add GENET register structs, part 3/4 hw/net/bcm2838_genet: add GENET register structs, part 4/4 hw/net/bcm2838_genet: add GENET register access macros hw/net/bcm2838_genet: implement GENET register ops hw/net/bcm2838_genet: implement GENET MDIO hw/net/bcm2838_genet: implement GENET TX path hw/net/bcm2838_genet: implement GENET RX path docs/system/arm/raspi.rst | 6 +- include/hw/arm/bcm2838_pcie.h | 73 ++ include/hw/arm/bcm2838_peripherals.h | 7 + include/hw/dma/xlnx_dpdma.h | 5 +- include/hw/intc/arm_gicv5.h | 1 + include/hw/intc/arm_gicv5_common.h | 2 +- include/hw/intc/arm_gicv5_stream.h | 10 +- include/hw/net/bcm2838_genet.h | 455 ++++++++++++ include/system/kvm.h | 2 +- linux-user/arm/target_proc.h | 13 +- target/arm/cpu.h | 25 +- target/arm/internals.h | 14 + target/arm/kvm_arm.h | 3 +- target/arm/tcg/helper-defs.h | 2 +- target/arm/cpu-sysregs.h.inc | 49 +- accel/kvm/kvm-all.c | 15 +- hw/arm/bcm2838.c | 13 + hw/arm/bcm2838_pcie.c | 313 ++++++++ hw/arm/bcm2838_peripherals.c | 46 ++ hw/arm/raspi4b.c | 19 - hw/arm/virt.c | 15 + hw/display/bcm2835_fb.c | 11 + hw/display/xlnx_dp.c | 30 +- hw/dma/xlnx_dpdma.c | 13 +- hw/intc/arm_gicv5.c | 54 +- hw/intc/arm_gicv5_common.c | 2 +- hw/intc/armv7m_nvic.c | 4 +- hw/net/bcm2838_genet.c | 1185 +++++++++++++++++++++++++++++++ net/tap.c | 4 +- system/cpus.c | 2 +- target/arm/cpu-max.c | 4 +- target/arm/cpu.c | 57 +- target/arm/cpu64.c | 18 +- target/arm/helper.c | 29 +- target/arm/hvf/hvf.c | 46 +- target/arm/kvm.c | 119 ++-- target/arm/tcg/cpu-v7m.c | 18 +- target/arm/tcg/cpu32.c | 37 +- target/arm/tcg/cpu64.c | 42 +- target/arm/tcg/gicv5-cpuif.c | 41 +- target/arm/tcg/op_helper.c | 7 +- target/arm/tcg/tlb_helper.c | 4 + target/arm/tcg/translate-a64.c | 2 +- target/arm/tcg/translate.c | 2 +- target/arm/whpx/whpx-all.c | 9 +- target/i386/kvm/kvm.c | 22 +- target/loongarch/kvm/kvm.c | 27 +- target/ppc/kvm.c | 10 +- target/riscv/kvm/kvm-cpu.c | 6 +- target/s390x/kvm/kvm.c | 2 +- hw/arm/meson.build | 4 +- hw/arm/trace-events | 4 + hw/net/meson.build | 2 + hw/net/trace-events | 16 + tests/functional/aarch64/test_raspi4.py | 31 + 55 files changed, 2633 insertions(+), 319 deletions(-) create mode 100644 include/hw/arm/bcm2838_pcie.h create mode 100644 include/hw/net/bcm2838_genet.h create mode 100644 hw/arm/bcm2838_pcie.c create mode 100644 hw/net/bcm2838_genet.c
