diff mbox series

[v3] hw/mips: Improve the default USB settings in the loongson3-virt machine

Message ID 20230714104903.284845-1-thuth@redhat.com
State New
Headers show
Series [v3] hw/mips: Improve the default USB settings in the loongson3-virt machine | expand

Commit Message

Thomas Huth July 14, 2023, 10:49 a.m. UTC
It's possible to compile QEMU without the USB devices (e.g. when using
"--without-default-devices" as option for the "configure" script).
To be still able to run the loongson3-virt machine in default mode with
such a QEMU binary, we have to check here for the availability of the
OHCI controller first before instantiating the USB devices.

Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 v3: Back to runtime detection, but more simple this time compared to v1
     (checking for OHCI should be enough, since this implies CONFIG_USB
      which is the switch that usb-kbd and usb-tablet are depending on)

 hw/mips/loongson3_virt.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Philippe Mathieu-Daudé July 14, 2023, 2:36 p.m. UTC | #1
On 14/7/23 12:49, Thomas Huth wrote:
> It's possible to compile QEMU without the USB devices (e.g. when using
> "--without-default-devices" as option for the "configure" script).
> To be still able to run the loongson3-virt machine in default mode with
> such a QEMU binary, we have to check here for the availability of the
> OHCI controller first before instantiating the USB devices.
> 
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
>   v3: Back to runtime detection, but more simple this time compared to v1
>       (checking for OHCI should be enough, since this implies CONFIG_USB
>        which is the switch that usb-kbd and usb-tablet are depending on)
> 
>   hw/mips/loongson3_virt.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>

And queued to mips-fixes, thanks!
diff mbox series

Patch

diff --git a/hw/mips/loongson3_virt.c b/hw/mips/loongson3_virt.c
index 4018b8c1d3..3ad0a223df 100644
--- a/hw/mips/loongson3_virt.c
+++ b/hw/mips/loongson3_virt.c
@@ -447,7 +447,7 @@  static inline void loongson3_virt_devices_init(MachineState *machine,
 
     pci_vga_init(pci_bus);
 
-    if (defaults_enabled()) {
+    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");