]> git.ipfire.org Git - thirdparty/qemu.git/log
thirdparty/qemu.git
3 weeks agovfio: Clean up vfio_region_unmap()
Xiaoyao Li [Tue, 19 May 2026 06:35:40 +0000 (14:35 +0800)] 
vfio: Clean up vfio_region_unmap()

Since commit 7429aebe1cff ("vfio/migration: Remove VFIO migration
protocol v1"), vfio_region_unmap() lost all its callers.

Remove unused vfio_region_unmap().

Signed-off-by: Xiaoyao Li <xiaoyao.li@intel.com>
Reviewed-by: Cédric Le Goater <clg@redhat.com>
Link: https://lore.kernel.org/qemu-devel/20260519063540.1117808-1-xiaoyao.li@intel.com
Signed-off-by: Cédric Le Goater <clg@redhat.com>
3 weeks agolinux-headers: Update to Linux v7.1-rc4
Cédric Le Goater [Thu, 21 May 2026 08:14:09 +0000 (10:14 +0200)] 
linux-headers: Update to Linux v7.1-rc4

Update headers to retrieve new IOMMUFD capabilities (ATS not-supported),
VFIO migration flags (VFIO_PRECOPY_INFO_REINIT flag and
VFIO_DEVICE_FEATURE_MIG_PRECOPY_INFOv2), KVM caps for LoongArch and
more.

Cc: Avihai Horon <avihaih@nvidia.com>
Cc: Song Gao <gaosong@loongson.cn>
Cc: Michael S. Tsirkin <mst@redhat.com>
Cc: Cornelia Huck <cohuck@redhat.com>
Cc: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Song Gao <gaosong@loongson.cn>
Link: https://lore.kernel.org/qemu-devel/20260521081409.1843075-1-clg@redhat.com
Signed-off-by: Cédric Le Goater <clg@redhat.com>
3 weeks agoMAINTAINERS: Mark Multi-process QEMU as Odd Fixes
Jagannathan Raman [Thu, 21 May 2026 14:38:26 +0000 (10:38 -0400)] 
MAINTAINERS: Mark Multi-process QEMU as Odd Fixes

Reflect the current maintenance expectations for Multi-process QEMU by
changing its status from Maintained to Odd Fixes.

Signed-off-by: Jagannathan Raman <jag.raman@oracle.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Cédric Le Goater <clg@redhat.com>
Link: https://lore.kernel.org/qemu-devel/20260521143827.64285-1-jag.raman@oracle.com
Signed-off-by: Cédric Le Goater <clg@redhat.com>
3 weeks agotarget-info: Add target_riscv64()
Anton Johansson [Wed, 7 May 2025 10:46:51 +0000 (12:46 +0200)] 
target-info: Add target_riscv64()

Adds a helper function to tell if the binary is targeting riscv64 or
not.

Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
Signed-off-by: Anton Johansson <anjo@rev.ng>
Reviewed-by: Chao Liu <chao.liu.zevorn@gmail.com>
Acked-by: Alistair Francis <alistair.francis@wdc.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <20260520-hw-riscv-cpu-int-v3-7-d1123ea63d9c@rev.ng>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
3 weeks agoconfigs/target: Implement per-binary TargetInfo structure for riscv
Anton Johansson [Wed, 30 Apr 2025 12:17:46 +0000 (14:17 +0200)] 
configs/target: Implement per-binary TargetInfo structure for riscv

Defines TargetInfo for 32- and 64-bit riscv binaries.

Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
Signed-off-by: Anton Johansson <anjo@rev.ng>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Acked-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <20260520-hw-riscv-cpu-int-v3-6-d1123ea63d9c@rev.ng>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
3 weeks agohw/riscv/spike: Use 'max' CPU type by default
Philippe Mathieu-Daudé [Tue, 26 May 2026 09:23:48 +0000 (11:23 +0200)] 
hw/riscv/spike: Use 'max' CPU type by default

The Spike RISC-V ISA Simulator aims for maximum coverage,
so can start with the 'max' CPU type by default.

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Anton Johansson <anjo@rev.ng>
Reviewed-by: Daniel Henrique Barboza <daniel.barboza@oss.qualcomm.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <20260526095731.63525-2-philmd@linaro.org>

3 weeks agohw/riscv: Filter machine types for qemu-system-riscv32/64 binaries
Anton Johansson [Wed, 30 Apr 2025 12:16:51 +0000 (14:16 +0200)] 
hw/riscv: Filter machine types for qemu-system-riscv32/64 binaries

Register machines able to run in qemu-system-riscv32,
qemu-system-riscv64, or both.

Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
Signed-off-by: Anton Johansson <anjo@rev.ng>
Acked-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <20260520-hw-riscv-cpu-int-v3-4-d1123ea63d9c@rev.ng>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
3 weeks agohw/core: Add riscv[32|64] to "none" machine
Anton Johansson [Mon, 15 Dec 2025 11:39:02 +0000 (12:39 +0100)] 
hw/core: Add riscv[32|64] to "none" machine

Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
Signed-off-by: Anton Johansson <anjo@rev.ng>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Acked-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <20260520-hw-riscv-cpu-int-v3-5-d1123ea63d9c@rev.ng>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
3 weeks agohw/riscv: Add macros and globals for simplifying machine definitions
Anton Johansson [Wed, 30 Apr 2025 11:44:17 +0000 (13:44 +0200)] 
hw/riscv: Add macros and globals for simplifying machine definitions

Adds macros and global interfaces for defining machines available only
in qemu-system-riscv32, qemu-system-riscv64, or both.

Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
Signed-off-by: Anton Johansson <anjo@rev.ng>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Acked-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <20260520-hw-riscv-cpu-int-v3-3-d1123ea63d9c@rev.ng>
[PMD: Constify InterfaceInfo]
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
3 weeks agohw/riscv: Register generic riscv[32|64] QOM interfaces
Anton Johansson [Wed, 30 Apr 2025 11:34:40 +0000 (13:34 +0200)] 
hw/riscv: Register generic riscv[32|64] QOM interfaces

Defines generic 32- and 64-bit riscv machine interfaces for machines to
implement.

Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
Signed-off-by: Anton Johansson <anjo@rev.ng>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Acked-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <20260520-hw-riscv-cpu-int-v3-1-d1123ea63d9c@rev.ng>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
3 weeks agoMerge tag 'pull-target-arm-20260526' of https://gitlab.com/pm215/qemu into staging
Stefan Hajnoczi [Tue, 26 May 2026 17:20:15 +0000 (13:20 -0400)] 
Merge tag 'pull-target-arm-20260526' of https://gitlab.com/pm215/qemu into staging

target-arm queue:
 * hw/timer/mss_timer: Remove dead code in timer_write()
 * OMAP: Remove various pieces of dead code
 * target/arm: Set debug in attrs in translate_for_debug()
 * target/arm/ptw: Flip sense of get_phys_addr_* return values
 * tests/functional/aarch64: Bump up timeout on vbsa
 * target/arm: Fix minor FEAT_AFP corner case bugs
 * target/arm: Implement FEAT_FAMINMAX
 * target/arm: Implement FEAT_FPMR
 * target/arm: Some initial patches towards other FP8 features

# -----BEGIN PGP SIGNATURE-----
#
# iQJNBAABCAA3FiEE4aXFk81BneKOgxXPPCUl7RQ2DN4FAmoVrdcZHHBldGVyLm1h
# eWRlbGxAbGluYXJvLm9yZwAKCRA8JSXtFDYM3nJnEACJLdcU+Q+5EoGw+PT16tyB
# anoeeMdjR8h7lGtOOfclaVwno+UzzfKEnqX5Y1MXiKpD+QcuJ/VNy431Pj0pgEiF
# BOqWVLiF7jJsxHzxJ5y+OniHwoDvyZKNKv7nbgoHJY2LSUZlIA5plgr1Pj27NA4S
# KFWgBIWu3uJlx7t9epUl9qbmSSHj54zXDt8N7tGhitR4be/vEjRnE/IIHbtQ0jhg
# 3A68nBchBXHawjeghCmWFqh8zFlqNo9oFZoaE4/oe3qmCesh1Pg5eQ1RRvjSY9VJ
# uW3m/6oLY5v5KwV2UY5etLHvWPrIjzIzkv7gnOKF2H+3yygEhSzBJDlYViSHVwS+
# pGTaW8LvSFCkhnBocN5VELC7V0XJDxlCLoaOrBYUY/wOt7tvC2qWzson+siTaiLT
# VfJoRkAkf5YasK78HHfsfxdz95X3sqLR1Ks6uuVq6cH+0vdLxJ9ac8c8lu/TjwLm
# qFfHoo5ryQFryRyKqUhS/TQA3Bx5qHvq1uDMu2o3BrFSzU6Rj4nR01LgrEdVacp+
# w8KjAISu7RJVwQ64u3QkP+RB5HbaLRln4FeOl4GDK4WxABKrgjkFjVwSStNVOjzQ
# 7kvT48wFdQ/Mv6IL9tUPJzGhqJvrevOrM+QzbInmyzbCbcWuK0+dI+yVBf6w5AhE
# a1q5vtYSMBY7a6H2WeDuBw==
# =Zmy0
# -----END PGP SIGNATURE-----
# gpg: Signature made Tue 26 May 2026 10:27:35 EDT
# gpg:                using RSA key E1A5C593CD419DE28E8315CF3C2525ED14360CDE
# gpg:                issuer "peter.maydell@linaro.org"
# gpg: Good signature from "Peter Maydell <peter.maydell@linaro.org>" [full]
# gpg:                 aka "Peter Maydell <pmaydell@gmail.com>" [full]
# gpg:                 aka "Peter Maydell <pmaydell@chiark.greenend.org.uk>" [full]
# gpg:                 aka "Peter Maydell <peter@archaic.org.uk>" [unknown]
# Primary key fingerprint: E1A5 C593 CD41 9DE2 8E83  15CF 3C25 25ED 1436 0CDE

* tag 'pull-target-arm-20260526' of https://gitlab.com/pm215/qemu: (54 commits)
  target/arm: Move vectors_overlap to vec_internal.h
  target/arm: Split vector-type.h from cpu.h
  target/arm: Implement FSCALE for SME
  target/arm: Implement FSCALE for AdvSIMD
  target/arm: Add isar_feature_aa64_f8cvt
  target/arm: Implement ID_AA64FPFR0
  target/arm: Enable FEAT_FPMR for -cpu max
  linux-user/aarch64: Implement FPMR signal frames
  target/arm: Dump FPMR when present
  tests/functional/aarch64/rme: update images to support FEAT_FP8
  target/arm: Trap direct acceses to FPMR
  target/arm: Add FPMR_EL to TBFLAGS
  target/arm: Clear FPMR on ResetSVEState
  target/arm: Enable EnFPM bits for FEAT_FPMR
  target/arm: Update SCTLR bits for FEAT_FPMR
  target/arm: Introduce FPMR
  target/arm: Update HCRX bits for Arm ARM M.a.a
  target/arm: Update SCR bits for Arm ARM M.a.a
  target/arm: Enable FEAT_FAMINMAX for -cpu max
  target/arm: Implement FEAT_FAMINMAX for SVE
  ...

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
3 weeks agoMerge tag 'pull-aspeed-20260526' of https://github.com/legoater/qemu into staging
Stefan Hajnoczi [Tue, 26 May 2026 17:19:51 +0000 (13:19 -0400)] 
Merge tag 'pull-aspeed-20260526' of https://github.com/legoater/qemu into staging

aspeed queue:

* Fix AST2600 RNG register definitions
* Add a USB EHCI functional test to the AST2600 SDK machine test
* Add a new anacapa-bmc machine (Meta/Facebook AST2600)
* Refactor SRAM to support AST1040 memory layout
* Add a new AST1040 Bridge IC SoC model and EVB machine
* Convert all Aspeed device models to use the Resettable
  interface

# -----BEGIN PGP SIGNATURE-----
#
# iQIzBAABCAAdFiEEoPZlSPBIlev+awtgUaNDx8/77KEFAmoVVnkACgkQUaNDx8/7
# 7KFSkQ//figTgjfm4AkuWIHj6Q2Z5V1RxCxUiIuncJ7u5xbyaVE2dYfi+r4dgbL2
# HKSgTMd/dV0IlgereEMd8y5I9ufUNoW44j9+mtgBog9m9swZ7XN8QHo4vMWW3FyA
# dXFlWPlPteAPuHJz6mZixaA9mg0nHo1WxXSAbU96DZJwPA5Axui3pNT2EbEr2ry1
# dfobhGzvWj0P0QuBxT4DNoD+UFqXbMAP1TvJu03XRVeYLiTXaPYAR/b8juW+Ktop
# kDVBFVSl4swibvFL/zQiBl70d5DdrdNyc1z3bjv1VAqlmqPzVjbRNvLx7fT1nLhr
# AxxYFIf2u4tP1PzmggWPkvon2cL2Q0wjxGV9bwKIS5swI/Kyiq7IMj/cyADCDM2+
# oqolpexxvo+qioEwdOmHwUuH3xdjezLYQww26fu0SMcNP5pLCK/HHboDoX9NIWUH
# oj+lcaRS4ZlIzJVzC+E022z3ox+6urm05/ELfWWrPU4kXYhpNb2EcADbvs2HQVHH
# 9ysW1dmm9q8eE8DlexY8V8ZD1iiSXsNpJEshtX5bSGg+hWfGl/W69dw1cpUyv9lG
# bV2Yz8KqMGo9RNoqAG0z87jIIzypS+f9R49XoWb29p4bIYlMLrC+gOLlBGpjcTDJ
# fQlKQeoUoeP16xPiOC80k/aAgD6pH39oFC+hPiDIixyZTqfw/fo=
# =RhXN
# -----END PGP SIGNATURE-----
# gpg: Signature made Tue 26 May 2026 04:14:49 EDT
# gpg:                using RSA key A0F66548F04895EBFE6B0B6051A343C7CFFBECA1
# gpg: Good signature from "Cédric Le Goater <clg@redhat.com>" [full]
# gpg:                 aka "Cédric Le Goater <clg@kaod.org>" [full]
# Primary key fingerprint: A0F6 6548 F048 95EB FE6B  0B60 51A3 43C7 CFFB ECA1

* tag 'pull-aspeed-20260526' of https://github.com/legoater/qemu: (37 commits)
  hw/i2c/aspeed_i2c: convert to use Resettable interface
  hw/adc/aspeed_adc: convert to use Resettable interface
  hw/rtc/aspeed_rtc: convert to use Resettable interface
  hw/fsi/aspeed_apb2opb: convert to use Resettable interface
  hw/net/ftgmac100: convert to use Resettable interface
  hw/watchdog/wdt_aspeed: convert to use Resettable interface
  hw/i3c/aspeed_i3c: convert to use Resettable interface
  hw/intc/aspeed_intc: convert to use Resettable interface
  hw/intc/aspeed_vic: convert to use Resettable interface
  hw/ssi/aspeed_smc: convert to use Resettable interface
  hw/sd/aspeed_sdhci: convert to use Resettable interface
  hw/gpio/aspeed_gpio: convert to use Resettable interface
  hw/timer/aspeed_timer: convert to use Resettable interface
  hw/pci-host/aspeed_pcie: convert to use Resettable interface
  hw/misc/aspeed_ltpi: convert to use Resettable interface
  hw/misc/aspeed_scu: convert to use Resettable interface
  hw/misc/aspeed_sdmc: convert to use Resettable interface
  hw/misc/aspeed_lpc: convert to use Resettable interface
  hw/misc/aspeed_xdma: convert to use Resettable interface
  hw/misc/aspeed_sbc: convert to use Resettable interface
  ...

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
3 weeks agoMerge tag 'block-pull-request' of https://gitlab.com/stefanha/qemu into staging
Stefan Hajnoczi [Tue, 26 May 2026 17:19:05 +0000 (13:19 -0400)] 
Merge tag 'block-pull-request' of https://gitlab.com/stefanha/qemu into staging

Pull request

Denis Lunev's linux-aio stack exhaustion fix.

# -----BEGIN PGP SIGNATURE-----
#
# iQEzBAABCgAdFiEEhpWov9P5fNqsNXdanKSrs4Grc8gFAmoUaC8ACgkQnKSrs4Gr
# c8jThAf5AYvN5LV9rBhUZ7rWdFVv7NOJlkelXqremZnwb7qKfdBpd/H2qvpHdEVT
# jaC/WtcbHH5glzE+RWWN2aAbT0i6Hq09po5Wa0StdqTCioKfqkKEJUQe9B6N1tdr
# lXiavQ3gWmbCXUMm9j3qpvc66CdgoLg7qqaz3c2ZvpcTjFou7MJE+bUwdZj3oomX
# P5NMq2ynx31gKTaWWPHXy7MubhBHG3GGPUKvGl75M8LSsB1whmHU4+85fQU0Jmxr
# O9Xb18WTR9DAcOrlhgbtqV2SdwAF1HRJUYK5zrW09v3GrF9j2NcrR5CSIaXG5Qlt
# zh4B4ZY93fXST+2BvZ03DhvHmGtDpg==
# =AYwq
# -----END PGP SIGNATURE-----
# gpg: Signature made Mon 25 May 2026 11:18:07 EDT
# gpg:                using RSA key 8695A8BFD3F97CDAAC35775A9CA4ABB381AB73C8
# gpg: Good signature from "Stefan Hajnoczi <stefanha@redhat.com>" [ultimate]
# gpg:                 aka "Stefan Hajnoczi <stefanha@gmail.com>" [ultimate]
# Primary key fingerprint: 8695 A8BF D3F9 7CDA AC35  775A 9CA4 ABB3 81AB 73C8

* tag 'block-pull-request' of https://gitlab.com/stefanha/qemu:
  block/linux-aio: bound ioq_submit() recursion depth

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
3 weeks agoMerge tag 'for-upstream2' of https://gitlab.com/bonzini/qemu into staging
Stefan Hajnoczi [Tue, 26 May 2026 17:18:52 +0000 (13:18 -0400)] 
Merge tag 'for-upstream2' of https://gitlab.com/bonzini/qemu into staging

* lsi53c895a, apic, mc146818rtc: fix various bugs
* accel/mshv: implement cpu_thread_is_idle() hook
* json-parser: first patch from push parser conversion

# -----BEGIN PGP SIGNATURE-----
#
# iQFIBAABCgAyFiEE8TM4V0tmI4mGbHaCv/vSX3jHroMFAmoUZ1oUHHBib256aW5p
# QHJlZGhhdC5jb20ACgkQv/vSX3jHroODzwgAmOd+eQqfr1J3PhVsem573QnHzbHQ
# W0ILojOF5FhQzvbkUtBOYfUY5KdABIxPIpsCTEAvYBtnTS1ifJqck8PEvHWHPJET
# lCQms9zqV3oGJ6c0mXSJYgvS+GZXTSHRN4NLRJFMO4q575/hxgjNBpSB0oV+jIod
# XIsFycmzsllnvO7MnQBkCTKAmez+mbV+Dl9kCpmGURYm2S83yIZW2eDe8l0fCzxw
# WFDlgwodsAU3JnY378iJR8qVffb8uw0vW0AezzDQ0ghfYlaKI99xsS+fhpNl9l3y
# sc+RiC15lXYUvNTz2+OFqu1aA6OmcpgDc5+bDZ0gTPktgvIJs7X9ApSsIQ==
# =iAhQ
# -----END PGP SIGNATURE-----
# gpg: Signature made Mon 25 May 2026 11:14:34 EDT
# gpg:                using RSA key F13338574B662389866C7682BFFBD25F78C7AE83
# gpg:                issuer "pbonzini@redhat.com"
# gpg: Good signature from "Paolo Bonzini <bonzini@gnu.org>" [full]
# gpg:                 aka "Paolo Bonzini <pbonzini@redhat.com>" [full]
# Primary key fingerprint: 46F5 9FBD 57D6 12E7 BFD4  E2F7 7E15 100C CD36 69B1
#      Subkey fingerprint: F133 3857 4B66 2389 866C  7682 BFFB D25F 78C7 AE83

* tag 'for-upstream2' of https://gitlab.com/bonzini/qemu:
  json-parser: constify JSONToken
  mc146818rtc: Fix get_guest_rtc_ns() overflow bug
  accel/mshv: implement cpu_thread_is_idle() hook
  apic: fix delivery bitmask with modified xAPIC ids
  lsi53c895a: clear tag byte when processing messages
  lsi53c895a: fix use-after-free of cancelled request

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
3 weeks agoMerge tag 'ui-pull-request' of https://gitlab.com/marcandre.lureau/qemu into staging
Stefan Hajnoczi [Tue, 26 May 2026 14:38:13 +0000 (10:38 -0400)] 
Merge tag 'ui-pull-request' of https://gitlab.com/marcandre.lureau/qemu into staging

 UI pull request

- ui/input: Decouple internal and QAPI input events
- VNC OOB fixes
- vt100 fixes
- GTK focus fix

# -----BEGIN PGP SIGNATURE-----
#
# iQIzBAABCgAdFiEEh6m9kz+HxgbSdvYt2ujhCXWWnOUFAmoT67gACgkQ2ujhCXWW
# nOVYBw//f2iXursNsEQb531zJePPaxIyl1fqNiF9/y/Q02qJKdcZOnvhCNDBxuhz
# hYAz3UeouAgV3/vGRF2oRv/MDM2I+8HqYOKMV5M/SmAdkCGRhFgduoBY3R/FyWdS
# E0jOzw4zakp9vFHHcEbkeXdvyCsXEPpy+ysjenhbQhPIxRw/+Hm3TY+McKCdKKSj
# I511RT/sq1t2Shc3U8Si01zsomaKGAfBt8ORtMUk+jbXimnCSS2Lp44wpLRomtQZ
# DtUmw60is1UjLf40fQ78rWmqHH0FRthBCfVxKvYlPBbx9THCI1XNowtMiab8x+2B
# j0tPa+u0fGKLbmjm2rO/TIdupQoUww4ugmzUsivvpx9kOGyfWfLALchtTm7GGpQE
# ZTxIxGnlPgQZWf2YnxMx+jLBbtxniAL2unMFOJ9rq0RRxDxfwLmTwopm7GpjaZOJ
# /wTCdac4ZIhelUDRIiaT7XbQAkwxOM3YwrFR9P0sXIRVhVyNU8F2fSKigNsfWIW6
# ibBBVhk+160wRVwt7QJ+9emc1m1JJmOS5b10QjqlJiD/v37r8lZVfje/7O9veI75
# WXbrHsqWZFj+TK6Nxm3IND0ZtoPH0YbJBfjseEYiwWeEsndwIeem+pamUBgoH5Zw
# BjmNwGxjp3cmR50avnhMdkQHvQri5YgD/3wJ5M2J0kd1SZfjwHM=
# =ufpC
# -----END PGP SIGNATURE-----
# gpg: Signature made Mon 25 May 2026 02:27:04 EDT
# gpg:                using RSA key 87A9BD933F87C606D276F62DDAE8E10975969CE5
# gpg: Good signature from "Marc-André Lureau <marcandre.lureau@redhat.com>" [full]
# gpg:                 aka "Marc-André Lureau <marcandre.lureau@gmail.com>" [full]
# Primary key fingerprint: 87A9 BD93 3F87 C606 D276  F62D DAE8 E109 7596 9CE5

* tag 'ui-pull-request' of https://gitlab.com/marcandre.lureau/qemu: (38 commits)
  ui/gtk: Fix focus loss on re-attachment with single VC
  ui/input: Remove unused QKeyCode helpers and keymaps
  ui/console: Remove qemu_text_console_put_qcode()
  qemu-keymap: Use Linux key codes
  ui/vnc: Use Linux key codes
  ui/spice: Use Linux key codes
  ui/sdl2: Use Linux key codes
  ui/keymaps: Use Linux key codes
  ui/input-linux: Use Linux key codes
  ui/input-legacy: Use Linux key codes
  ui/input-barrier: Use Linux key codes
  ui/gtk: Use Linux key codes
  ui/dbus: Use Linux key codes
  ui/cocoa: Use Linux key codes
  replay: Use Linux key codes
  hw/m68k/next-kbd: Use Linux key codes
  hw/input/virtio-input: Use Linux key codes
  hw/input/ps2: Use Linux key codes
  hw/input/hid: Use Linux key codes
  hw/input/adb-kbd: Use Linux key codes
  ...

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
3 weeks agotarget/arm: Move vectors_overlap to vec_internal.h
Richard Henderson [Fri, 22 May 2026 22:02:25 +0000 (15:02 -0700)] 
target/arm: Move vectors_overlap to vec_internal.h

We will shortly need this outside of sme_helper.c.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260522220306.235200-24-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
3 weeks agotarget/arm: Split vector-type.h from cpu.h
Richard Henderson [Fri, 22 May 2026 22:02:24 +0000 (15:02 -0700)] 
target/arm: Split vector-type.h from cpu.h

We want to be able to reference ARMVectorType etc from
common code, so move it out of cpu.h.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260522220306.235200-23-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
3 weeks agotarget/arm: Implement FSCALE for SME
Richard Henderson [Fri, 22 May 2026 22:02:23 +0000 (15:02 -0700)] 
target/arm: Implement FSCALE for SME

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260522220306.235200-22-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
3 weeks agotarget/arm: Implement FSCALE for AdvSIMD
Richard Henderson [Fri, 22 May 2026 22:02:22 +0000 (15:02 -0700)] 
target/arm: Implement FSCALE for AdvSIMD

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260522220306.235200-21-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
3 weeks agotarget/arm: Add isar_feature_aa64_f8cvt
Richard Henderson [Fri, 22 May 2026 22:02:21 +0000 (15:02 -0700)] 
target/arm: Add isar_feature_aa64_f8cvt

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260522220306.235200-20-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
3 weeks agotarget/arm: Implement ID_AA64FPFR0
Richard Henderson [Fri, 22 May 2026 22:02:20 +0000 (15:02 -0700)] 
target/arm: Implement ID_AA64FPFR0

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260522220306.235200-19-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
3 weeks agotarget/arm: Enable FEAT_FPMR for -cpu max
Richard Henderson [Fri, 22 May 2026 22:02:19 +0000 (15:02 -0700)] 
target/arm: Enable FEAT_FPMR for -cpu max

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260522220306.235200-18-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
3 weeks agolinux-user/aarch64: Implement FPMR signal frames
Richard Henderson [Fri, 22 May 2026 22:02:18 +0000 (15:02 -0700)] 
linux-user/aarch64: Implement FPMR signal frames

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260522220306.235200-17-richard.henderson@linaro.org
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
3 weeks agotarget/arm: Dump FPMR when present
Richard Henderson [Fri, 22 May 2026 22:02:17 +0000 (15:02 -0700)] 
target/arm: Dump FPMR when present

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260522220306.235200-16-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
3 weeks agotests/functional/aarch64/rme: update images to support FEAT_FP8
Pierrick Bouvier [Fri, 22 May 2026 22:02:16 +0000 (15:02 -0700)] 
tests/functional/aarch64/rme: update images to support FEAT_FP8

As well, use -smp 1 since there is no visible speedup running with -smp 2.

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Pierrick Bouvier <pierrick.bouvier@oss.qualcomm.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260522220306.235200-15-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
3 weeks agotarget/arm: Trap direct acceses to FPMR
Richard Henderson [Fri, 22 May 2026 22:02:15 +0000 (15:02 -0700)] 
target/arm: Trap direct acceses to FPMR

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260522220306.235200-14-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
3 weeks agotarget/arm: Add FPMR_EL to TBFLAGS
Richard Henderson [Fri, 22 May 2026 22:02:14 +0000 (15:02 -0700)] 
target/arm: Add FPMR_EL to TBFLAGS

Prepare to perform access checks for direct and
indirect uses of FPMR.

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260522220306.235200-13-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
3 weeks agotarget/arm: Clear FPMR on ResetSVEState
Richard Henderson [Fri, 22 May 2026 22:02:13 +0000 (15:02 -0700)] 
target/arm: Clear FPMR on ResetSVEState

FPMR is cleared when entering or exiting Streaming Mode.

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260522220306.235200-12-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
3 weeks agotarget/arm: Enable EnFPM bits for FEAT_FPMR
Richard Henderson [Fri, 22 May 2026 22:02:12 +0000 (15:02 -0700)] 
target/arm: Enable EnFPM bits for FEAT_FPMR

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260522220306.235200-11-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
3 weeks agotarget/arm: Update SCTLR bits for FEAT_FPMR
Richard Henderson [Fri, 22 May 2026 22:02:11 +0000 (15:02 -0700)] 
target/arm: Update SCTLR bits for FEAT_FPMR

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260522220306.235200-10-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
3 weeks agotarget/arm: Introduce FPMR
Richard Henderson [Fri, 22 May 2026 22:02:10 +0000 (15:02 -0700)] 
target/arm: Introduce FPMR

Introduce the special register FPMR and its fields.
Migrate it when present.

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260522220306.235200-9-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
3 weeks agotarget/arm: Update HCRX bits for Arm ARM M.a.a
Richard Henderson [Fri, 22 May 2026 22:02:09 +0000 (15:02 -0700)] 
target/arm: Update HCRX bits for Arm ARM M.a.a

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260522220306.235200-8-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
3 weeks agotarget/arm: Update SCR bits for Arm ARM M.a.a
Richard Henderson [Fri, 22 May 2026 22:02:08 +0000 (15:02 -0700)] 
target/arm: Update SCR bits for Arm ARM M.a.a

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260522220306.235200-7-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
3 weeks agotarget/arm: Enable FEAT_FAMINMAX for -cpu max
Richard Henderson [Fri, 22 May 2026 22:02:07 +0000 (15:02 -0700)] 
target/arm: Enable FEAT_FAMINMAX for -cpu max

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260522220306.235200-6-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
3 weeks agotarget/arm: Implement FEAT_FAMINMAX for SVE
Richard Henderson [Fri, 22 May 2026 22:02:06 +0000 (15:02 -0700)] 
target/arm: Implement FEAT_FAMINMAX for SVE

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Message-id: 20260522220306.235200-5-richard.henderson@linaro.org
[PMM: add comments for TRANS_ macros]
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
3 weeks agotarget/arm: Implement FEAT_FAMINMAX for SME
Richard Henderson [Fri, 22 May 2026 22:02:05 +0000 (15:02 -0700)] 
target/arm: Implement FEAT_FAMINMAX for SME

Since there is no bfloat16 variant of FAMINMAX,
check for missing function pointer in do_z2z_nn_fpst.

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260522220306.235200-4-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
3 weeks agotarget/arm: Implement FEAT_FAMINMAX for AdvSIMD
Richard Henderson [Fri, 22 May 2026 22:02:04 +0000 (15:02 -0700)] 
target/arm: Implement FEAT_FAMINMAX for AdvSIMD

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Message-id: 20260522220306.235200-3-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
3 weeks agotarget/arm: Implement ID_AA64ISAR3
Richard Henderson [Fri, 22 May 2026 22:02:03 +0000 (15:02 -0700)] 
target/arm: Implement ID_AA64ISAR3

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260522220306.235200-2-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
3 weeks agotarget/arm: Set correct fp flags for FLOGB when FPCR.AH = 1
Peter Maydell [Thu, 21 May 2026 12:29:13 +0000 (13:29 +0100)] 
target/arm: Set correct fp flags for FLOGB when FPCR.AH = 1

Our implementation of the FLOGB insn does the operations entirely
in the helper function, without needing to use fpu functions.
This means it needs to handle all the fp status flags itself.
We aren't setting float_flag_input_denormal_used when we
use (i.e. do not flush to zero) an input denormal, which means
that FPCR.IDC isn't set when it should be for FPCR.AH=1.
We missed this when we added float_flag_input_denormal_used
and made the fpu/ code set it.

Add the missing float_raise().

Cc: qemu-stable@nongnu.org
Fixes: d38a57a3f ("target/arm: Enable FEAT_AFP for '-cpu max'")
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260521122913.1565011-4-peter.maydell@linaro.org

3 weeks agotarget/arm: Use FPST_A64_F16 for SVE FCVTLT_hs
Peter Maydell [Thu, 21 May 2026 12:29:12 +0000 (13:29 +0100)] 
target/arm: Use FPST_A64_F16 for SVE FCVTLT_hs

We should be using the F16-specific float_status for conversions from
half-precision, because halfprec inputs never set Input Denormal.  If
we use the FPST_A64 fpstatus then we will incorrectly set FPCR.IDC
for input-denormals when FPCR.AH=1.

In commit e07b48995aaa we updated most of the halfprec-to-other
conversion insns to use FPST_A64_F16 as part of implementing
FEAT_AHP.  However we missed the SVE FCVTLT instruction, which has a
halfprec-to-single encoding.

Correct the FPST we use for the hs variant of FCVTLT.

Cc: qemu-stable@nongnu.org
Fixes: e07b48995aaa ("target/arm: Use FPST_A64_F16 for halfprec-to-other conversions")a
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260521122913.1565011-3-peter.maydell@linaro.org

3 weeks agotarget/arm: SVE2 FMAXP, FMINP must honour AH=1
Peter Maydell [Thu, 21 May 2026 12:29:11 +0000 (13:29 +0100)] 
target/arm: SVE2 FMAXP, FMINP must honour AH=1

The behaviour of floating-point maximum and minimum insns has
some odd special cases when FPCR.AH=1. We get this right in most
places (for instance, the ASIMD FMAXP, FMINP) but forgot about
it for the SVE2 versions of FMAXP and FMINP.

Cc: qemu-stable@nongnu.org
Fixes: 384433e70983 ("target/arm: Implement FPCR.AH semantics for FMINP and FMAXP")
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Message-id: 20260521122913.1565011-2-peter.maydell@linaro.org

3 weeks agotests/functional/aarch64: Bump up timeout on vbsa
Peter Maydell [Mon, 18 May 2026 16:04:40 +0000 (17:04 +0100)] 
tests/functional/aarch64: Bump up timeout on vbsa

On a debug build, the virt_vbsa functional test takes about 2 minutes to
run on my machine, so it tends to time out. Bump the timeout to 4 mins.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-id: 20260518160440.1037245-1-peter.maydell@linaro.org

3 weeks agotarget/arm/ptw: Flip sense of get_phys_addr return value
Peter Maydell [Fri, 15 May 2026 14:25:41 +0000 (15:25 +0100)] 
target/arm/ptw: Flip sense of get_phys_addr return value

This completes the conversion of this family of functions to
returning true on success and false on failure.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260515142541.571911-15-peter.maydell@linaro.org

3 weeks agotarget/arm/ptw: Flip sense of get_phys_addr_for_at return value
Peter Maydell [Fri, 15 May 2026 14:25:40 +0000 (15:25 +0100)] 
target/arm/ptw: Flip sense of get_phys_addr_for_at return value

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260515142541.571911-14-peter.maydell@linaro.org

3 weeks agotarget/arm/ptw: Flip sense of arm_cpu_get_phys_addr return value
Peter Maydell [Fri, 15 May 2026 14:25:39 +0000 (15:25 +0100)] 
target/arm/ptw: Flip sense of arm_cpu_get_phys_addr return value

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260515142541.571911-13-peter.maydell@linaro.org

3 weeks agotarget/arm/ptw: Flip sense of get_phys_addr_gpc return value
Peter Maydell [Fri, 15 May 2026 14:25:38 +0000 (15:25 +0100)] 
target/arm/ptw: Flip sense of get_phys_addr_gpc return value

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260515142541.571911-12-peter.maydell@linaro.org

3 weeks agotarget/arm/ptw: Flip sense of get_phys_addr_nogpc return value
Peter Maydell [Fri, 15 May 2026 14:25:37 +0000 (15:25 +0100)] 
target/arm/ptw: Flip sense of get_phys_addr_nogpc return value

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260515142541.571911-11-peter.maydell@linaro.org

3 weeks agotarget/arm/ptw: Flip sense of get_phys_addr_twostage return value
Peter Maydell [Fri, 15 May 2026 14:25:36 +0000 (15:25 +0100)] 
target/arm/ptw: Flip sense of get_phys_addr_twostage return value

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260515142541.571911-10-peter.maydell@linaro.org

3 weeks agotarget/arm/ptw: Flip sense of pmsav8_mpu_lookup return value
Peter Maydell [Fri, 15 May 2026 14:25:35 +0000 (15:25 +0100)] 
target/arm/ptw: Flip sense of pmsav8_mpu_lookup return value

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260515142541.571911-9-peter.maydell@linaro.org

3 weeks agotarget/arm/ptw: Flip sense of get_phys_addr_pmsav8 return value
Peter Maydell [Fri, 15 May 2026 14:25:34 +0000 (15:25 +0100)] 
target/arm/ptw: Flip sense of get_phys_addr_pmsav8 return value

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260515142541.571911-8-peter.maydell@linaro.org

3 weeks agotarget/arm/ptw: Flip sense of get_phys_addr_pmsav7 return value
Peter Maydell [Fri, 15 May 2026 14:25:33 +0000 (15:25 +0100)] 
target/arm/ptw: Flip sense of get_phys_addr_pmsav7 return value

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260515142541.571911-7-peter.maydell@linaro.org

3 weeks agotarget/arm/ptw: Flip sense of get_phys_addr_psmav5 return value
Peter Maydell [Fri, 15 May 2026 14:25:32 +0000 (15:25 +0100)] 
target/arm/ptw: Flip sense of get_phys_addr_psmav5 return value

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260515142541.571911-6-peter.maydell@linaro.org

3 weeks agotarget/arm/ptw: Flip sense of get_phys_addr_v5 return value
Peter Maydell [Fri, 15 May 2026 14:25:31 +0000 (15:25 +0100)] 
target/arm/ptw: Flip sense of get_phys_addr_v5 return value

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260515142541.571911-5-peter.maydell@linaro.org

3 weeks agotarget/arm/ptw: Flip sense of get_phys_addr_v6 return value
Peter Maydell [Fri, 15 May 2026 14:25:30 +0000 (15:25 +0100)] 
target/arm/ptw: Flip sense of get_phys_addr_v6 return value

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260515142541.571911-4-peter.maydell@linaro.org

3 weeks agotarget/arm/ptw: Flip sense of get_phys_addr_lpae return value
Peter Maydell [Fri, 15 May 2026 14:25:29 +0000 (15:25 +0100)] 
target/arm/ptw: Flip sense of get_phys_addr_lpae return value

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260515142541.571911-3-peter.maydell@linaro.org

3 weeks agotarget/arm/ptw: Flip sense of get_phys_addr_disabled return value
Peter Maydell [Fri, 15 May 2026 14:25:28 +0000 (15:25 +0100)] 
target/arm/ptw: Flip sense of get_phys_addr_disabled return value

We want to bring all the get_phys_addr* functions in ptw.c into line
with the sense that translate_for_debug() has and which seems more
logical: true on success, and false on failure.

Start with get_phys_addr_disabled().

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260515142541.571911-2-peter.maydell@linaro.org

3 weeks agotarget/arm: Set debug in attrs in translate_for_debug()
Peter Maydell [Fri, 15 May 2026 13:12:45 +0000 (14:12 +0100)] 
target/arm: Set debug in attrs in translate_for_debug()

The translate_for_debug method is supposed to return attributes
that include the debug flag being set. We forgot this when
implementing the method for Arm.

Fixes: abefca8e7f957 ("target/arm: Implement translate_for_debug")
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260515131245.366240-1-peter.maydell@linaro.org

3 weeks agohw/dma/omap_dma: Drop model argument to omap_dma_init()
Peter Maydell [Tue, 12 May 2026 20:34:14 +0000 (21:34 +0100)] 
hw/dma/omap_dma: Drop model argument to omap_dma_init()

The model argument to omap_dma_init() is always omap_dma_3_1, and all
we do with it now is assert this; drop the argument and the enum.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260512203414.3633237-13-peter.maydell@linaro.org

3 weeks agohw/dma/omap_dma: Remove 3.1 mapping handling
Peter Maydell [Tue, 12 May 2026 20:34:12 +0000 (21:34 +0100)] 
hw/dma/omap_dma: Remove 3.1 mapping handling

Now we have no 3.2 DMA support, the omap_dma_enable_3_1_mapping()
function is called at reset, and there is no longer anywhere that
disables it.  Remove the function and the unused
omap_3_1_mapping_disabled struct field, and drop the indirection from
omap_dma_interrupts_update() through the intr_update function pointer
to omap_dma_interrupts_3_1_update(), instead inlining that last
function into omap_dma_interrupts_update().

The only other thing omap_dma_enable_3_1_mapping() was doing was
setting s->chans; since this is now never changed at runtime we can
move its setting into the init function rather than reset.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260512203414.3633237-11-peter.maydell@linaro.org

3 weeks agohw/dma/omap_dma: Remove omap_3_1_compatible_disable flag
Peter Maydell [Tue, 12 May 2026 20:34:11 +0000 (21:34 +0100)] 
hw/dma/omap_dma: Remove omap_3_1_compatible_disable flag

The OMAP DMA device has an omap_3_1_compatible_disable flag in its
channel struct, which the 3.2 version of the DMA block used to tell
whether it should behave compatibly with 3.1 or not.  Now we have no
3.2 support, the omap_3_1_compatible_disable flag is set to false and
can't be changed, so we can remove it, folding out all the conditions
where we were testing it as always-false.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260512203414.3633237-10-peter.maydell@linaro.org

3 weeks agohw/dma/omap_dma: Fold omap_dma_sys_read() and omap_dma_sys_write() into callers
Peter Maydell [Tue, 12 May 2026 20:34:10 +0000 (21:34 +0100)] 
hw/dma/omap_dma: Fold omap_dma_sys_read() and omap_dma_sys_write() into callers

Now we have removed the DMA 3.2 support, we call omap_dma_sys_read()
only for the single address offset 0x400, and similarly for
omap_dma_sys_write().  The other cases in those functions are DMA
3.2-only and now dead code.  Fold the 0x400 register directly into
the callers, and remove the rest.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260512203414.3633237-9-peter.maydell@linaro.org

3 weeks agohw/dma/omap_dma: Remove support for dma_3_0 and dma_3_2
Peter Maydell [Tue, 12 May 2026 20:34:09 +0000 (21:34 +0100)] 
hw/dma/omap_dma: Remove support for dma_3_0 and dma_3_2

The omap_dma device has support for modelling different variants
of the DMA block, as enumerated by the omap_dma_model enum:
3_0, 3_1 and 3_2. However, our one remaining OMAP SoC always
passes omap_dma_3_1 into the omap_dma_init() function, so the
handling for 3_0 and 3_2 is never used.

Remove the support for the other versions; this lets us
delete entirely two large functions that were specific
to 3.2 DMA to the LCD controller, and all their associated
fields in the omap_dma_lcd_channel_s struct.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260512203414.3633237-8-peter.maydell@linaro.org

3 weeks agohw/arm/omap: Remove unused wakeup irq
Peter Maydell [Tue, 12 May 2026 20:34:08 +0000 (21:34 +0100)] 
hw/arm/omap: Remove unused wakeup irq

The OMAP code creates a qemu_irq whose set function is
omap_mpu_wakeup(), and passes that irq into omap_mpuio_init(), which
saves it in its omap_mpuio_s::wakeup field.  However nothing ever
touches that qemu_irq again, so omap_mpu_wakeup() is never called.

Remove all this as dead code.  This lets us remove a direct call to
cpu_interrupt(cpu, CPU_INTERRUPT_EXITTB) from within board/SoC code,
which is pretty ugly and might not even do the right thing these
days.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260512203414.3633237-7-peter.maydell@linaro.org

3 weeks agohw/arm/omap: Delete unused #defines
Peter Maydell [Tue, 12 May 2026 20:34:07 +0000 (21:34 +0100)] 
hw/arm/omap: Delete unused #defines

Delete some #defines which we no longer use because they are
for OMAP SoCs which we dropped support for.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260512203414.3633237-6-peter.maydell@linaro.org

3 weeks agohw/arm/omap: Remove unused omap1_dma_irq_map[] entries
Peter Maydell [Tue, 12 May 2026 20:34:06 +0000 (21:34 +0100)] 
hw/arm/omap: Remove unused omap1_dma_irq_map[] entries

For the one remaining OMAP board, we use only the first 6 entries
in the omap1_dma_irq_map[] array; the rest were for OMAP1610.
Delete the now-unused elements.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260512203414.3633237-5-peter.maydell@linaro.org

3 weeks agohw/arm/omap: Remove stray unused prototype
Peter Maydell [Tue, 12 May 2026 20:34:05 +0000 (21:34 +0100)] 
hw/arm/omap: Remove stray unused prototype

When we removed the support for most of the OMAP SoCs, we missed
deleting a function prototype that was for a function defined in
removed code.  Delete it now.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260512203414.3633237-4-peter.maydell@linaro.org

3 weeks agohw/arm/omap: Remove unused omap_mpuio functions
Peter Maydell [Tue, 12 May 2026 20:34:04 +0000 (21:34 +0100)] 
hw/arm/omap: Remove unused omap_mpuio functions

The omap1.c file includes some functions which used to be used by the
other OMAP SoC variants which we removed a while ago, but which we
missed when doing that removal.  They have no callers, so we can
delete them.

This code was the last user of hw_error() in this file, so we
can also remove the hw-error.h include.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260512203414.3633237-3-peter.maydell@linaro.org

3 weeks agohw/arm/omap: Remove omap_mpu_model remnants
Peter Maydell [Tue, 12 May 2026 20:34:03 +0000 (21:34 +0100)] 
hw/arm/omap: Remove omap_mpu_model remnants

The omap1.c code has handling for an mpu_model field which is
an enum of which OMAP SoC model it is. We removed most of our
OMAP support some time ago, and now the only OMAP SoC we
implement is the OMAP310, which sets s->mpu_model = omap310
in omap310_mpu_init().

That makes all the handling for other settings of mpu_model dead
code; remove them.  This includes the omap GPIO device's mpu_model
property which we set but which the device makes no use of, and the
omap-id-e20 memory region (because the OMAP310 satisfies
cpu_is_omap15xx(), so never executed the old if() block).

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260512203414.3633237-2-peter.maydell@linaro.org

3 weeks agohw/timer/mss_timer: Remove dead code in timer_write()
Peter Maydell [Tue, 12 May 2026 13:47:50 +0000 (14:47 +0100)] 
hw/timer/mss_timer: Remove dead code in timer_write()

In timer_write(), we switch() on the address offset to handle
registers that need special-casing, with a default case that handles
both "unsupported (64-bit mode) register" and "can just write value
to st->regs[]".  However, as Coverity points out, every register is
covered by the special-casing, so the "write to st->regs[]" code path
is dead.  (timer_read() has a similar structure but there several
registers do go through the default code path.)

Replace the dead code with an assertion.

CID: 1613905
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20260512134750.3543639-1-peter.maydell@linaro.org

3 weeks agohw/i2c/aspeed_i2c: convert to use Resettable interface
Kane Chen [Mon, 25 May 2026 04:42:03 +0000 (04:42 +0000)] 
hw/i2c/aspeed_i2c: convert to use Resettable interface

Replace the legacy reset callback registered via
device_class_set_legacy_reset() with the Resettable interface.

Signed-off-by: Kane Chen <kane_chen@aspeedtech.com>
Reviewed-by: Jamin Lin <jamin_lin@aspeedtech.com>
Link: https://lore.kernel.org/qemu-devel/20260525044129.3133916-24-kane_chen@aspeedtech.com
Signed-off-by: Cédric Le Goater <clg@redhat.com>
3 weeks agohw/adc/aspeed_adc: convert to use Resettable interface
Kane Chen [Mon, 25 May 2026 04:42:02 +0000 (04:42 +0000)] 
hw/adc/aspeed_adc: convert to use Resettable interface

Replace the legacy reset callback registered via
device_class_set_legacy_reset() with the Resettable interface.

Signed-off-by: Kane Chen <kane_chen@aspeedtech.com>
Reviewed-by: Jamin Lin <jamin_lin@aspeedtech.com>
Link: https://lore.kernel.org/qemu-devel/20260525044129.3133916-23-kane_chen@aspeedtech.com
Signed-off-by: Cédric Le Goater <clg@redhat.com>
3 weeks agohw/rtc/aspeed_rtc: convert to use Resettable interface
Kane Chen [Mon, 25 May 2026 04:42:00 +0000 (04:42 +0000)] 
hw/rtc/aspeed_rtc: convert to use Resettable interface

Replace the legacy reset callback registered via
device_class_set_legacy_reset() with the Resettable interface.

Signed-off-by: Kane Chen <kane_chen@aspeedtech.com>
Reviewed-by: Jamin Lin <jamin_lin@aspeedtech.com>
Link: https://lore.kernel.org/qemu-devel/20260525044129.3133916-22-kane_chen@aspeedtech.com
Signed-off-by: Cédric Le Goater <clg@redhat.com>
3 weeks agohw/fsi/aspeed_apb2opb: convert to use Resettable interface
Kane Chen [Mon, 25 May 2026 04:41:59 +0000 (04:41 +0000)] 
hw/fsi/aspeed_apb2opb: convert to use Resettable interface

Replace the legacy reset callback registered via
device_class_set_legacy_reset() with the Resettable interface.

Signed-off-by: Kane Chen <kane_chen@aspeedtech.com>
Reviewed-by: Jamin Lin <jamin_lin@aspeedtech.com>
Link: https://lore.kernel.org/qemu-devel/20260525044129.3133916-21-kane_chen@aspeedtech.com
Signed-off-by: Cédric Le Goater <clg@redhat.com>
3 weeks agohw/net/ftgmac100: convert to use Resettable interface
Kane Chen [Mon, 25 May 2026 04:41:58 +0000 (04:41 +0000)] 
hw/net/ftgmac100: convert to use Resettable interface

Replace the legacy reset callback registered via
device_class_set_legacy_reset() with the Resettable interface.

Signed-off-by: Kane Chen <kane_chen@aspeedtech.com>
Reviewed-by: Jamin Lin <jamin_lin@aspeedtech.com>
Link: https://lore.kernel.org/qemu-devel/20260525044129.3133916-20-kane_chen@aspeedtech.com
Signed-off-by: Cédric Le Goater <clg@redhat.com>
3 weeks agohw/watchdog/wdt_aspeed: convert to use Resettable interface
Kane Chen [Mon, 25 May 2026 04:41:56 +0000 (04:41 +0000)] 
hw/watchdog/wdt_aspeed: convert to use Resettable interface

Replace the legacy reset callback registered via
device_class_set_legacy_reset() with the Resettable interface.

Signed-off-by: Kane Chen <kane_chen@aspeedtech.com>
Reviewed-by: Jamin Lin <jamin_lin@aspeedtech.com>
Link: https://lore.kernel.org/qemu-devel/20260525044129.3133916-19-kane_chen@aspeedtech.com
Signed-off-by: Cédric Le Goater <clg@redhat.com>
3 weeks agohw/i3c/aspeed_i3c: convert to use Resettable interface
Kane Chen [Mon, 25 May 2026 04:41:55 +0000 (04:41 +0000)] 
hw/i3c/aspeed_i3c: convert to use Resettable interface

Replace the legacy reset callback registered via
device_class_set_legacy_reset() with the Resettable interface.

Signed-off-by: Kane Chen <kane_chen@aspeedtech.com>
Reviewed-by: Jamin Lin <jamin_lin@aspeedtech.com>
Link: https://lore.kernel.org/qemu-devel/20260525044129.3133916-18-kane_chen@aspeedtech.com
Signed-off-by: Cédric Le Goater <clg@redhat.com>
3 weeks agohw/intc/aspeed_intc: convert to use Resettable interface
Kane Chen [Mon, 25 May 2026 04:41:54 +0000 (04:41 +0000)] 
hw/intc/aspeed_intc: convert to use Resettable interface

Replace the legacy reset callback registered via
device_class_set_legacy_reset() with the Resettable interface.

Signed-off-by: Kane Chen <kane_chen@aspeedtech.com>
Reviewed-by: Jamin Lin <jamin_lin@aspeedtech.com>
Link: https://lore.kernel.org/qemu-devel/20260525044129.3133916-17-kane_chen@aspeedtech.com
Signed-off-by: Cédric Le Goater <clg@redhat.com>
3 weeks agohw/intc/aspeed_vic: convert to use Resettable interface
Kane Chen [Mon, 25 May 2026 04:41:52 +0000 (04:41 +0000)] 
hw/intc/aspeed_vic: convert to use Resettable interface

Replace the legacy reset callback registered via
device_class_set_legacy_reset() with the Resettable interface.

Signed-off-by: Kane Chen <kane_chen@aspeedtech.com>
Reviewed-by: Jamin Lin <jamin_lin@aspeedtech.com>
Link: https://lore.kernel.org/qemu-devel/20260525044129.3133916-16-kane_chen@aspeedtech.com
Signed-off-by: Cédric Le Goater <clg@redhat.com>
3 weeks agohw/ssi/aspeed_smc: convert to use Resettable interface
Kane Chen [Mon, 25 May 2026 04:41:51 +0000 (04:41 +0000)] 
hw/ssi/aspeed_smc: convert to use Resettable interface

Replace the legacy reset callback registered via
device_class_set_legacy_reset() with the Resettable interface.

Signed-off-by: Kane Chen <kane_chen@aspeedtech.com>
Reviewed-by: Jamin Lin <jamin_lin@aspeedtech.com>
Link: https://lore.kernel.org/qemu-devel/20260525044129.3133916-15-kane_chen@aspeedtech.com
Signed-off-by: Cédric Le Goater <clg@redhat.com>
3 weeks agohw/sd/aspeed_sdhci: convert to use Resettable interface
Kane Chen [Mon, 25 May 2026 04:41:50 +0000 (04:41 +0000)] 
hw/sd/aspeed_sdhci: convert to use Resettable interface

Replace the legacy reset callback registered via
device_class_set_legacy_reset() with the Resettable interface.

Signed-off-by: Kane Chen <kane_chen@aspeedtech.com>
Reviewed-by: Jamin Lin <jamin_lin@aspeedtech.com>
Link: https://lore.kernel.org/qemu-devel/20260525044129.3133916-14-kane_chen@aspeedtech.com
Signed-off-by: Cédric Le Goater <clg@redhat.com>
3 weeks agohw/gpio/aspeed_gpio: convert to use Resettable interface
Kane Chen [Mon, 25 May 2026 04:41:48 +0000 (04:41 +0000)] 
hw/gpio/aspeed_gpio: convert to use Resettable interface

Replace the legacy reset callback registered via
device_class_set_legacy_reset() with the Resettable interface.

Signed-off-by: Kane Chen <kane_chen@aspeedtech.com>
Reviewed-by: Jamin Lin <jamin_lin@aspeedtech.com>
Link: https://lore.kernel.org/qemu-devel/20260525044129.3133916-13-kane_chen@aspeedtech.com
Signed-off-by: Cédric Le Goater <clg@redhat.com>
3 weeks agohw/timer/aspeed_timer: convert to use Resettable interface
Kane Chen [Mon, 25 May 2026 04:41:47 +0000 (04:41 +0000)] 
hw/timer/aspeed_timer: convert to use Resettable interface

Replace the legacy reset callback registered via
device_class_set_legacy_reset() with the Resettable interface.

Signed-off-by: Kane Chen <kane_chen@aspeedtech.com>
Reviewed-by: Jamin Lin <jamin_lin@aspeedtech.com>
Link: https://lore.kernel.org/qemu-devel/20260525044129.3133916-12-kane_chen@aspeedtech.com
Signed-off-by: Cédric Le Goater <clg@redhat.com>
3 weeks agohw/pci-host/aspeed_pcie: convert to use Resettable interface
Kane Chen [Mon, 25 May 2026 04:41:45 +0000 (04:41 +0000)] 
hw/pci-host/aspeed_pcie: convert to use Resettable interface

Replace the legacy reset callback registered via
device_class_set_legacy_reset() with the Resettable interface.

Signed-off-by: Kane Chen <kane_chen@aspeedtech.com>
Reviewed-by: Jamin Lin <jamin_lin@aspeedtech.com>
Link: https://lore.kernel.org/qemu-devel/20260525044129.3133916-11-kane_chen@aspeedtech.com
Signed-off-by: Cédric Le Goater <clg@redhat.com>
3 weeks agohw/misc/aspeed_ltpi: convert to use Resettable interface
Kane Chen [Mon, 25 May 2026 04:41:43 +0000 (04:41 +0000)] 
hw/misc/aspeed_ltpi: convert to use Resettable interface

Replace the legacy reset callback registered via
device_class_set_legacy_reset() with the Resettable interface.

Signed-off-by: Kane Chen <kane_chen@aspeedtech.com>
Reviewed-by: Jamin Lin <jamin_lin@aspeedtech.com>
Link: https://lore.kernel.org/qemu-devel/20260525044129.3133916-10-kane_chen@aspeedtech.com
Signed-off-by: Cédric Le Goater <clg@redhat.com>
3 weeks agohw/misc/aspeed_scu: convert to use Resettable interface
Kane Chen [Mon, 25 May 2026 04:41:41 +0000 (04:41 +0000)] 
hw/misc/aspeed_scu: convert to use Resettable interface

Replace the legacy reset callback registered via
device_class_set_legacy_reset() with the Resettable interface.

Signed-off-by: Kane Chen <kane_chen@aspeedtech.com>
Reviewed-by: Jamin Lin <jamin_lin@aspeedtech.com>
Link: https://lore.kernel.org/qemu-devel/20260525044129.3133916-9-kane_chen@aspeedtech.com
Signed-off-by: Cédric Le Goater <clg@redhat.com>
3 weeks agohw/misc/aspeed_sdmc: convert to use Resettable interface
Kane Chen [Mon, 25 May 2026 04:41:40 +0000 (04:41 +0000)] 
hw/misc/aspeed_sdmc: convert to use Resettable interface

Replace the legacy reset callback registered via
device_class_set_legacy_reset() with the Resettable interface.

Signed-off-by: Kane Chen <kane_chen@aspeedtech.com>
Reviewed-by: Jamin Lin <jamin_lin@aspeedtech.com>
Link: https://lore.kernel.org/qemu-devel/20260525044129.3133916-8-kane_chen@aspeedtech.com
Signed-off-by: Cédric Le Goater <clg@redhat.com>
3 weeks agohw/misc/aspeed_lpc: convert to use Resettable interface
Kane Chen [Mon, 25 May 2026 04:41:39 +0000 (04:41 +0000)] 
hw/misc/aspeed_lpc: convert to use Resettable interface

Replace the legacy reset callback registered via
device_class_set_legacy_reset() with the Resettable interface.

Signed-off-by: Kane Chen <kane_chen@aspeedtech.com>
Reviewed-by: Jamin Lin <jamin_lin@aspeedtech.com>
Link: https://lore.kernel.org/qemu-devel/20260525044129.3133916-7-kane_chen@aspeedtech.com
Signed-off-by: Cédric Le Goater <clg@redhat.com>
3 weeks agohw/misc/aspeed_xdma: convert to use Resettable interface
Kane Chen [Mon, 25 May 2026 04:41:37 +0000 (04:41 +0000)] 
hw/misc/aspeed_xdma: convert to use Resettable interface

Replace the legacy reset callback registered via
device_class_set_legacy_reset() with the Resettable interface.

Signed-off-by: Kane Chen <kane_chen@aspeedtech.com>
Reviewed-by: Jamin Lin <jamin_lin@aspeedtech.com>
Link: https://lore.kernel.org/qemu-devel/20260525044129.3133916-6-kane_chen@aspeedtech.com
Signed-off-by: Cédric Le Goater <clg@redhat.com>
3 weeks agohw/misc/aspeed_sbc: convert to use Resettable interface
Kane Chen [Mon, 25 May 2026 04:41:36 +0000 (04:41 +0000)] 
hw/misc/aspeed_sbc: convert to use Resettable interface

Replace the legacy reset callback registered via
device_class_set_legacy_reset() with the Resettable interface.

Signed-off-by: Kane Chen <kane_chen@aspeedtech.com>
Reviewed-by: Jamin Lin <jamin_lin@aspeedtech.com>
Link: https://lore.kernel.org/qemu-devel/20260525044129.3133916-5-kane_chen@aspeedtech.com
Signed-off-by: Cédric Le Goater <clg@redhat.com>
3 weeks agohw/misc/aspeed_hace: convert to use Resettable interface
Kane Chen [Mon, 25 May 2026 04:41:34 +0000 (04:41 +0000)] 
hw/misc/aspeed_hace: convert to use Resettable interface

Replace the legacy reset callback registered via
device_class_set_legacy_reset() with the Resettable interface.

Signed-off-by: Kane Chen <kane_chen@aspeedtech.com>
Reviewed-by: Jamin Lin <jamin_lin@aspeedtech.com>
Link: https://lore.kernel.org/qemu-devel/20260525044129.3133916-4-kane_chen@aspeedtech.com
Signed-off-by: Cédric Le Goater <clg@redhat.com>
3 weeks agohw/misc/aspeed_peci: convert to use Resettable interface
Kane Chen [Mon, 25 May 2026 04:41:33 +0000 (04:41 +0000)] 
hw/misc/aspeed_peci: convert to use Resettable interface

Replace the legacy reset callback registered via
device_class_set_legacy_reset() with the Resettable interface.

Signed-off-by: Kane Chen <kane_chen@aspeedtech.com>
Reviewed-by: Jamin Lin <jamin_lin@aspeedtech.com>
Link: https://lore.kernel.org/qemu-devel/20260525044129.3133916-3-kane_chen@aspeedtech.com
Signed-off-by: Cédric Le Goater <clg@redhat.com>
3 weeks agohw/misc/aspeed_pwm: convert to use Resettable interface
Kane Chen [Mon, 25 May 2026 04:41:31 +0000 (04:41 +0000)] 
hw/misc/aspeed_pwm: convert to use Resettable interface

Replace the legacy reset callback registered via
device_class_set_legacy_reset() with the Resettable interface.

Signed-off-by: Kane-Chen-AS <kane_chen@aspeedtech.com>
Reviewed-by: Jamin Lin <jamin_lin@aspeedtech.com>
Link: https://lore.kernel.org/qemu-devel/20260525044129.3133916-2-kane_chen@aspeedtech.com
Signed-off-by: Cédric Le Goater <clg@redhat.com>
3 weeks agonet/tap: check that user tries to define zero queues
Vladimir Sementsov-Ogievskiy [Wed, 18 Mar 2026 11:31:43 +0000 (14:31 +0300)] 
net/tap: check that user tries to define zero queues

Add check for queues parameter to be non-zero, and for fd/fds
parameters to be non-empty.

Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Signed-off-by: Jason Wang <jasowang@redhat.com>
3 weeks agonet/tap: net_init_tap(): relax QEMU hubs check
Vladimir Sementsov-Ogievskiy [Wed, 18 Mar 2026 11:31:42 +0000 (14:31 +0300)] 
net/tap: net_init_tap(): relax QEMU hubs check

queues may be set to 1, as well as fds may contain only one fd.
No reason to block such cases. Let's check exactly number of queues.

Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Reviewed-by: Ben Chaney <bchaney@akamai.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>
3 weeks agonet/tap: net_init_tap(): merge fd=, fds= and helper= cases into one
Vladimir Sementsov-Ogievskiy [Wed, 18 Mar 2026 11:31:41 +0000 (14:31 +0300)] 
net/tap: net_init_tap(): merge fd=, fds= and helper= cases into one

Now fd= and helper= cases are just a duplication of fds= case with
queues=1. Let's merge them all.

Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Reviewed-by: Ben Chaney <bchaney@akamai.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>
3 weeks agonet/tap: fix vhostfds/vhostfd parameters API
Vladimir Sementsov-Ogievskiy [Wed, 18 Mar 2026 11:31:40 +0000 (14:31 +0300)] 
net/tap: fix vhostfds/vhostfd parameters API

There is a bug in the interface: we don't allow vhostfds argument
together with queues. But we allow vhostfd, and try use it for all
queues of multiqueue TAP.

Let's relax the restriction. We already check that number of vhost fds
match queues (or number of fds). So, no matter do vhost fds come from
vhostfds or vhostfd argument. Let's use correct vhost fds for multiqueue
TAP.

To achieve this we move vhost fds parsing to separate function and call
it earlier in net_init_tap(). Then we have vhost fds available (and
already checked) for all further cases.

Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Reviewed-by: Ben Chaney <bchaney@akamai.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>
3 weeks agonet/tap: move fds parameters handling to separate functions
Vladimir Sementsov-Ogievskiy [Wed, 18 Mar 2026 11:31:39 +0000 (14:31 +0300)] 
net/tap: move fds parameters handling to separate functions

This significantly simplify the code in net_init_tap().

Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Reviewed-by: Ben Chaney <bchaney@akamai.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>
3 weeks agonet: introduce net_parse_fds()
Vladimir Sementsov-Ogievskiy [Wed, 18 Mar 2026 11:31:38 +0000 (14:31 +0300)] 
net: introduce net_parse_fds()

Add common net_parse_fds() and net_free_fds() helpers and use them
in tap.c and af-xdp.c.

Choose returning queues instead of fds, because we'll have derived
helper in net/tap, which will be able to return fds=NULL and non-zero
queues on success. That's also why we move to INT_MAX for queues, to
support negative return value for net_parse_fds() (for failure paths).

Note that redundant restriction of MAX_TAP_QUEUES is dropped for tap.c

Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Reviewed-by: Ben Chaney <bchaney@akamai.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>
3 weeks agonet/tap: net_init_tap_one(): drop model parameter
Vladimir Sementsov-Ogievskiy [Wed, 18 Mar 2026 11:31:37 +0000 (14:31 +0300)] 
net/tap: net_init_tap_one(): drop model parameter

It could be simply derived from tap parameter. And this change
simplifies further refactoring.

Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Reviewed-by: Ben Chaney <bchaney@akamai.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>
3 weeks agonet/tap: net_init_tap_one() refactor to get vhostfd param
Vladimir Sementsov-Ogievskiy [Wed, 18 Mar 2026 11:31:36 +0000 (14:31 +0300)] 
net/tap: net_init_tap_one() refactor to get vhostfd param

Get vhostfd instead of vhostfdname:

- more symmetry with fd param
- prepare to further changes

Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Reviewed-by: Ben Chaney <bchaney@akamai.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>