Paolo Bonzini <[email protected]> writes:
> Once the Kconfig for hw/mips is cleaned up, it will be possible to build a
> binary that does not include any USB host controller and therefore that
> does not include the code guarded by CONFIG_USB. While the simpler
> creation functions such as usb_create_simple can be inlined, this is not
> true of usb_bus_find(). Remove it, replacing it with a search of the
> single USB bus created by loongson3_virt_devices_init().
>
> Signed-off-by: Paolo Bonzini <[email protected]>
> ---
> hw/mips/loongson3_virt.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/hw/mips/loongson3_virt.c b/hw/mips/loongson3_virt.c
> index caedde2df00..b2a8b22b4ea 100644
> --- a/hw/mips/loongson3_virt.c
> +++ b/hw/mips/loongson3_virt.c
> @@ -447,8 +447,9 @@ static inline void
> loongson3_virt_devices_init(MachineState *machine,
>
> if (defaults_enabled() && object_class_by_name("pci-ohci")) {
> pci_create_simple(pci_bus, -1, "pci-ohci");
> - usb_create_simple(usb_bus_find(-1), "usb-kbd");
> - usb_create_simple(usb_bus_find(-1), "usb-tablet");
> + Object *usb_bus = object_resolve_type_unambiguous(TYPE_USB_BUS,
> &error_abort);
> + usb_create_simple(USB_BUS(usb_bus), "usb-kbd");
> + usb_create_simple(USB_BUS(usb_bus), "usb-tablet");
In the previous patches, you cast just once, like this:
USBBus *usb_bus =
USB_BUS(object_resolve_type_unambiguous(TYPE_USB_BUS, &error_abort));
usb_create_simple(usb_bus, "usb-kbd");
usb_create_simple(usb_bus, "usb-tablet");
Could you do that here, too?
Same for the next few patches.
> }
>
> pci_init_nic_devices(pci_bus, mc->default_nic);