| From 3f295c54c0b88640a6535c79b358a968725622c0 Mon Sep 17 00:00:00 2001 |
| From: Tony Lindgren <tony@atomide.com> |
| Date: Mon, 1 Dec 2014 11:10:15 -0800 |
| Subject: usb: musb: Fix randconfig build issues for Kconfig options |
| |
| [ Upstream commit c0442479652b99b62dd1ffccb34231caff25751c ] |
| |
| Commit 82c02f58ba3a ("usb: musb: Allow multiple glue layers to be |
| built in") enabled selecting multiple glue layers, which in turn |
| exposed things more for randconfig builds. If NOP_USB_XCEIV is |
| built-in and TUSB6010 is a loadable module, we will get: |
| |
| drivers/built-in.o: In function `tusb_remove': |
| tusb6010.c:(.text+0x16a817): undefined reference to `usb_phy_generic_unregister' |
| drivers/built-in.o: In function `tusb_probe': |
| tusb6010.c:(.text+0x16b24e): undefined reference to `usb_phy_generic_register' |
| make: *** [vmlinux] Error 1 |
| |
| Let's fix this the same way as commit 70c1ff4b3c86 ("usb: musb: |
| tusb-dma can't be built-in if tusb is not"). |
| |
| And while at it, let's not allow selecting the glue layers except |
| on platforms really using them unless COMPILE_TEST is specified: |
| |
| - TUSB6010 is in practise only used on omaps |
| |
| - DSPS is only used on TI platforms |
| |
| - UX500 is only used on STE platforms |
| |
| Cc: Linus Walleij <linus.walleij@linaro.org> |
| Reported-by: Jim Davis <jim.epost@gmail.com> |
| Signed-off-by: Tony Lindgren <tony@atomide.com> |
| Signed-off-by: Felipe Balbi <balbi@ti.com> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/usb/musb/Kconfig | 4 ++++ |
| 1 file changed, 4 insertions(+) |
| |
| diff --git a/drivers/usb/musb/Kconfig b/drivers/usb/musb/Kconfig |
| index dbc56eb5eee4..5ab24cd38f37 100644 |
| --- a/drivers/usb/musb/Kconfig |
| +++ b/drivers/usb/musb/Kconfig |
| @@ -73,6 +73,8 @@ config USB_MUSB_DA8XX |
| |
| config USB_MUSB_TUSB6010 |
| tristate "TUSB6010" |
| + depends on ARCH_OMAP2PLUS || COMPILE_TEST |
| + depends on NOP_USB_XCEIV = USB_MUSB_HDRC # both built-in or both modules |
| |
| config USB_MUSB_OMAP2PLUS |
| tristate "OMAP2430 and onwards" |
| @@ -86,6 +88,7 @@ config USB_MUSB_AM35X |
| config USB_MUSB_DSPS |
| tristate "TI DSPS platforms" |
| select USB_MUSB_AM335X_CHILD |
| + depends on ARCH_OMAP2PLUS || COMPILE_TEST |
| depends on OF_IRQ |
| |
| config USB_MUSB_BLACKFIN |
| @@ -94,6 +97,7 @@ config USB_MUSB_BLACKFIN |
| |
| config USB_MUSB_UX500 |
| tristate "Ux500 platforms" |
| + depends on ARCH_U8500 || COMPILE_TEST |
| |
| config USB_MUSB_JZ4740 |
| tristate "JZ4740" |
| -- |
| 2.17.1 |
| |