On Fri, 5 Feb 2021 20:11:59 +0100 Pali Rohár <p...@kernel.org> wrote:
> musb udc code depends on usb gadget code provided by > CONFIG_USB_DEVICE and defined in drivers/usb/gadget/Makefile. But > this Makefile is not included into U-Boot build when > CONFIG_USB_GADGET is not set. As CONFIG_USB_DEVICE cannot be enabled > together with CONFIG_USB_GADGET it means that dependency for musb udc > code is not compiled during build. Fix it by including > drivers/usb/gadget dependency also when CONFIG_USB_DEVICE is set. > > This patch fixes compile errors: > > arm-linux-gnueabi-ld.bfd: drivers/usb/musb/built-in.o: in function > `musb_peri_ep0_rx': u-boot/drivers/usb/musb/musb_udc.c: undefined > reference to `ep0_recv_setup' arm-linux-gnueabi-ld.bfd: > drivers/usb/musb/built-in.o: in function `musb_peri_ep0_idle': > u-boot/drivers/usb/musb/musb_udc.c: undefined reference to > `ep0_recv_setup' arm-linux-gnueabi-ld.bfd: > drivers/usb/musb/built-in.o: in function > `musb_peri_ep0_zero_data_request': > u-boot/drivers/usb/musb/musb_udc.c: undefined reference to > `usbd_device_event_irq' arm-linux-gnueabi-ld.bfd: > drivers/usb/musb/built-in.o: in function `musb_peri_ep0_idle': > u-boot/drivers/usb/musb/musb_udc.c: undefined reference to > `ep0_recv_setup' arm-linux-gnueabi-ld.bfd: > drivers/usb/musb/built-in.o: in function `musb_peri_ep0_rx': > u-boot/drivers/usb/musb/musb_udc.c: undefined reference to > `usbd_rcv_complete' arm-linux-gnueabi-ld.bfd: > drivers/usb/musb/built-in.o: in function `musb_peri_rx_ep': > u-boot/drivers/usb/musb/musb_udc.c: undefined reference to > `usbd_rcv_complete' arm-linux-gnueabi-ld.bfd: > drivers/usb/musb/built-in.o: in function `udc_endpoint_write': > u-boot/drivers/usb/musb/musb_udc.c: undefined reference to > `usbd_tx_complete' arm-linux-gnueabi-ld.bfd: > drivers/usb/musb/built-in.o: in function `udc_irq': > u-boot/drivers/usb/musb/musb_udc.c: undefined reference to > `usbd_device_event_irq' arm-linux-gnueabi-ld.bfd: > u-boot/drivers/usb/musb/musb_udc.c: undefined reference to > `usbd_device_event_irq' arm-linux-gnueabi-ld.bfd: > u-boot/drivers/usb/musb/musb_udc.c: undefined reference to > `usbd_device_event_irq' arm-linux-gnueabi-ld.bfd: > u-boot/drivers/usb/musb/musb_udc.c: undefined reference to > `usbd_device_event_irq' arm-linux-gnueabi-ld.bfd: > u-boot/drivers/usb/musb/musb_udc.c: undefined reference to > `usbd_device_event_irq' arm-linux-gnueabi-ld.bfd: > drivers/usb/musb/built-in.o:u-boot/drivers/usb/musb/musb_udc.c: more > undefined references to `usbd_device_event_irq' follow > arm-linux-gnueabi-ld.bfd: drivers/usb/musb/built-in.o: in function > `udc_setup_ep': u-boot/drivers/usb/musb/musb_udc.c: undefined > reference to `usbd_alloc_urb' arm-linux-gnueabi-ld.bfd: > drivers/usb/musb/built-in.o: in function `udc_startup_events': > u-boot/drivers/usb/musb/musb_udc.c: undefined reference to > `usbd_device_event_irq' arm-linux-gnueabi-ld.bfd: > u-boot/drivers/usb/musb/musb_udc.c: undefined reference to > `usbd_device_event_irq' arm-linux-gnueabi-ld.bfd: > u-boot/drivers/usb/musb/musb_udc.c: undefined reference to > `usbd_device_event_irq' make: *** [Makefile:1762: u-boot] Error 1 > Reviewed-by: Lukasz Majewski <lu...@denx.de> > Signed-off-by: Pali Rohár <p...@kernel.org> > --- > Makefile | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/Makefile b/Makefile > index 23dd11f723..2173344497 100644 > --- a/Makefile > +++ b/Makefile > @@ -792,6 +792,7 @@ libs-y += drivers/usb/dwc3/ > libs-y += drivers/usb/common/ > libs-y += drivers/usb/emul/ > libs-y += drivers/usb/eth/ > +libs-$(CONFIG_USB_DEVICE) += drivers/usb/gadget/ > libs-$(CONFIG_USB_GADGET) += drivers/usb/gadget/ > libs-$(CONFIG_USB_GADGET) += drivers/usb/gadget/udc/ > libs-y += drivers/usb/host/ Best regards, Lukasz Majewski -- DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-59 Fax: (+49)-8142-66989-80 Email: lu...@denx.de
pgpG67Njn9efs.pgp
Description: OpenPGP digital signature