If NO_DMA=y: drivers/built-in.o: In function `s3c_hsotg_map_dma': s3c-hsotg.c:(.text+0x375b2c): undefined reference to `usb_gadget_map_request' drivers/built-in.o: In function `s3c_hsotg_unmap_dma': s3c-hsotg.c:(.text+0x376a32): undefined reference to `usb_gadget_unmap_request' make[3]: *** [vmlinux] Error 1 Note that all callers of s3c_hsotg_map_dma()/s3c_hsotg_unmap_dma() are protected by a call into the using_dma() checking function: static inline bool using_dma(struct s3c_hsotg *hsotg) { return false; /* support is not complete */ } but not all versions of gcc manage to optimize the check away, causing a link error. Signed-off-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx> --- Perhaps the DMA code should be removed completely, as its unused, or be protected by #ifdef CONFIG_HAS_DMA instead? drivers/usb/gadget/Kconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/usb/gadget/Kconfig b/drivers/usb/gadget/Kconfig index 3557c7e5040d..0e9dead51a27 100644 --- a/drivers/usb/gadget/Kconfig +++ b/drivers/usb/gadget/Kconfig @@ -302,6 +302,7 @@ config USB_PXA27X config USB_S3C_HSOTG tristate "Designware/S3C HS/OtG USB Device controller" + depends on HAS_DMA help The Designware USB2.0 high-speed gadget controller integrated into many SoCs. -- 1.7.9.5 -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html