Doug Evans <1906...@bugs.launchpad.net> writes: > Public bug reported: > > -device help doesn't report all devices. > E.g., devices that are instantiated by a board don't get printed in part > because they don't exist when "-device help" is processed. As an experiment I > deferred processing of "-device help" as long as possible and some devices > were still not printed, so there's more going on here. > > QEMU commit hash: 944fdc5e27a5b5adbb765891e8e70e88ba9a00ec > > Repro: > $ configure --target-list=arm-softmmu > $ make > $ ./qemu-system-arm -device help | grep npcm7xx > <empty> > > I'd expect to see things like npcm7xx-rng in the output.
Works as intended. "-device help" shows the devices that are available with -device. npcm7xx-rng isn't: $ qemu-system-arm -M virt -device npcm7xx-rng qemu-system-arm: -device npcm7xx-rng: Parameter 'driver' expects pluggable device type Monitor command "info qdm" shows all devices, including npcm7xx-rng: $ qemu-system-arm -M virt -monitor stdio QEMU 5.1.92 monitor - type 'help' for more information (qemu) info qdm [...] name "npcm7xx-rng", bus System, desc "NPCM7xx Random Number Generator", no-user [...] Note "no-user": it's not available with -device. > I can imagine enumerating board-provided devices is a challenge. > Still, it'd be really nice if "-device help" printed them, and having > "-device $driver,help" work as well. It works: $ qemu-system-arm -M virt -device npcm7xx-rng,help npcm7xx-rng options: regs[0]=<child<qemu:memory-region>> Hope this helps!