162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0 262306a36Sopenharmony_ci# 362306a36Sopenharmony_ci# For MTK USB3.0 IP 462306a36Sopenharmony_ci 562306a36Sopenharmony_ciconfig USB_MTU3 662306a36Sopenharmony_ci tristate "MediaTek USB3 Dual Role controller" 762306a36Sopenharmony_ci depends on USB || USB_GADGET 862306a36Sopenharmony_ci depends on ARCH_MEDIATEK || COMPILE_TEST 962306a36Sopenharmony_ci depends on EXTCON || !EXTCON 1062306a36Sopenharmony_ci select USB_XHCI_MTK if USB_SUPPORT && USB_XHCI_HCD 1162306a36Sopenharmony_ci help 1262306a36Sopenharmony_ci Say Y or M here if your system runs on MediaTek SoCs with 1362306a36Sopenharmony_ci Dual Role SuperSpeed USB controller. You can select usb 1462306a36Sopenharmony_ci mode as peripheral role or host role, or both. 1562306a36Sopenharmony_ci 1662306a36Sopenharmony_ci If you don't know what this is, please say N. 1762306a36Sopenharmony_ci 1862306a36Sopenharmony_ci Choose M here to compile this driver as a module, and it 1962306a36Sopenharmony_ci will be called mtu3.ko. 2062306a36Sopenharmony_ci 2162306a36Sopenharmony_ci 2262306a36Sopenharmony_ciif USB_MTU3 2362306a36Sopenharmony_cichoice 2462306a36Sopenharmony_ci bool "MTU3 Mode Selection" 2562306a36Sopenharmony_ci default USB_MTU3_DUAL_ROLE if (USB && USB_GADGET) 2662306a36Sopenharmony_ci default USB_MTU3_HOST if (USB && !USB_GADGET) 2762306a36Sopenharmony_ci default USB_MTU3_GADGET if (!USB && USB_GADGET) 2862306a36Sopenharmony_ci 2962306a36Sopenharmony_ciconfig USB_MTU3_HOST 3062306a36Sopenharmony_ci bool "Host only mode" 3162306a36Sopenharmony_ci depends on USB=y || USB=USB_MTU3 3262306a36Sopenharmony_ci help 3362306a36Sopenharmony_ci Select this when you want to use MTU3 in host mode only, 3462306a36Sopenharmony_ci thereby the gadget feature will be regressed. 3562306a36Sopenharmony_ci 3662306a36Sopenharmony_ciconfig USB_MTU3_GADGET 3762306a36Sopenharmony_ci bool "Gadget only mode" 3862306a36Sopenharmony_ci depends on USB_GADGET=y || USB_GADGET=USB_MTU3 3962306a36Sopenharmony_ci help 4062306a36Sopenharmony_ci Select this when you want to use MTU3 in gadget mode only, 4162306a36Sopenharmony_ci thereby the host feature will be regressed. 4262306a36Sopenharmony_ci 4362306a36Sopenharmony_ciconfig USB_MTU3_DUAL_ROLE 4462306a36Sopenharmony_ci bool "Dual Role mode" 4562306a36Sopenharmony_ci depends on ((USB=y || USB=USB_MTU3) && (USB_GADGET=y || USB_GADGET=USB_MTU3)) 4662306a36Sopenharmony_ci depends on (EXTCON=y || EXTCON=USB_MTU3) 4762306a36Sopenharmony_ci select USB_ROLE_SWITCH 4862306a36Sopenharmony_ci help 4962306a36Sopenharmony_ci This is the default mode of working of MTU3 controller where 5062306a36Sopenharmony_ci both host and gadget features are enabled. 5162306a36Sopenharmony_ci 5262306a36Sopenharmony_ciendchoice 5362306a36Sopenharmony_ci 5462306a36Sopenharmony_ciconfig USB_MTU3_DEBUG 5562306a36Sopenharmony_ci bool "Enable Debugging Messages" 5662306a36Sopenharmony_ci help 5762306a36Sopenharmony_ci Say Y here to enable debugging messages in the MTU3 Driver. 5862306a36Sopenharmony_ci 5962306a36Sopenharmony_ciendif 60