xref: /openbmc/linux/drivers/usb/dwc3/Makefile (revision 6f4eaea2)
1# SPDX-License-Identifier: GPL-2.0
2# define_trace.h needs to know how to find our header
3CFLAGS_trace.o				:= -I$(src)
4
5obj-$(CONFIG_USB_DWC3)			+= dwc3.o
6
7dwc3-y					:= core.o
8
9ifneq ($(CONFIG_TRACING),)
10	dwc3-y				+= trace.o
11endif
12
13ifneq ($(filter y,$(CONFIG_USB_DWC3_HOST) $(CONFIG_USB_DWC3_DUAL_ROLE)),)
14	dwc3-y				+= host.o
15endif
16
17ifneq ($(filter y,$(CONFIG_USB_DWC3_GADGET) $(CONFIG_USB_DWC3_DUAL_ROLE)),)
18	dwc3-y				+= gadget.o ep0.o
19endif
20
21ifneq ($(CONFIG_USB_DWC3_DUAL_ROLE),)
22	dwc3-y				+= drd.o
23endif
24
25ifneq ($(CONFIG_USB_DWC3_ULPI),)
26	dwc3-y				+= ulpi.o
27endif
28
29ifneq ($(CONFIG_DEBUG_FS),)
30	dwc3-y				+= debugfs.o
31endif
32
33##
34# Platform-specific glue layers go here
35#
36# NOTICE: Make sure your glue layer doesn't depend on anything
37# which is arch-specific and that it compiles on all situations.
38#
39# We want to keep this requirement in order to be able to compile
40# the entire driver (with all its glue layers) on several architectures
41# and make sure it compiles fine. This will also help with allmodconfig
42# and allyesconfig builds.
43##
44
45obj-$(CONFIG_USB_DWC3_OMAP)		+= dwc3-omap.o
46obj-$(CONFIG_USB_DWC3_EXYNOS)		+= dwc3-exynos.o
47obj-$(CONFIG_USB_DWC3_PCI)		+= dwc3-pci.o
48obj-$(CONFIG_USB_DWC3_HAPS)		+= dwc3-haps.o
49obj-$(CONFIG_USB_DWC3_KEYSTONE)		+= dwc3-keystone.o
50obj-$(CONFIG_USB_DWC3_MESON_G12A)	+= dwc3-meson-g12a.o
51obj-$(CONFIG_USB_DWC3_OF_SIMPLE)	+= dwc3-of-simple.o
52obj-$(CONFIG_USB_DWC3_ST)		+= dwc3-st.o
53obj-$(CONFIG_USB_DWC3_QCOM)		+= dwc3-qcom.o
54obj-$(CONFIG_USB_DWC3_IMX8MP)		+= dwc3-imx8mp.o
55