blob: cd777190d54d9e89a23c38b601a5bdc2d3e888fd [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
Hema HK6b296122010-12-10 18:08:48 +053077config TWL6030_USB
78 tristate "TWL6030 USB Transceiver Driver"
79 depends on TWL4030_CORE
80 select USB_OTG_UTILS
81 help
82 Enable this to support the USB OTG transceiver on TWL6030
83 family chips. This TWL6030 transceiver has the VBUS and ID GND
84 and OTG SRP events capabilities. For all other transceiver functionality
85 UTMI PHY is embedded in OMAP4430. The internal PHY configurations APIs
86 are hooked to this driver through platform_data structure.
87 The definition of internal PHY APIs are in the mach-omap2 layer.
88
Ajay Kumar Guptaf6d92a02009-02-06 17:32:35 +053089config NOP_USB_XCEIV
90 tristate "NOP USB Transceiver Driver"
91 select USB_OTG_UTILS
92 help
93 this driver is to be used by all the usb transceiver which are either
94 built-in with usb ip or which are autonomous and doesn't require any
95 phy programming such as ISP1x04 etc.
96
Hao Wuf0ae8492010-08-05 14:17:28 +010097config USB_LANGWELL_OTG
98 tristate "Intel Langwell USB OTG dual-role support"
Hao Wu56e94062010-09-09 22:35:54 +010099 depends on USB && PCI && INTEL_SCU_IPC
Hao Wuf0ae8492010-08-05 14:17:28 +0100100 select USB_OTG
101 select USB_OTG_UTILS
102 help
103 Say Y here if you want to build Intel Langwell USB OTG
104 transciever driver in kernel. This driver implements role
105 switch between EHCI host driver and Langwell USB OTG
106 client driver.
107
108 To compile this driver as a module, choose M here: the
109 module will be called langwell_otg.
110
Pavankumar Kondetidfb21302011-03-04 22:45:02 +0530111config USB_MSM_OTG
Pavankumar Kondetie0c201f2010-12-07 17:53:55 +0530112 tristate "OTG support for Qualcomm on-chip USB controller"
113 depends on (USB || USB_GADGET) && ARCH_MSM
114 select USB_OTG_UTILS
115 help
116 Enable this to support the USB OTG transceiver on MSM chips. It
117 handles PHY initialization, clock management, and workarounds
Pavankumar Kondeti87c01042010-12-07 17:53:58 +0530118 required after resetting the hardware and power management.
119 This driver is required even for peripheral only or host only
120 mode configurations.
Pavankumar Kondeti8cf28f12011-02-04 10:08:18 +0530121 This driver is not supported on boards like trout which
122 has an external PHY.
Pavankumar Kondetie0c201f2010-12-07 17:53:55 +0530123
Mian Yousaf Kaukab96915232010-12-07 15:00:09 +0100124config AB8500_USB
125 tristate "AB8500 USB Transceiver Driver"
126 depends on AB8500_CORE
127 select USB_OTG_UTILS
128 help
129 Enable this to support the USB OTG transceiver in AB8500 chip.
130 This transceiver supports high and full speed devices plus,
131 in host mode, low speed.
132
Li Yang0807c502011-04-18 22:01:59 +0200133config FSL_USB2_OTG
134 bool "Freescale USB OTG Transceiver Driver"
135 depends on USB_EHCI_FSL && USB_GADGET_FSL_USB2
136 select USB_OTG
137 select USB_OTG_UTILS
138 help
139 Enable this to support Freescale USB OTG transceiver.
140
David Brownellb8da8672008-11-24 11:53:35 -0800141endif # USB || OTG