Instead of including the same list of devices for each target, let the host controllers select CONFIG_USB and make the devices default to present whenever USB is available. Done with the following script: while read i; do i=${i%=y}; i=${i#CONFIG_} sed -i -e'/^config '$i'$/!b' -en \ -e'a\' -e' default y\' -e' depends on USB' \ `grep -lw $i hw/*/Kconfig` done < default-configs/usb.mak followed by adding "select USB" on the host controllers. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Yang Zhong <yang.zhong@intel.com> Reviewed-by: Thomas Huth <thuth@redhat.com> Message-Id: <20190123065618.3520-33-yang.zhong@intel.com> Acked-by: Richard Henderson <richard.henderson@linaro.org> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
61 lines
1.9 KiB
Makefile
61 lines
1.9 KiB
Makefile
# usb subsystem core
|
|
common-obj-y += core.o combined-packet.o bus.o libhw.o
|
|
common-obj-$(CONFIG_USB) += desc.o desc-msos.o
|
|
|
|
# usb host adapters
|
|
common-obj-$(CONFIG_USB_UHCI) += hcd-uhci.o
|
|
common-obj-$(CONFIG_USB_OHCI) += hcd-ohci.o
|
|
common-obj-$(CONFIG_USB_EHCI) += hcd-ehci.o hcd-ehci-pci.o
|
|
common-obj-$(CONFIG_USB_EHCI_SYSBUS) += hcd-ehci.o hcd-ehci-sysbus.o
|
|
common-obj-$(CONFIG_USB_XHCI) += hcd-xhci.o
|
|
common-obj-$(CONFIG_USB_XHCI_NEC) += hcd-xhci-nec.o
|
|
common-obj-$(CONFIG_USB_MUSB) += hcd-musb.o
|
|
|
|
obj-$(CONFIG_TUSB6010) += tusb6010.o
|
|
obj-$(CONFIG_IMX) += chipidea.o
|
|
|
|
# emulated usb devices
|
|
common-obj-$(CONFIG_USB) += dev-hub.o
|
|
common-obj-$(CONFIG_USB) += dev-hid.o
|
|
common-obj-$(CONFIG_USB_TABLET_WACOM) += dev-wacom.o
|
|
common-obj-$(CONFIG_USB_STORAGE_BOT) += dev-storage.o
|
|
common-obj-$(CONFIG_USB_STORAGE_UAS) += dev-uas.o
|
|
common-obj-$(CONFIG_USB_AUDIO) += dev-audio.o
|
|
common-obj-$(CONFIG_USB_SERIAL) += dev-serial.o
|
|
common-obj-$(CONFIG_USB_NETWORK) += dev-network.o
|
|
common-obj-$(CONFIG_USB_BLUETOOTH) += dev-bluetooth.o
|
|
|
|
ifeq ($(CONFIG_USB_SMARTCARD),y)
|
|
common-obj-y += dev-smartcard-reader.o
|
|
common-obj-$(CONFIG_SMARTCARD) += smartcard.mo
|
|
smartcard.mo-objs := ccid-card-passthru.o ccid-card-emulated.o
|
|
smartcard.mo-cflags := $(SMARTCARD_CFLAGS)
|
|
smartcard.mo-libs := $(SMARTCARD_LIBS)
|
|
endif
|
|
|
|
ifeq ($(CONFIG_POSIX),y)
|
|
common-obj-$(CONFIG_USB_STORAGE_MTP) += dev-mtp.o
|
|
endif
|
|
|
|
# usb redirection
|
|
common-obj-$(CONFIG_USB_REDIR) += redirect.o quirks.o
|
|
redirect.o-cflags = $(USB_REDIR_CFLAGS)
|
|
redirect.o-libs = $(USB_REDIR_LIBS)
|
|
|
|
# usb pass-through
|
|
ifeq ($(CONFIG_USB_LIBUSB)$(CONFIG_USB),yy)
|
|
common-obj-y += host-libusb.o
|
|
else
|
|
common-obj-y += host-stub.o
|
|
endif
|
|
common-obj-$(CONFIG_ALL) += host-stub.o
|
|
|
|
host-libusb.o-cflags := $(LIBUSB_CFLAGS)
|
|
host-libusb.o-libs := $(LIBUSB_LIBS)
|
|
|
|
ifeq ($(CONFIG_USB_LIBUSB),y)
|
|
common-obj-$(CONFIG_XEN) += xen-usb.o
|
|
xen-usb.o-cflags := $(LIBUSB_CFLAGS)
|
|
xen-usb.o-libs := $(LIBUSB_LIBS)
|
|
endif
|