blob: 71f36f288605ca7104a72a7b7249c44ab1750e85 [file] [log] [blame]
David Brownellb8da8672008-11-24 11:53:35 -08001#
2# USB OTG infrastructure may be needed for peripheral-only, host-only,
3# or OTG-capable configurations when OTG transceivers or controllers
4# are used.
5#
6
7comment "OTG and related infrastructure"
8
David Brownellb8da8672008-11-24 11:53:35 -08009config USB_OTG_UTILS
10 bool
11 help
12 Select this to make sure the build includes objects from
13 the OTG infrastructure directory.
14
Todd Poynor75dc25a2011-07-01 17:19:56 -070015config USB_OTG_WAKELOCK
16 bool "Hold a wakelock when USB connected"
17 depends on WAKELOCK
18 select USB_OTG_UTILS
19 help
20 Select this to automatically hold a wakelock when USB is
21 connected, preventing suspend.
22
David Brownell2bf5fa12009-01-24 17:55:57 -080023if USB || USB_GADGET
24
Philipp Zabel6084f1b2008-11-24 12:00:01 -080025#
26# USB Transceiver Drivers
27#
28config USB_GPIO_VBUS
29 tristate "GPIO based peripheral-only VBUS sensing 'transceiver'"
30 depends on GENERIC_GPIO
31 select USB_OTG_UTILS
32 help
33 Provides simple GPIO VBUS sensing for controllers with an
34 internal transceiver via the otg_transceiver interface, and
35 optionally control of a D+ pullup GPIO as well as a VBUS
36 current limit regulator.
37
David Brownellb8da8672008-11-24 11:53:35 -080038config ISP1301_OMAP
39 tristate "Philips ISP1301 with OMAP OTG"
40 depends on I2C && ARCH_OMAP_OTG
41 select USB_OTG_UTILS
42 help
43 If you say yes here you get support for the Philips ISP1301
44 USB-On-The-Go transceiver working with the OMAP OTG controller.
45 The ISP1301 is a full speed USB transceiver which is used in
46 products including H2, H3, and H4 development boards for Texas
47 Instruments OMAP processors.
48
49 This driver can also be built as a module. If so, the module
50 will be called isp1301_omap.
51
Daniel Mack2d57a952009-10-15 17:09:35 +030052config USB_ULPI
53 bool "Generic ULPI Transceiver Driver"
54 depends on ARM
Valentin Longchampdd091c72010-01-20 20:06:31 +010055 select USB_OTG_UTILS
Daniel Mack2d57a952009-10-15 17:09:35 +030056 help
57 Enable this to support ULPI connected USB OTG transceivers which
58 are likely found on embedded boards.
59
Benoit Gobyee398ba2011-03-09 16:28:54 -080060config USB_ULPI_VIEWPORT
61 bool
62 depends on USB_ULPI
63 help
64 Provides read/write operations to the ULPI phy register set for
65 controllers with a viewport register (e.g. Chipidea/ARC controllers).
66
David Brownell9ebd9612008-12-18 12:25:44 -080067config TWL4030_USB
68 tristate "TWL4030 USB Transceiver Driver"
Jouni Hogander66760162009-02-20 14:02:31 +020069 depends on TWL4030_CORE && REGULATOR_TWL4030
David Brownell9ebd9612008-12-18 12:25:44 -080070 select USB_OTG_UTILS
71 help
72 Enable this to support the USB OTG transceiver on TWL4030
73 family chips (including the TWL5030 and TPS659x0 devices).
74 This transceiver supports high and full speed devices plus,
75 in host mode, low speed.
76
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -070077config USB_MSM_OTG_72K
78 bool "OTG support for Legcay Qualcomm on-chip USB controller"
79 depends on ARCH_MSM
80 select USB_OTG_UTILS
81 default USB_MSM_72K
82 help
83 Enable this to support the USB OTG transceiver on MSM chips. It
84 handles PHY initialization, clock management, low power mode and
85 workarounds required after resetting the hardware. This driver is
86 required for even peripheral only or host only mode configuration.
87 Supports SRP and HNP when both gadget and Host are selected.
88
89config MSM_OTG_ENABLE_A_WAIT_BCON_TIMEOUT
90 bool "Enable A-device timeout for B-device connection"
91 depends on USB_MSM_OTG_72K
92 default n
93 help
94 OTG specification allows A-device to turn off VBUS if B-device
95 fails to signal connect event before TA_WAIT_BCON (1.1 - 30 sec).
96 SRP detection is enabled and hardware is put into low power mode
97 upon this timeout.
98
99 If you say yes, VBUS will be turned off if B-device does not signal
100 connect in 30 sec. Otherwise VBUS is not turned off when Micro-A
101 cable is connected. But hardware is put into LPM. Say no if leakage
102 currents in your system are minimum.
103
104
Hema HK6b296122010-12-10 18:08:48 +0530105config TWL6030_USB
106 tristate "TWL6030 USB Transceiver Driver"
107 depends on TWL4030_CORE
108 select USB_OTG_UTILS
109 help
110 Enable this to support the USB OTG transceiver on TWL6030
111 family chips. This TWL6030 transceiver has the VBUS and ID GND
112 and OTG SRP events capabilities. For all other transceiver functionality
113 UTMI PHY is embedded in OMAP4430. The internal PHY configurations APIs
114 are hooked to this driver through platform_data structure.
115 The definition of internal PHY APIs are in the mach-omap2 layer.
116
Ajay Kumar Guptaf6d92a02009-02-06 17:32:35 +0530117config NOP_USB_XCEIV
118 tristate "NOP USB Transceiver Driver"
119 select USB_OTG_UTILS
120 help
121 this driver is to be used by all the usb transceiver which are either
122 built-in with usb ip or which are autonomous and doesn't require any
123 phy programming such as ISP1x04 etc.
124
Hao Wuf0ae8492010-08-05 14:17:28 +0100125config USB_LANGWELL_OTG
126 tristate "Intel Langwell USB OTG dual-role support"
Hao Wu56e94062010-09-09 22:35:54 +0100127 depends on USB && PCI && INTEL_SCU_IPC
Hao Wuf0ae8492010-08-05 14:17:28 +0100128 select USB_OTG
129 select USB_OTG_UTILS
130 help
131 Say Y here if you want to build Intel Langwell USB OTG
132 transciever driver in kernel. This driver implements role
133 switch between EHCI host driver and Langwell USB OTG
134 client driver.
135
136 To compile this driver as a module, choose M here: the
137 module will be called langwell_otg.
138
Pavankumar Kondetidfb21302011-03-04 22:45:02 +0530139config USB_MSM_OTG
Pavankumar Kondetie0c201f2010-12-07 17:53:55 +0530140 tristate "OTG support for Qualcomm on-chip USB controller"
141 depends on (USB || USB_GADGET) && ARCH_MSM
142 select USB_OTG_UTILS
143 help
144 Enable this to support the USB OTG transceiver on MSM chips. It
145 handles PHY initialization, clock management, and workarounds
Pavankumar Kondeti87c01042010-12-07 17:53:58 +0530146 required after resetting the hardware and power management.
147 This driver is required even for peripheral only or host only
148 mode configurations.
Pavankumar Kondeti8cf28f12011-02-04 10:08:18 +0530149 This driver is not supported on boards like trout which
150 has an external PHY.
Pavankumar Kondetie0c201f2010-12-07 17:53:55 +0530151
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -0700152config USB_MSM_ACA
153 bool "Support for Accessory Charger Adapter (ACA)"
154 depends on (USB_MSM_OTG || USB_MSM_OTG_72K) && ARCH_MSM
155 default n
156 help
157 Accesory Charger Adapter is a charger specified in USB Battery
158 Charging Specification(1.1). It enables OTG devices to charge
159 while operating as a host or peripheral at the same time.
160
Pavankumar Kondeti9e49ea92011-07-13 17:51:40 +0530161config USB_MSM_STANDARD_ACA
162 bool "Support for Standard ACA"
163 depends on USB_MSM_ACA
164 default y
165 help
166 A Standard ACA has a Standard-A receptacle on the Accessory Port,
167 and can only be attached to a B-device. RID_A and RID_GND states
168 are only possible with Standard ACA. Select this feature if the
169 board is intended to support only Standard ACA.
170
Mian Yousaf Kaukab96915232010-12-07 15:00:09 +0100171config AB8500_USB
172 tristate "AB8500 USB Transceiver Driver"
173 depends on AB8500_CORE
174 select USB_OTG_UTILS
175 help
176 Enable this to support the USB OTG transceiver in AB8500 chip.
177 This transceiver supports high and full speed devices plus,
178 in host mode, low speed.
179
Li Yang0807c502011-04-18 22:01:59 +0200180config FSL_USB2_OTG
181 bool "Freescale USB OTG Transceiver Driver"
182 depends on USB_EHCI_FSL && USB_GADGET_FSL_USB2
183 select USB_OTG
184 select USB_OTG_UTILS
185 help
186 Enable this to support Freescale USB OTG transceiver.
187
David Brownellb8da8672008-11-24 11:53:35 -0800188endif # USB || OTG