Re: [PATCH] usb: cdnsp: fixes undefined reference to cdns_remove

From: Geert Uytterhoeven
Date: Tue Jan 12 2021 - 03:16:26 EST


Hi Pawel,

On Tue, Jan 12, 2021 at 8:17 AM Pawel Laszczak <pawell@xxxxxxxxxxx> wrote:
> Patch fixes the following errors:
> ld: drivers/usb/cdns3/cdnsp-pci.o: in function `cdnsp_pci_remove':
> cdnsp-pci.c:(.text+0x80): undefined reference to `cdns_remove'
> ld: drivers/usb/cdns3/cdnsp-pci.o: in function `cdnsp_pci_probe':
> cdnsp-pci.c:(.text+0x34c): undefined reference to `cdns_init'
>
> Issue occurs for USB/CDNS3/CDNSP kernel configuration:
> CONFIG_USB=m
> CONFIG_USB_CDNS_SUPPORT=y
> CONFIG_USB_CDNS3=m
> CONFIG_USB_CDNS3_PCI_WRAP=m
> CONFIG_USB_CDNSP_PCI=y
>
> Reported-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
> Signed-off-by: Pawel Laszczak <pawell@xxxxxxxxxxx>

Thanks for your patch!

noreply@xxxxxxxxxxxxxx reports for m68k-allmodconfig:

drivers/usb/cdns3/cdnsp-pci.c:92:6: error: implicit declaration of
function 'pci_is_enabled'; did you mean 'pci_acs_enabled'?
[-Werror=implicit-function-declaration]
drivers/usb/cdns3/cdnsp-pci.c:166:6: error: implicit declaration of
function 'pci_dev_run_wake'; did you mean 'pci_enable_wake'?
[-Werror=implicit-function-declaration]
drivers/usb/cdns3/cdnsp-pci.c:248:1: error: type defaults to 'int' in
declaration of 'module_pci_driver' [-Werror=implicit-int]

> --- a/drivers/usb/cdns3/Makefile
> +++ b/drivers/usb/cdns3/Makefile
> @@ -26,7 +26,11 @@ obj-$(CONFIG_USB_CDNS3_TI) += cdns3-ti.o
> obj-$(CONFIG_USB_CDNS3_IMX) += cdns3-imx.o
>
> cdnsp-udc-pci-y := cdnsp-pci.o
> +ifeq ($(CONFIG_USB),m)
> +obj-m += cdnsp-udc-pci.o

This includes cdnsp-udc-pci.o even if CONFIG_USB_CDNSP_PCI=n,
causing the aforementioned build failure.

> +else
> obj-$(CONFIG_USB_CDNSP_PCI) += cdnsp-udc-pci.o
> +endif
> cdnsp-udc-pci-$(CONFIG_USB_CDNSP_GADGET) += cdnsp-ring.o cdnsp-gadget.o \
> cdnsp-mem.o cdnsp-ep0.o
>

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds