mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-20 22:23:27 +00:00
40 lines
1.5 KiB
Diff
40 lines
1.5 KiB
Diff
|
From d8eed400495029ba551704ff0fae1dad87332291 Mon Sep 17 00:00:00 2001
|
||
|
From: Arnd Bergmann <arnd@arndb.de>
|
||
|
Date: Thu, 15 Dec 2022 17:57:20 +0100
|
||
|
Subject: [PATCH 14/29] usb: fotg210: fix OTG-only build
|
||
|
|
||
|
The fotg210 module combines the HCD and OTG drivers, which then
|
||
|
fails to build when only the USB gadget support is enabled
|
||
|
in the kernel but host support is not:
|
||
|
|
||
|
aarch64-linux-ld: drivers/usb/fotg210/fotg210-core.o: in function `fotg210_init':
|
||
|
fotg210-core.c:(.init.text+0xc): undefined reference to `usb_disabled'
|
||
|
|
||
|
Move the check for usb_disabled() after the check for the HCD module,
|
||
|
and let the OTG driver still be probed in this configuration.
|
||
|
|
||
|
A nicer approach might be to have the common portion built as a
|
||
|
library module, with the two platform other files registering
|
||
|
their own platform_driver instances separately.
|
||
|
|
||
|
Fixes: ddacd6ef44ca ("usb: fotg210: Fix Kconfig for USB host modules")
|
||
|
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
|
||
|
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
|
||
|
Link: https://lore.kernel.org/r/20221215165728.2062984-1-arnd@kernel.org
|
||
|
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||
|
---
|
||
|
--- a/drivers/usb/fotg210/fotg210-core.c
|
||
|
+++ b/drivers/usb/fotg210/fotg210-core.c
|
||
|
@@ -144,10 +144,7 @@ static struct platform_driver fotg210_dr
|
||
|
|
||
|
static int __init fotg210_init(void)
|
||
|
{
|
||
|
- if (usb_disabled())
|
||
|
- return -ENODEV;
|
||
|
-
|
||
|
- if (IS_ENABLED(CONFIG_USB_FOTG210_HCD))
|
||
|
+ if (IS_ENABLED(CONFIG_USB_FOTG210_HCD) && !usb_disabled())
|
||
|
fotg210_hcd_init();
|
||
|
return platform_driver_register(&fotg210_driver);
|
||
|
}
|