Hi,
Am 24.07.2013 17:04, schrieb Gerd Hoffmann:
/me suggests to check out qmp_qom_get() in qmp.c. Some qom aequivalent for qdev_find_recursive would be handy, dunno whenever such a thing exists already, Andreas?
Not sure what's needed here? object_resolve_path() and object_foreach_child() come to mind...
object_resolve_path should do to (a) figure whenever we are i440fx or q35 and (b) get the pcihost device (then read enable_s3 etc properties).
For pvpanic (and maybe others) it might be handy to have "find me the device of type TYPE_ISA_PVPANIC_DEVICE, anywhere in the tree" functionality, so the same code works no matter where the isa bridge happens to live. Or "find me all pci bridges in the system".
I think Paolo used object_resolve_path_type("", TYPE_...) for that somewhere in audio code.
Is object_foreach_child recursive? Then it might do the job ...
No, recursion would need to be implemented in the callback - my recent recursive QOM realization series had an example of a deep search for devices.
Regards, Andreas