# SPDX-License-Identifier: GPL-2.0
#
# Makefile for the rest of the USB drivers
# (the ones that don't fit into any other categories)
#
obj-$(CONFIG_USB_ADUTUX)		+= adutux.o
obj-$(CONFIG_USB_APPLEDISPLAY)		+= appledisplay.o
obj-$(CONFIG_USB_CYPRESS_CY7C63)	+= cypress_cy7c63.o
obj-$(CONFIG_USB_CYTHERM)		+= cytherm.o
obj-$(CONFIG_USB_EMI26)			+= emi26.o
obj-$(CONFIG_USB_EMI62)			+= emi62.o
obj-$(CONFIG_USB_EZUSB_FX2)		+= ezusb.o
obj-$(CONFIG_USB_FTDI_ELAN)		+= ftdi-elan.o
obj-$(CONFIG_APPLE_MFI_FASTCHARGE)	+= apple-mfi-fastcharge.o
obj-$(CONFIG_USB_IDMOUSE)		+= idmouse.o
obj-$(CONFIG_USB_IOWARRIOR)		+= iowarrior.o
obj-$(CONFIG_USB_ISIGHTFW)		+= isight_firmware.o
obj-$(CONFIG_USB_LCD)			+= usblcd.o
obj-$(CONFIG_USB_LD)			+= ldusb.o
obj-$(CONFIG_USB_LEGOTOWER)		+= legousbtower.o
obj-$(CONFIG_USB_TEST)			+= usbtest.o
obj-$(CONFIG_USB_EHSET_TEST_FIXTURE)    += ehset.o
obj-$(CONFIG_USB_TRANCEVIBRATOR)	+= trancevibrator.o
obj-$(CONFIG_USB_USS720)		+= uss720.o
obj-$(CONFIG_USB_SEVSEG)		+= usbsevseg.o
obj-$(CONFIG_USB_YUREX)			+= yurex.o
obj-$(CONFIG_USB_HUB_USB251XB)		+= usb251xb.o
obj-$(CONFIG_USB_HSIC_USB3503)		+= usb3503.o
obj-$(CONFIG_USB_HSIC_USB4604)		+= usb4604.o
obj-$(CONFIG_USB_CHAOSKEY)		+= chaoskey.o

obj-$(CONFIG_USB_SISUSBVGA)		+= sisusbvga/
obj-$(CONFIG_USB_LINK_LAYER_TEST)	+= lvstest.o
obj-$(CONFIG_BRCM_USB_PINMAP)		+= brcmstb-usb-pinmap.o
