mirror of
https://github.com/torvalds/linux.git
synced 2024-12-21 02:21:36 +00:00
72246da40f
The DesignWare USB3 is a highly configurable IP Core which can be instantiated as Dual-Role Device (DRD), Peripheral Only and Host Only (XHCI) configurations. Several other parameters can be configured like amount of FIFO space, amount of TX and RX endpoints, amount of Host Interrupters, etc. The current driver has been validated with a virtual model of version 1.73a of that core and with an FPGA burned with version 1.83a of the DRD core. We have support for PCIe bus, which is used on FPGA prototyping, and for the OMAP5, more adaptation (or glue) layers can be easily added and the driver is half prepared to handle any possible configuration the HW engineer has chosen considering we have the information on one of the GHWPARAMS registers to do runtime checking of certain features. More runtime checks can, and should, be added in order to make this driver even more flexible with regards to number of endpoints, FIFO sizes, transfer types, etc. While this supports only the device side, for now, we will add support for Host side (xHCI - see the updated series Sebastian has sent [1]) and OTG after we have it all stabilized. [1] http://marc.info/?l=linux-usb&m=131341992020339&w=2 Signed-off-by: Felipe Balbi <balbi@ti.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
37 lines
938 B
Makefile
37 lines
938 B
Makefile
ccflags-$(CONFIG_USB_DWC3_DEBUG) := -DDEBUG
|
|
ccflags-$(CONFIG_USB_DWC3_VERBOSE) += -DVERBOSE_DEBUG
|
|
|
|
obj-$(CONFIG_USB_DWC3) += dwc3.o
|
|
|
|
dwc3-y := core.o
|
|
|
|
ifneq ($(CONFIG_USB_GADGET_DWC3),)
|
|
dwc3-y += gadget.o ep0.o
|
|
endif
|
|
|
|
ifneq ($(CONFIG_DEBUG_FS),)
|
|
dwc3-y += debugfs.o
|
|
endif
|
|
|
|
##
|
|
# Platform-specific glue layers go here
|
|
#
|
|
# NOTICE: Make sure your glue layer doesn't depend on anything
|
|
# which is arch-specific and that it compiles on all situations.
|
|
#
|
|
# We want to keep this requirement in order to be able to compile
|
|
# the entire driver (with all its glue layers) on several architectures
|
|
# and make sure it compiles fine. This will also help with allmodconfig
|
|
# and allyesconfig builds.
|
|
#
|
|
# The only exception is the PCI glue layer, but that's only because
|
|
# PCI doesn't provide nops if CONFIG_PCI isn't enabled.
|
|
##
|
|
|
|
obj-$(CONFIG_USB_DWC3) += dwc3-omap.o
|
|
|
|
ifneq ($(CONFIG_PCI),)
|
|
obj-$(CONFIG_USB_DWC3) += dwc3-pci.o
|
|
endif
|
|
|