usb: dwc2: fix USB core dependencies
It is currently possible to configure the dwc2 driver as built-in when host mode or dual-role is enabled, but the USB core is a loadable module. This leads to a link failure: drivers/built-in.o: In function `_dwc2_hcd_start': :(.text+0x84538): undefined reference to `usb_hcd_resume_root_hub' drivers/built-in.o: In function `_dwc2_hcd_urb_dequeue': :(.text+0x84aa0): undefined reference to `usb_hcd_check_unlink_urb' :(.text+0x84e4c): undefined reference to `usb_hcd_unlink_urb_from_ep' :(.text+0x84e74): undefined reference to `usb_hcd_giveback_urb' drivers/built-in.o: In function `dwc2_assign_and_init_hc': :(.text+0x86b98): undefined reference to `usb_hcd_unmap_urb_for_dma' drivers/built-in.o: In function `_dwc2_hcd_urb_enqueue': :(.text+0x8717c): undefined reference to `usb_hcd_link_urb_to_ep' :(.text+0x872f4): undefined reference to `usb_hcd_unlink_urb_from_ep' drivers/built-in.o: In function `dwc2_host_complete': :(.text+0x875d4): undefined reference to `usb_hcd_unlink_urb_from_ep' :(.text+0x87600): undefined reference to `usb_hcd_giveback_urb' drivers/built-in.o: In function `dwc2_hcd_init': :(.text+0x87ba8): undefined reference to `usb_disabled' :(.text+0x87d38): undefined reference to `usb_create_hcd' :(.text+0x88094): undefined reference to `usb_add_hcd' :(.text+0x880dc): undefined reference to `usb_put_hcd' drivers/built-in.o: In function `dwc2_hcd_remove': :(.text+0x8821c): undefined reference to `usb_remove_hcd' :(.text+0x8823c): undefined reference to `usb_put_hcd' drivers/built-in.o: In function `dwc2_hc_handle_tt_clear.isra.10': :(.text+0x88e2c): undefined reference to `usb_hub_clear_tt_buffer' drivers/built-in.o: In function `dwc2_hcd_qtd_add': :(.text+0x8b554): undefined reference to `usb_calc_bus_time' To fix the problem, this patch changes the dependencies so that dwc2 host mode can only be enabled if either the USB core is built-in or both USB and dwc2 are modules. Acked-by: John Youn <johnyoun@synopsys.com> Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Felipe Balbi <balbi@ti.com>
This commit is contained in:
parent
ffb9da6575
commit
b7974de821
|
@ -23,7 +23,7 @@ choice
|
||||||
|
|
||||||
config USB_DWC2_HOST
|
config USB_DWC2_HOST
|
||||||
bool "Host only mode"
|
bool "Host only mode"
|
||||||
depends on USB
|
depends on USB=y || (USB_DWC2=m && USB)
|
||||||
help
|
help
|
||||||
The Designware USB2.0 high-speed host controller
|
The Designware USB2.0 high-speed host controller
|
||||||
integrated into many SoCs. Select this option if you want the
|
integrated into many SoCs. Select this option if you want the
|
||||||
|
@ -42,7 +42,7 @@ config USB_DWC2_PERIPHERAL
|
||||||
|
|
||||||
config USB_DWC2_DUAL_ROLE
|
config USB_DWC2_DUAL_ROLE
|
||||||
bool "Dual Role mode"
|
bool "Dual Role mode"
|
||||||
depends on (USB=y || USB=USB_DWC2) && (USB_GADGET=y || USB_GADGET=USB_DWC2)
|
depends on (USB=y && USB_GADGET=y) || (USB_DWC2=m && USB && USB_GADGET)
|
||||||
help
|
help
|
||||||
Select this option if you want the driver to work in a dual-role
|
Select this option if you want the driver to work in a dual-role
|
||||||
mode. In this mode both host and gadget features are enabled, and
|
mode. In this mode both host and gadget features are enabled, and
|
||||||
|
|
Loading…
Reference in New Issue