On 16/03/2019 23.39, Philippe Mathieu-Daudé wrote: > This fixes when configuring with --without-default-devices: > > $ qemu-system-ppc -M prep --nodefaults > qemu-system-ppc: Machine type 'prep' is deprecated: use 40p machine type > instead > qemu-system-ppc: Unknown device 'isa-pcspk' for bus 'ISA' > Aborted (core dumped) > > (gdb) bt > #1 0x00007ffff5a11895 in __GI_abort () at abort.c:79 > #2 0x0000555555845db3 in qdev_create (bus=0x55555641e360, > name=name@entry=0x555555b1f338 "isa-pcspk") at hw/core/qdev.c:131 > #3 0x000055555586b03e in isa_create (bus=bus@entry=0x55555641e360, > name=name@entry=0x555555b1f338 "isa-pcspk") at hw/isa/isa-bus.c:162 > #4 0x000055555586bf7b in pcspk_init (pit=0x5555561696b0, > bus=0x55555641e360) at include/hw/audio/pcspk.h:38 > #5 0x000055555586bf7b in i82378_realize (pci=<optimized out>, > errp=0x7fffffffc960) at hw/isa/i82378.c:104 > #6 0x000055555587e288 in pci_qdev_realize (qdev=0x55555641be60, > errp=<optimized out>) at hw/pci/pci.c:2076 > #7 0x0000555555846fb4 in device_set_realized (obj=<optimized out>, > value=<optimized out>, errp=0x7fffffffcaf0) at hw/core/qdev.c:834 > #8 0x00005555559273f7 in property_set_bool (obj=0x55555641be60, > v=<optimized out>, name=<optimized out>, opaque=0x5555563df1c0, > errp=0x7fffffffcaf0) at qom/object.c:2074 > #9 0x000055555592ba1f in object_property_set_qobject > (obj=obj@entry=0x55555641be60, value=value@entry=0x55555641d2b0, > name=name@entry=0x555555b17175 "realized", errp=errp@entry=0x7fffffffcaf0) at > qom/qom-qobject.c:27 > #10 0x0000555555929355 in object_property_set_bool (obj=0x55555641be60, > value=<optimized out>, name=0x555555b17175 "realized", errp=0x7fffffffcaf0) > at qom/object.c:1332 > #11 0x0000555555845f42 in qdev_init_nofail (dev=dev@entry=0x55555641be60) > at hw/core/qdev.c:321 > #12 0x000055555587ce06 in pci_create_simple_multifunction > (name=name@entry=0x555555b1f346 "i82378", multifunction=false, > devfn=devfn@entry=8, bus=bus@entry=0x55555628cfe8) at hw/pci/pci.c:2115 > #13 0x000055555587ce06 in pci_create_simple (bus=bus@entry=0x55555628cfe8, > devfn=devfn@entry=8, name=name@entry=0x555555b1f346 "i82378") at > hw/pci/pci.c:2126 > #14 0x000055555575e62c in ppc_prep_init (machine=0x55555609af00) at > hw/ppc/prep.c:516 > #15 0x000055555584d57b in machine_run_board_init (machine=0x55555609af00) > at hw/core/machine.c:1030 > > Fixes: dd0ff8191ab > Signed-off-by: Philippe Mathieu-Daudé <phi...@redhat.com> > --- > hw/isa/Kconfig | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/hw/isa/Kconfig b/hw/isa/Kconfig > index 1bb5ccdba7..b40075df89 100644 > --- a/hw/isa/Kconfig > +++ b/hw/isa/Kconfig > @@ -11,6 +11,7 @@ config I82378 > select I8254 > select I82374 > select MC146818RTC > + select PCSPK > > config PC87312 > bool >
i82378_realize() in hw/isa/i82378.c calls pcspk_init(), so this sounds right. Reviewed-by: Thomas Huth <th...@redhat.com>