On Thu, Feb 19, 2026 at 12:32 AM Peter Maydell <[email protected]> wrote: > > On Wed, 11 Feb 2026 at 12:28, Mohammadfaiz Bawa <[email protected]> wrote: > > > > Windows ARM64 guests detect virtio-mmio devices declared in ACPI > > tables even when no backend is attached. This causes "Unknown > > devices" (ACPI\LNRO0005) to appear in Device Manager. > > > > Until Windows fixes that by supporting, adding a new machine > > property 'virtio-transports' to control the number of > > virtio-mmio transports instantiated. The default remains > > NUM_VIRTIO_TRANSPORTS (32) for backward compatibility. > > Setting it to 0 allows users to disable virtio-mmio entirely. > > > > Usage: -machine virt,virtio-transports=0 > > > > Signed-off-by: Mohammadfaiz Bawa <[email protected]> > > Applied to target-arm.next, thanks -- but please could you check > up with the ACPI spec about whether it says anything about what > to report for empty transports? If it says we should or if it's > just vague we should probably match the x86 microvm behaviour > of not showing empty transports, since they can never be > hotplugged after startup. (This might need to be tied to > a machine-version, not sure.) Maybe we should also not report > them in the dtb? > > thanks > -- PMM >
[https://uefi.org/specs/ACPI/6.6/06_Device_Configuration.html#sta-device-status] The ACPI 6.6 spec (Section 6.3.7) doesn't explicitly forbid listing empty devices, but without a _STA method OSPM assumes they are present and functioning. A simple fix is to not list them at all, matching x86 microvm's approach and applying the same filtering to both ACPI and DTB. Tying this to the machine-version is a good idea as it may be required for backward compatibility. Thanks, Faiz
