1# 2# Physical Layer USB driver configuration 3# 4menu "USB Physical Layer drivers" 5 6config USB_PHY 7 def_bool n 8 9# 10# USB Transceiver Drivers 11# 12config AB8500_USB 13 tristate "AB8500 USB Transceiver Driver" 14 depends on AB8500_CORE 15 select USB_PHY 16 help 17 Enable this to support the USB OTG transceiver in AB8500 chip. 18 This transceiver supports high and full speed devices plus, 19 in host mode, low speed. 20 21config FSL_USB2_OTG 22 bool "Freescale USB OTG Transceiver Driver" 23 depends on USB_EHCI_FSL && USB_FSL_USB2 && PM_RUNTIME 24 select USB_OTG 25 select USB_PHY 26 help 27 Enable this to support Freescale USB OTG transceiver. 28 29config ISP1301_OMAP 30 tristate "Philips ISP1301 with OMAP OTG" 31 depends on I2C && ARCH_OMAP_OTG 32 select USB_PHY 33 help 34 If you say yes here you get support for the Philips ISP1301 35 USB-On-The-Go transceiver working with the OMAP OTG controller. 36 The ISP1301 is a full speed USB transceiver which is used in 37 products including H2, H3, and H4 development boards for Texas 38 Instruments OMAP processors. 39 40 This driver can also be built as a module. If so, the module 41 will be called isp1301_omap. 42 43config MV_U3D_PHY 44 bool "Marvell USB 3.0 PHY controller Driver" 45 depends on CPU_MMP3 46 select USB_PHY 47 help 48 Enable this to support Marvell USB 3.0 phy controller for Marvell 49 SoC. 50 51config NOP_USB_XCEIV 52 tristate "NOP USB Transceiver Driver" 53 select USB_PHY 54 help 55 This driver is to be used by all the usb transceiver which are either 56 built-in with usb ip or which are autonomous and doesn't require any 57 phy programming such as ISP1x04 etc. 58 59config OMAP_CONTROL_USB 60 tristate "OMAP CONTROL USB Driver" 61 depends on ARCH_OMAP2PLUS || COMPILE_TEST 62 help 63 Enable this to add support for the USB part present in the control 64 module. This driver has API to power on the USB2 PHY and to write to 65 the mailbox. The mailbox is present only in omap4 and the register to 66 power on the USB2 PHY is present in OMAP4 and OMAP5. OMAP5 has an 67 additional register to power on USB3 PHY. 68 69config OMAP_USB3 70 tristate "OMAP USB3 PHY Driver" 71 depends on ARCH_OMAP2PLUS || COMPILE_TEST 72 select OMAP_CONTROL_USB 73 select USB_PHY 74 help 75 Enable this to support the USB3 PHY that is part of SOC. This 76 driver takes care of all the PHY functionality apart from comparator. 77 This driver interacts with the "OMAP Control USB Driver" to power 78 on/off the PHY. 79 80config AM335X_CONTROL_USB 81 tristate 82 83config AM335X_PHY_USB 84 tristate "AM335x USB PHY Driver" 85 depends on ARM || COMPILE_TEST 86 select USB_PHY 87 select AM335X_CONTROL_USB 88 select NOP_USB_XCEIV 89 help 90 This driver provides PHY support for that phy which part for the 91 AM335x SoC. 92 93config SAMSUNG_USBPHY 94 tristate 95 help 96 Enable this to support Samsung USB phy helper driver for Samsung SoCs. 97 This driver provides common interface to interact, for Samsung USB 2.0 PHY 98 driver and later for Samsung USB 3.0 PHY driver. 99 100config SAMSUNG_USB2PHY 101 tristate "Samsung USB 2.0 PHY controller Driver" 102 select SAMSUNG_USBPHY 103 select USB_PHY 104 help 105 Enable this to support Samsung USB 2.0 (High Speed) PHY controller 106 driver for Samsung SoCs. 107 108config SAMSUNG_USB3PHY 109 tristate "Samsung USB 3.0 PHY controller Driver" 110 select SAMSUNG_USBPHY 111 select USB_PHY 112 help 113 Enable this to support Samsung USB 3.0 (Super Speed) phy controller 114 for samsung SoCs. 115 116config TWL6030_USB 117 tristate "TWL6030 USB Transceiver Driver" 118 depends on TWL4030_CORE && OMAP_USB2 && USB_MUSB_OMAP2PLUS 119 help 120 Enable this to support the USB OTG transceiver on TWL6030 121 family chips. This TWL6030 transceiver has the VBUS and ID GND 122 and OTG SRP events capabilities. For all other transceiver functionality 123 UTMI PHY is embedded in OMAP4430. The internal PHY configurations APIs 124 are hooked to this driver through platform_data structure. 125 The definition of internal PHY APIs are in the mach-omap2 layer. 126 127config USB_GPIO_VBUS 128 tristate "GPIO based peripheral-only VBUS sensing 'transceiver'" 129 depends on GPIOLIB 130 select USB_PHY 131 help 132 Provides simple GPIO VBUS sensing for controllers with an 133 internal transceiver via the usb_phy interface, and 134 optionally control of a D+ pullup GPIO as well as a VBUS 135 current limit regulator. 136 137config USB_ISP1301 138 tristate "NXP ISP1301 USB transceiver support" 139 depends on USB || USB_GADGET 140 depends on I2C 141 select USB_PHY 142 help 143 Say Y here to add support for the NXP ISP1301 USB transceiver driver. 144 This chip is typically used as USB transceiver for USB host, gadget 145 and OTG drivers (to be selected separately). 146 147 To compile this driver as a module, choose M here: the 148 module will be called isp1301. 149 150config USB_MSM_OTG 151 tristate "OTG support for Qualcomm on-chip USB controller" 152 depends on (USB || USB_GADGET) && ARCH_MSM 153 select USB_PHY 154 help 155 Enable this to support the USB OTG transceiver on MSM chips. It 156 handles PHY initialization, clock management, and workarounds 157 required after resetting the hardware and power management. 158 This driver is required even for peripheral only or host only 159 mode configurations. 160 This driver is not supported on boards like trout which 161 has an external PHY. 162 163config USB_MV_OTG 164 tristate "Marvell USB OTG support" 165 depends on USB_EHCI_MV && USB_MV_UDC && PM_RUNTIME 166 select USB_OTG 167 select USB_PHY 168 help 169 Say Y here if you want to build Marvell USB OTG transciever 170 driver in kernel (including PXA and MMP series). This driver 171 implements role switch between EHCI host driver and gadget driver. 172 173 To compile this driver as a module, choose M here. 174 175config USB_MXS_PHY 176 tristate "Freescale MXS USB PHY support" 177 depends on ARCH_MXC || ARCH_MXS 178 select STMP_DEVICE 179 select USB_PHY 180 help 181 Enable this to support the Freescale MXS USB PHY. 182 183 MXS Phy is used by some of the i.MX SoCs, for example imx23/28/6x. 184 185config USB_RCAR_PHY 186 tristate "Renesas R-Car USB PHY support" 187 depends on USB || USB_GADGET 188 select USB_PHY 189 help 190 Say Y here to add support for the Renesas R-Car USB common PHY driver. 191 This chip is typically used as USB PHY for USB host, gadget. 192 This driver supports R8A7778 and R8A7779. 193 194 To compile this driver as a module, choose M here: the 195 module will be called phy-rcar-usb. 196 197config USB_RCAR_GEN2_PHY 198 tristate "Renesas R-Car Gen2 USB PHY support" 199 depends on ARCH_R8A7790 || ARCH_R8A7791 || COMPILE_TEST 200 select USB_PHY 201 help 202 Say Y here to add support for the Renesas R-Car Gen2 USB PHY driver. 203 It is typically used to control internal USB PHY for USBHS, 204 and to configure shared USB channels 0 and 2. 205 This driver supports R8A7790 and R8A7791. 206 207 To compile this driver as a module, choose M here: the 208 module will be called phy-rcar-gen2-usb. 209 210config USB_ULPI 211 bool "Generic ULPI Transceiver Driver" 212 depends on ARM 213 help 214 Enable this to support ULPI connected USB OTG transceivers which 215 are likely found on embedded boards. 216 217config USB_ULPI_VIEWPORT 218 bool 219 depends on USB_ULPI 220 help 221 Provides read/write operations to the ULPI phy register set for 222 controllers with a viewport register (e.g. Chipidea/ARC controllers). 223 224endmenu 225