summaryrefslogtreecommitdiff
path: root/drivers/usb/fotg210/Makefile
diff options
context:
space:
mode:
authorLinus Walleij <linus.walleij@linaro.org>2022-10-23 17:47:07 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2022-11-09 14:38:09 +0300
commitaeffd2c3b09f4f50438ec8960095129798bcb33a (patch)
treeadf299cd0a0022ee4ba62d7e0106299e1bdbd8e7 /drivers/usb/fotg210/Makefile
parent1dd33a9f1b95ab59cd60f14a7a83fed14697867b (diff)
downloadlinux-aeffd2c3b09f4f50438ec8960095129798bcb33a.tar.xz
usb: fotg210: Compile into one module
It is since ages perfectly possible to compile both of these modules into the same kernel, which makes no sense since it is one piece of hardware. Compile one module named "fotg210.ko" for both HCD and UDC drivers by collecting the init calls into a fotg210-core.c file and start to centralize things handling one and the same piece of hardware. Stub out the initcalls if one or the other part of the driver was not selected. Tested by compiling one or the other or both of the drivers into the kernel and as modules. Cc: Fabian Vogt <fabian@ritter-vogt.de> Cc: Yuan-Hsin Chen <yhchen@faraday-tech.com> Cc: Felipe Balbi <balbi@kernel.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Link: https://lore.kernel.org/r/20221023144708.3596563-2-linus.walleij@linaro.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb/fotg210/Makefile')
-rw-r--r--drivers/usb/fotg210/Makefile11
1 files changed, 9 insertions, 2 deletions
diff --git a/drivers/usb/fotg210/Makefile b/drivers/usb/fotg210/Makefile
index f4a26ca0e563..5aecff21f24b 100644
--- a/drivers/usb/fotg210/Makefile
+++ b/drivers/usb/fotg210/Makefile
@@ -1,3 +1,10 @@
# SPDX-License-Identifier: GPL-2.0
-obj-$(CONFIG_USB_FOTG210_HCD) += fotg210-hcd.o
-obj-$(CONFIG_USB_FOTG210_UDC) += fotg210-udc.o
+
+# This setup links the different object files into one single
+# module so we don't have to EXPORT() a lot of internal symbols
+# or create unnecessary submodules.
+fotg210-objs-y += fotg210-core.o
+fotg210-objs-$(CONFIG_USB_FOTG210_HCD) += fotg210-hcd.o
+fotg210-objs-$(CONFIG_USB_FOTG210_UDC) += fotg210-udc.o
+fotg210-objs := $(fotg210-objs-y)
+obj-$(CONFIG_USB_FOTG210) += fotg210.o