source "drivers/usb/host/Kconfig"
 
-source "drivers/usb/musb/Kconfig"
-
 source "drivers/usb/renesas_usbhs/Kconfig"
 
 source "drivers/usb/class/Kconfig"
 
 endif
 
+source "drivers/usb/musb/Kconfig"
+
 source "drivers/usb/dwc3/Kconfig"
 
 source "drivers/usb/chipidea/Kconfig"
 
 # (M)HDRC = (Multipoint) Highspeed Dual-Role Controller
 config USB_MUSB_HDRC
        tristate 'Inventra Highspeed Dual Role Controller (TI, ADI, ...)'
-       depends on USB_GADGET
+       depends on (USB || USB_GADGET)
        help
          Say Y here if your system has a dual role high speed USB
          controller based on the Mentor Graphics silicon IP.  Then
 
 config USB_MUSB_HOST
        bool "Host only mode"
-       depends on USB
+       depends on USB=y || USB=USB_MUSB_HDRC
        help
          Select this when you want to use MUSB in host mode only,
          thereby the gadget feature will be regressed.
 
 config USB_MUSB_GADGET
        bool "Gadget only mode"
-       depends on USB_GADGET
+       depends on USB_GADGET=y || USB_GADGET=USB_MUSB_HDRC
        help
          Select this when you want to use MUSB in gadget mode only,
          thereby the host feature will be regressed.
 
 config USB_MUSB_DUAL_ROLE
        bool "Dual Role mode"
-       depends on (USB && USB_GADGET)
+       depends on ((USB=y || USB=USB_MUSB_HDRC) && (USB_GADGET=y || USB_GADGET=USB_MUSB_HDRC))
        help
          This is the default mode of working of MUSB controller where
          both host and gadget features are enabled.