On Mon, Feb 28, 2022 at 12:26 PM Ani Sinha <a...@anisinha.ca> wrote: > > > > > > >ObjectClass type->name here :) > > > > > > I see. What about object_resolve_path_type()? It takes a typename > > > parameter. It even tells you if the match is ambiguous if you care. > > > > Yes this is a good suggestion and it will likely work. > > You can get rid of your first patch and only make the following change: > > > > diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c > > index 65dbc1ec36..d82c39490c 100644 > > --- a/hw/i386/acpi-build.c > > +++ b/hw/i386/acpi-build.c > > @@ -38,6 +38,7 @@ > > #include "hw/nvram/fw_cfg.h" > > #include "hw/acpi/bios-linker-loader.h" > > #include "hw/isa/isa.h" > > +#include "hw/input/i8042.h" > > #include "hw/block/fdc.h" > > #include "hw/acpi/memory_hotplug.h" > > #include "sysemu/tpm.h" > > @@ -198,7 +199,7 @@ static void init_common_fadt_data(MachineState > > *ms, Object *o, > > * (the earliest acpi revision that supports this). > > */ > > > > - fadt.iapc_boot_arch = isa_check_device_existence("i8042") ? > > 0x0002 : 0x0000; > > + fadt.iapc_boot_arch = object_resolve_path_type("", TYPE_I8042, > > NULL) ? 0x0002 : 0x0000; > > > This might be incorrect if there are more than one device of that type. > You need to check for ambiguity as well.
exactly one is added by default, the ISA bus with or without -nodefaults: ~/workspace/qemu/build$ echo -e "info qtree\r\nquit\r\n" | ./qemu-system-x86_64 -monitor stdio 2>/dev/null | grep 8042 dev: i8042, id "" ~/workspace/qemu/build$ echo -e "info qtree\r\nquit\r\n" | ./qemu-system-x86_64 -nodefaults -monitor stdio 2>/dev/null | grep 8042 dev: i8042, id ""