blob: 372db48fa2695144d71bc35ea25072bc3df68e39 [file] [log] [blame]
Roland Stigge8b7c3b62012-04-29 16:47:04 +02001#
2# Physical Layer USB driver configuration
3#
Felipe Balbiedc7cb22013-03-07 11:13:43 +02004menuconfig USB_PHY
5 tristate "USB Physical Layer drivers"
Felipe Balbiedc7cb22013-03-07 11:13:43 +02006 help
7 USB controllers (those which are host, device or DRD) need a
8 device to handle the physical layer signalling, commonly called
9 a PHY.
10
11 The following drivers add support for such PHY devices.
12
13if USB_PHY
Roland Stigge8b7c3b62012-04-29 16:47:04 +020014
Felipe Balbia0e63122013-03-07 11:01:15 +020015#
16# USB Transceiver Drivers
17#
18config AB8500_USB
19 tristate "AB8500 USB Transceiver Driver"
20 depends on AB8500_CORE
Felipe Balbia0e63122013-03-07 11:01:15 +020021 help
22 Enable this to support the USB OTG transceiver in AB8500 chip.
23 This transceiver supports high and full speed devices plus,
24 in host mode, low speed.
25
26config FSL_USB2_OTG
27 bool "Freescale USB OTG Transceiver Driver"
28 depends on USB_EHCI_FSL && USB_FSL_USB2 && USB_SUSPEND
29 select USB_OTG
Felipe Balbia0e63122013-03-07 11:01:15 +020030 help
31 Enable this to support Freescale USB OTG transceiver.
32
33config ISP1301_OMAP
34 tristate "Philips ISP1301 with OMAP OTG"
35 depends on I2C && ARCH_OMAP_OTG
Felipe Balbia0e63122013-03-07 11:01:15 +020036 help
37 If you say yes here you get support for the Philips ISP1301
38 USB-On-The-Go transceiver working with the OMAP OTG controller.
39 The ISP1301 is a full speed USB transceiver which is used in
40 products including H2, H3, and H4 development boards for Texas
41 Instruments OMAP processors.
42
43 This driver can also be built as a module. If so, the module
44 will be called isp1301_omap.
45
46config MV_U3D_PHY
47 bool "Marvell USB 3.0 PHY controller Driver"
Felipe Balbi60630c22013-03-22 09:15:45 +020048 depends on CPU_MMP3
Felipe Balbia0e63122013-03-07 11:01:15 +020049 help
50 Enable this to support Marvell USB 3.0 phy controller for Marvell
51 SoC.
52
53config NOP_USB_XCEIV
54 tristate "NOP USB Transceiver Driver"
Felipe Balbia0e63122013-03-07 11:01:15 +020055 help
56 This driver is to be used by all the usb transceiver which are either
57 built-in with usb ip or which are autonomous and doesn't require any
58 phy programming such as ISP1x04 etc.
59
60config OMAP_CONTROL_USB
61 tristate "OMAP CONTROL USB Driver"
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
Kishon Vijay Abraham I657b3062012-09-06 20:27:06 +053069config OMAP_USB2
70 tristate "OMAP USB2 PHY Driver"
Tony Lindgren770b6cb2012-12-16 12:28:46 -080071 depends on ARCH_OMAP2PLUS
Kishon Vijay Abraham Ica784be2013-01-25 15:54:00 +053072 select OMAP_CONTROL_USB
Kishon Vijay Abraham I657b3062012-09-06 20:27:06 +053073 help
74 Enable this to support the transceiver that is part of SOC. This
75 driver takes care of all the PHY functionality apart from comparator.
76 The USB OTG controller communicates with the comparator using this
77 driver.
78
Kishon Vijay Abraham I57f6ce02013-01-25 08:21:48 +053079config OMAP_USB3
80 tristate "OMAP USB3 PHY Driver"
Kishon Vijay Abraham I57f6ce02013-01-25 08:21:48 +053081 select OMAP_CONTROL_USB
82 help
83 Enable this to support the USB3 PHY that is part of SOC. This
84 driver takes care of all the PHY functionality apart from comparator.
85 This driver interacts with the "OMAP Control USB Driver" to power
86 on/off the PHY.
87
Felipe Balbia0e63122013-03-07 11:01:15 +020088config SAMSUNG_USBPHY
Vivek Gautamdc2377d2013-03-14 15:59:10 +053089 tristate "Samsung USB PHY Driver"
Kishon Vijay Abraham I01658f02013-01-25 15:53:57 +053090 help
Vivek Gautamdc2377d2013-03-14 15:59:10 +053091 Enable this to support Samsung USB phy helper driver for Samsung SoCs.
92 This driver provides common interface to interact, for Samsung USB 2.0 PHY
93 driver and later for Samsung USB 3.0 PHY driver.
94
95config SAMSUNG_USB2PHY
96 tristate "Samsung USB 2.0 PHY controller Driver"
97 select SAMSUNG_USBPHY
98 help
99 Enable this to support Samsung USB 2.0 (High Speed) PHY controller
100 driver for Samsung SoCs.
Felipe Balbia0e63122013-03-07 11:01:15 +0200101
Vivek Gautamb5276752013-03-14 15:59:11 +0530102config SAMSUNG_USB3PHY
103 tristate "Samsung USB 3.0 PHY controller Driver"
104 select SAMSUNG_USBPHY
105 help
106 Enable this to support Samsung USB 3.0 (Super Speed) phy controller
107 for samsung SoCs.
108
Felipe Balbia0e63122013-03-07 11:01:15 +0200109config TWL4030_USB
110 tristate "TWL4030 USB Transceiver Driver"
111 depends on TWL4030_CORE && REGULATOR_TWL4030 && USB_MUSB_OMAP2PLUS
Felipe Balbia0e63122013-03-07 11:01:15 +0200112 help
113 Enable this to support the USB OTG transceiver on TWL4030
114 family chips (including the TWL5030 and TPS659x0 devices).
115 This transceiver supports high and full speed devices plus,
116 in host mode, low speed.
117
118config TWL6030_USB
119 tristate "TWL6030 USB Transceiver Driver"
120 depends on TWL4030_CORE && OMAP_USB2 && USB_MUSB_OMAP2PLUS
Felipe Balbia0e63122013-03-07 11:01:15 +0200121 help
122 Enable this to support the USB OTG transceiver on TWL6030
123 family chips. This TWL6030 transceiver has the VBUS and ID GND
124 and OTG SRP events capabilities. For all other transceiver functionality
125 UTMI PHY is embedded in OMAP4430. The internal PHY configurations APIs
126 are hooked to this driver through platform_data structure.
127 The definition of internal PHY APIs are in the mach-omap2 layer.
128
129config USB_GPIO_VBUS
130 tristate "GPIO based peripheral-only VBUS sensing 'transceiver'"
131 depends on GENERIC_GPIO
Felipe Balbia0e63122013-03-07 11:01:15 +0200132 help
133 Provides simple GPIO VBUS sensing for controllers with an
134 internal transceiver via the usb_phy interface, and
135 optionally control of a D+ pullup GPIO as well as a VBUS
136 current limit regulator.
Kishon Vijay Abraham I01658f02013-01-25 15:53:57 +0530137
Roland Stigge8b7c3b62012-04-29 16:47:04 +0200138config USB_ISP1301
139 tristate "NXP ISP1301 USB transceiver support"
Alexandre Pereira da Silvac6156322012-06-26 11:56:48 -0300140 depends on USB || USB_GADGET
Roland Stigge8b7c3b62012-04-29 16:47:04 +0200141 depends on I2C
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.
Yu Xua67e76a2012-08-09 22:29:31 +0800149
Felipe Balbia0e63122013-03-07 11:01:15 +0200150config USB_MSM_OTG
151 tristate "OTG support for Qualcomm on-chip USB controller"
152 depends on (USB || USB_GADGET) && ARCH_MSM
Yu Xua67e76a2012-08-09 22:29:31 +0800153 help
Felipe Balbia0e63122013-03-07 11:01:15 +0200154 Enable this to support the USB OTG transceiver on MSM chips. It
155 handles PHY initialization, clock management, and workarounds
156 required after resetting the hardware and power management.
157 This driver is required even for peripheral only or host only
158 mode configurations.
159 This driver is not supported on boards like trout which
160 has an external PHY.
161
162config USB_MV_OTG
163 tristate "Marvell USB OTG support"
164 depends on USB_EHCI_MV && USB_MV_UDC && USB_SUSPEND
165 select USB_OTG
Felipe Balbia0e63122013-03-07 11:01:15 +0200166 help
167 Say Y here if you want to build Marvell USB OTG transciever
168 driver in kernel (including PXA and MMP series). This driver
169 implements role switch between EHCI host driver and gadget driver.
170
171 To compile this driver as a module, choose M here.
172
173config USB_MXS_PHY
174 tristate "Freescale MXS USB PHY support"
175 depends on ARCH_MXC || ARCH_MXS
176 select STMP_DEVICE
Felipe Balbia0e63122013-03-07 11:01:15 +0200177 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
Kuninori Morimoto1789e522012-10-31 19:03:11 -0700185 help
186 Say Y here to add support for the Renesas R-Car USB phy driver.
187 This chip is typically used as USB phy for USB host, gadget.
188 This driver supports: R8A7779
189
190 To compile this driver as a module, choose M here: the
191 module will be called rcar-phy.
Praveen Paneri337dc3a2012-11-23 16:03:06 +0530192
Felipe Balbia0e63122013-03-07 11:01:15 +0200193config USB_ULPI
194 bool "Generic ULPI Transceiver Driver"
195 depends on ARM
Praveen Paneri337dc3a2012-11-23 16:03:06 +0530196 help
Felipe Balbia0e63122013-03-07 11:01:15 +0200197 Enable this to support ULPI connected USB OTG transceivers which
198 are likely found on embedded boards.
199
200config USB_ULPI_VIEWPORT
201 bool
202 depends on USB_ULPI
203 help
204 Provides read/write operations to the ULPI phy register set for
205 controllers with a viewport register (e.g. Chipidea/ARC controllers).
206
Felipe Balbiedc7cb22013-03-07 11:13:43 +0200207endif # USB_PHY