mirror of https://gitee.com/openkylin/qemu.git
hw/usb: Do not build USB subsystem if not required
If the Kconfig 'USB' value is not selected, it is pointless to build the USB core components. Add a stub for the HMP commands and usbdevice_create() which is called by usb_device_add in softmmu/vl.c. Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20210424224110.3442424-3-f4bug@amsat.org> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
This commit is contained in:
parent
1081607bfa
commit
9c3c834bdd
|
@ -1804,6 +1804,7 @@ USB
|
|||
M: Gerd Hoffmann <kraxel@redhat.com>
|
||||
S: Maintained
|
||||
F: hw/usb/*
|
||||
F: stubs/usb-dev-stub.c
|
||||
F: tests/qtest/usb-*-test.c
|
||||
F: docs/usb2.txt
|
||||
F: docs/usb-storage.txt
|
||||
|
|
|
@ -1,17 +1,14 @@
|
|||
hw_usb_modules = {}
|
||||
|
||||
# usb subsystem core
|
||||
softmmu_ss.add(files(
|
||||
softmmu_ss.add(when: 'CONFIG_USB', if_true: files(
|
||||
'bus.c',
|
||||
'combined-packet.c',
|
||||
'core.c',
|
||||
'pcap.c',
|
||||
'libhw.c'
|
||||
))
|
||||
|
||||
softmmu_ss.add(when: 'CONFIG_USB', if_true: files(
|
||||
'desc.c',
|
||||
'desc-msos.c',
|
||||
'libhw.c',
|
||||
'pcap.c',
|
||||
))
|
||||
|
||||
# usb host adapters
|
||||
|
|
|
@ -50,6 +50,7 @@ if have_block
|
|||
endif
|
||||
if have_system
|
||||
stub_ss.add(files('semihost.c'))
|
||||
stub_ss.add(files('usb-dev-stub.c'))
|
||||
stub_ss.add(files('xen-hw-stub.c'))
|
||||
else
|
||||
stub_ss.add(files('qdev.c'))
|
||||
|
|
|
@ -0,0 +1,25 @@
|
|||
/*
|
||||
* QEMU USB device emulation stubs
|
||||
*
|
||||
* Copyright (C) 2021 Philippe Mathieu-Daudé <f4bug@amsat.org>
|
||||
*
|
||||
* SPDX-License-Identifier: GPL-2.0-or-later
|
||||
*/
|
||||
|
||||
#include "qemu/osdep.h"
|
||||
#include "qemu/error-report.h"
|
||||
#include "sysemu/sysemu.h"
|
||||
#include "monitor/monitor.h"
|
||||
#include "hw/usb.h"
|
||||
|
||||
USBDevice *usbdevice_create(const char *driver)
|
||||
{
|
||||
error_report("Support for USB devices not built-in");
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
void hmp_info_usb(Monitor *mon, const QDict *qdict)
|
||||
{
|
||||
monitor_printf(mon, "Support for USB devices not built-in\n");
|
||||
}
|
Loading…
Reference in New Issue