hw/ppc/pseries: do not require CONFIG_USB

With --without-default-devices it is 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 on the machine.

Suggested-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-ID: <20240223124406.234509-8-pbonzini@redhat.com>
[PMD: Fixed style]
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
This commit is contained in:
Paolo Bonzini 2024-02-23 13:44:03 +01:00 committed by Philippe Mathieu-Daudé
parent 2dd2f2e0e2
commit ae1011d430
2 changed files with 4 additions and 1 deletions

View File

@ -1,5 +1,6 @@
config PSERIES
bool
imply USB_OHCI_PCI
imply PCI_DEVICES
imply TEST_DEVICES
imply VIRTIO_VGA

View File

@ -3024,8 +3024,10 @@ static void spapr_machine_init(MachineState *machine)
}
if (has_vga) {
USBBus *usb_bus = usb_bus_find(-1);
USBBus *usb_bus;
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-mouse");
}