blob: 32ce740a9dd501751064c6342989ed273cc94c76 [file] [log] [blame]
Roland Stigge8b7c3b62012-04-29 16:47:04 +02001#
2# Physical Layer USB driver configuration
3#
4comment "USB Physical Layer drivers"
Alexandre Pereira da Silvac6156322012-06-26 11:56:48 -03005 depends on USB || USB_GADGET
Roland Stigge8b7c3b62012-04-29 16:47:04 +02006
Felipe Balbia0e63122013-03-07 11:01:15 +02007config USB_OTG_UTILS
8 bool
9 help
10 Select this to make sure the build includes objects from
11 the OTG infrastructure directory.
12
13if USB || USB_GADGET
14
15#
16# USB Transceiver Drivers
17#
18config AB8500_USB
19 tristate "AB8500 USB Transceiver Driver"
20 depends on AB8500_CORE
21 select USB_OTG_UTILS
22 help
23 Enable this to support the USB OTG transceiver in AB8500 chip.
24 This transceiver supports high and full speed devices plus,
25 in host mode, low speed.
26
27config FSL_USB2_OTG
28 bool "Freescale USB OTG Transceiver Driver"
29 depends on USB_EHCI_FSL && USB_FSL_USB2 && USB_SUSPEND
30 select USB_OTG
31 select USB_OTG_UTILS
32 help
33 Enable this to support Freescale USB OTG transceiver.
34
35config ISP1301_OMAP
36 tristate "Philips ISP1301 with OMAP OTG"
37 depends on I2C && ARCH_OMAP_OTG
38 select USB_OTG_UTILS
39 help
40 If you say yes here you get support for the Philips ISP1301
41 USB-On-The-Go transceiver working with the OMAP OTG controller.
42 The ISP1301 is a full speed USB transceiver which is used in
43 products including H2, H3, and H4 development boards for Texas
44 Instruments OMAP processors.
45
46 This driver can also be built as a module. If so, the module
47 will be called isp1301_omap.
48
49config MV_U3D_PHY
50 bool "Marvell USB 3.0 PHY controller Driver"
51 depends on USB_MV_U3D
52 select USB_OTG_UTILS
53 help
54 Enable this to support Marvell USB 3.0 phy controller for Marvell
55 SoC.
56
57config NOP_USB_XCEIV
58 tristate "NOP USB Transceiver Driver"
59 select USB_OTG_UTILS
60 help
61 This driver is to be used by all the usb transceiver which are either
62 built-in with usb ip or which are autonomous and doesn't require any
63 phy programming such as ISP1x04 etc.
64
65config OMAP_CONTROL_USB
66 tristate "OMAP CONTROL USB Driver"
67 help
68 Enable this to add support for the USB part present in the control
69 module. This driver has API to power on the USB2 PHY and to write to
70 the mailbox. The mailbox is present only in omap4 and the register to
71 power on the USB2 PHY is present in OMAP4 and OMAP5. OMAP5 has an
72 additional register to power on USB3 PHY.
73
Kishon Vijay Abraham I657b3062012-09-06 20:27:06 +053074config OMAP_USB2
75 tristate "OMAP USB2 PHY Driver"
Tony Lindgren770b6cb2012-12-16 12:28:46 -080076 depends on ARCH_OMAP2PLUS
Kishon Vijay Abraham I657b3062012-09-06 20:27:06 +053077 select USB_OTG_UTILS
Kishon Vijay Abraham Ica784be2013-01-25 15:54:00 +053078 select OMAP_CONTROL_USB
Kishon Vijay Abraham I657b3062012-09-06 20:27:06 +053079 help
80 Enable this to support the transceiver that is part of SOC. This
81 driver takes care of all the PHY functionality apart from comparator.
82 The USB OTG controller communicates with the comparator using this
83 driver.
84
Kishon Vijay Abraham I57f6ce02013-01-25 08:21:48 +053085config OMAP_USB3
86 tristate "OMAP USB3 PHY Driver"
87 select USB_OTG_UTILS
88 select OMAP_CONTROL_USB
89 help
90 Enable this to support the USB3 PHY that is part of SOC. This
91 driver takes care of all the PHY functionality apart from comparator.
92 This driver interacts with the "OMAP Control USB Driver" to power
93 on/off the PHY.
94
Felipe Balbia0e63122013-03-07 11:01:15 +020095config SAMSUNG_USBPHY
96 bool "Samsung USB PHY controller Driver"
97 depends on USB_S3C_HSOTG || USB_EHCI_S5P || USB_OHCI_EXYNOS
98 select USB_OTG_UTILS
Kishon Vijay Abraham I01658f02013-01-25 15:53:57 +053099 help
Felipe Balbia0e63122013-03-07 11:01:15 +0200100 Enable this to support Samsung USB phy controller for samsung
101 SoCs.
102
103config TWL4030_USB
104 tristate "TWL4030 USB Transceiver Driver"
105 depends on TWL4030_CORE && REGULATOR_TWL4030 && USB_MUSB_OMAP2PLUS
106 select USB_OTG_UTILS
107 help
108 Enable this to support the USB OTG transceiver on TWL4030
109 family chips (including the TWL5030 and TPS659x0 devices).
110 This transceiver supports high and full speed devices plus,
111 in host mode, low speed.
112
113config TWL6030_USB
114 tristate "TWL6030 USB Transceiver Driver"
115 depends on TWL4030_CORE && OMAP_USB2 && USB_MUSB_OMAP2PLUS
116 select USB_OTG_UTILS
117 help
118 Enable this to support the USB OTG transceiver on TWL6030
119 family chips. This TWL6030 transceiver has the VBUS and ID GND
120 and OTG SRP events capabilities. For all other transceiver functionality
121 UTMI PHY is embedded in OMAP4430. The internal PHY configurations APIs
122 are hooked to this driver through platform_data structure.
123 The definition of internal PHY APIs are in the mach-omap2 layer.
124
125config USB_GPIO_VBUS
126 tristate "GPIO based peripheral-only VBUS sensing 'transceiver'"
127 depends on GENERIC_GPIO
128 select USB_OTG_UTILS
129 help
130 Provides simple GPIO VBUS sensing for controllers with an
131 internal transceiver via the usb_phy interface, and
132 optionally control of a D+ pullup GPIO as well as a VBUS
133 current limit regulator.
Kishon Vijay Abraham I01658f02013-01-25 15:53:57 +0530134
Roland Stigge8b7c3b62012-04-29 16:47:04 +0200135config USB_ISP1301
136 tristate "NXP ISP1301 USB transceiver support"
Alexandre Pereira da Silvac6156322012-06-26 11:56:48 -0300137 depends on USB || USB_GADGET
Roland Stigge8b7c3b62012-04-29 16:47:04 +0200138 depends on I2C
139 help
140 Say Y here to add support for the NXP ISP1301 USB transceiver driver.
141 This chip is typically used as USB transceiver for USB host, gadget
142 and OTG drivers (to be selected separately).
143
144 To compile this driver as a module, choose M here: the
145 module will be called isp1301.
Yu Xua67e76a2012-08-09 22:29:31 +0800146
Felipe Balbia0e63122013-03-07 11:01:15 +0200147config USB_MSM_OTG
148 tristate "OTG support for Qualcomm on-chip USB controller"
149 depends on (USB || USB_GADGET) && ARCH_MSM
Yu Xua67e76a2012-08-09 22:29:31 +0800150 select USB_OTG_UTILS
151 help
Felipe Balbia0e63122013-03-07 11:01:15 +0200152 Enable this to support the USB OTG transceiver on MSM chips. It
153 handles PHY initialization, clock management, and workarounds
154 required after resetting the hardware and power management.
155 This driver is required even for peripheral only or host only
156 mode configurations.
157 This driver is not supported on boards like trout which
158 has an external PHY.
159
160config USB_MV_OTG
161 tristate "Marvell USB OTG support"
162 depends on USB_EHCI_MV && USB_MV_UDC && USB_SUSPEND
163 select USB_OTG
164 select USB_OTG_UTILS
165 help
166 Say Y here if you want to build Marvell USB OTG transciever
167 driver in kernel (including PXA and MMP series). This driver
168 implements role switch between EHCI host driver and gadget driver.
169
170 To compile this driver as a module, choose M here.
171
172config USB_MXS_PHY
173 tristate "Freescale MXS USB PHY support"
174 depends on ARCH_MXC || ARCH_MXS
175 select STMP_DEVICE
176 select USB_OTG_UTILS
177 help
178 Enable this to support the Freescale MXS USB PHY.
179
180 MXS Phy is used by some of the i.MX SoCs, for example imx23/28/6x.
Kuninori Morimoto1789e522012-10-31 19:03:11 -0700181
182config USB_RCAR_PHY
183 tristate "Renesas R-Car USB phy support"
184 depends on USB || USB_GADGET
185 select USB_OTG_UTILS
186 help
187 Say Y here to add support for the Renesas R-Car USB phy driver.
188 This chip is typically used as USB phy for USB host, gadget.
189 This driver supports: R8A7779
190
191 To compile this driver as a module, choose M here: the
192 module will be called rcar-phy.
Praveen Paneri337dc3a2012-11-23 16:03:06 +0530193
Felipe Balbia0e63122013-03-07 11:01:15 +0200194config USB_ULPI
195 bool "Generic ULPI Transceiver Driver"
196 depends on ARM
Praveen Paneri337dc3a2012-11-23 16:03:06 +0530197 select USB_OTG_UTILS
198 help
Felipe Balbia0e63122013-03-07 11:01:15 +0200199 Enable this to support ULPI connected USB OTG transceivers which
200 are likely found on embedded boards.
201
202config USB_ULPI_VIEWPORT
203 bool
204 depends on USB_ULPI
205 help
206 Provides read/write operations to the ULPI phy register set for
207 controllers with a viewport register (e.g. Chipidea/ARC controllers).
208
209endif # USB || OTG