aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/gadget/Kconfig
diff options
context:
space:
mode:
authorFelipe Balbi <balbi@ti.com>2011-06-22 10:28:10 -0400
committerGreg Kroah-Hartman <gregkh@suse.de>2011-07-01 17:31:11 -0400
commit193ab2a6070039e7ee2b9b9bebea754a7c52fd1b (patch)
tree7244a04a5d0db79c5f21664a2b971c02cf56622a /drivers/usb/gadget/Kconfig
parentee34e51a7458ba59af65d1b0eb9c7fa9d19a7586 (diff)
usb: gadget: allow multiple gadgets to be built
now that we have the udc class, we can allow multiple gadget controller drivers to be compiled as modules. This will allow for distro-like kernels for embedded devices. With this patch, I managed to build an x86 kernel with support for many of the controllers enabled: CONFIG_USB_FUSB300=m CONFIG_USB_R8A66597=m CONFIG_USB_M66592=m CONFIG_USB_AMD5536UDC=m CONFIG_USB_CI13XXX_PCI=m CONFIG_USB_NET2272=m CONFIG_USB_NET2280=m CONFIG_USB_GOKU=m CONFIG_USB_LANGWELL=m CONFIG_USB_EG20T=m Also an ARM kernel with support for many controllers: CONFIG_USB_FUSB300=m CONFIG_USB_OMAP=m CONFIG_USB_R8A66597=m CONFIG_USB_GADGET_MUSB_HDRC=m CONFIG_USB_M66592=m CONFIG_USB_NET2272=m CONFIG_USB_DUMMY_HCD=m The next step would be to get rid of the direct access to arch/ and mach/ directories on some gadget controllers so that we can build all of them without depending on their respective ARCH_* symbols. Signed-off-by: Felipe Balbi <balbi@ti.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb/gadget/Kconfig')
-rw-r--r--drivers/usb/gadget/Kconfig285
1 files changed, 66 insertions, 219 deletions
diff --git a/drivers/usb/gadget/Kconfig b/drivers/usb/gadget/Kconfig
index 86f64caeafc..46a253adde3 100644
--- a/drivers/usb/gadget/Kconfig
+++ b/drivers/usb/gadget/Kconfig
@@ -96,9 +96,6 @@ config USB_GADGET_VBUS_DRAW
96 This value will be used except for system-specific gadget 96 This value will be used except for system-specific gadget
97 drivers that have more specific information. 97 drivers that have more specific information.
98 98
99config USB_GADGET_SELECTED
100 boolean
101
102# 99#
103# USB Peripheral Controller Support 100# USB Peripheral Controller Support
104# 101#
@@ -122,10 +119,9 @@ choice
122# Integrated controllers 119# Integrated controllers
123# 120#
124 121
125config USB_GADGET_AT91 122config USB_AT91
126 boolean "Atmel AT91 USB Device Port" 123 tristate "Atmel AT91 USB Device Port"
127 depends on ARCH_AT91 && !ARCH_AT91SAM9RL && !ARCH_AT91CAP9 && !ARCH_AT91SAM9G45 124 depends on ARCH_AT91 && !ARCH_AT91SAM9RL && !ARCH_AT91CAP9 && !ARCH_AT91SAM9G45
128 select USB_GADGET_SELECTED
129 help 125 help
130 Many Atmel AT91 processors (such as the AT91RM2000) have a 126 Many Atmel AT91 processors (such as the AT91RM2000) have a
131 full speed USB Device Port with support for five configurable 127 full speed USB Device Port with support for five configurable
@@ -135,27 +131,16 @@ config USB_GADGET_AT91
135 dynamically linked module called "at91_udc" and force all 131 dynamically linked module called "at91_udc" and force all
136 gadget drivers to also be dynamically linked. 132 gadget drivers to also be dynamically linked.
137 133
138config USB_AT91 134config USB_ATMEL_USBA
139 tristate 135 tristate "Atmel USBA"
140 depends on USB_GADGET_AT91
141 default USB_GADGET
142
143config USB_GADGET_ATMEL_USBA
144 boolean "Atmel USBA"
145 select USB_GADGET_DUALSPEED 136 select USB_GADGET_DUALSPEED
146 depends on AVR32 || ARCH_AT91CAP9 || ARCH_AT91SAM9RL || ARCH_AT91SAM9G45 137 depends on AVR32 || ARCH_AT91CAP9 || ARCH_AT91SAM9RL || ARCH_AT91SAM9G45
147 help 138 help
148 USBA is the integrated high-speed USB Device controller on 139 USBA is the integrated high-speed USB Device controller on
149 the AT32AP700x, some AT91SAM9 and AT91CAP9 processors from Atmel. 140 the AT32AP700x, some AT91SAM9 and AT91CAP9 processors from Atmel.
150 141
151config USB_ATMEL_USBA 142config USB_FSL_USB2
152 tristate 143 tristate "Freescale Highspeed USB DR Peripheral Controller"
153 depends on USB_GADGET_ATMEL_USBA
154 default USB_GADGET
155 select USB_GADGET_SELECTED
156
157config USB_GADGET_FSL_USB2
158 boolean "Freescale Highspeed USB DR Peripheral Controller"
159 depends on FSL_SOC || ARCH_MXC 144 depends on FSL_SOC || ARCH_MXC
160 select USB_GADGET_DUALSPEED 145 select USB_GADGET_DUALSPEED
161 select USB_FSL_MPH_DR_OF if OF 146 select USB_FSL_MPH_DR_OF if OF
@@ -170,26 +155,14 @@ config USB_GADGET_FSL_USB2
170 dynamically linked module called "fsl_usb2_udc" and force 155 dynamically linked module called "fsl_usb2_udc" and force
171 all gadget drivers to also be dynamically linked. 156 all gadget drivers to also be dynamically linked.
172 157
173config USB_FSL_USB2 158config USB_FUSB300
174 tristate 159 tristate "Faraday FUSB300 USB Peripheral Controller"
175 depends on USB_GADGET_FSL_USB2
176 default USB_GADGET
177 select USB_GADGET_SELECTED
178
179config USB_GADGET_FUSB300
180 boolean "Faraday FUSB300 USB Peripheral Controller"
181 select USB_GADGET_DUALSPEED 160 select USB_GADGET_DUALSPEED
182 help 161 help
183 Faraday usb device controller FUSB300 driver 162 Faraday usb device controller FUSB300 driver
184 163
185config USB_FUSB300 164config USB_OMAP
186 tristate 165 tristate "OMAP USB Device Controller"
187 depends on USB_GADGET_FUSB300
188 default USB_GADGET
189 select USB_GADGET_SELECTED
190
191config USB_GADGET_OMAP
192 boolean "OMAP USB Device Controller"
193 depends on ARCH_OMAP 166 depends on ARCH_OMAP
194 select ISP1301_OMAP if MACH_OMAP_H2 || MACH_OMAP_H3 || MACH_OMAP_H4_OTG 167 select ISP1301_OMAP if MACH_OMAP_H2 || MACH_OMAP_H3 || MACH_OMAP_H4_OTG
195 select USB_OTG_UTILS if ARCH_OMAP 168 select USB_OTG_UTILS if ARCH_OMAP
@@ -204,14 +177,8 @@ config USB_GADGET_OMAP
204 dynamically linked module called "omap_udc" and force all 177 dynamically linked module called "omap_udc" and force all
205 gadget drivers to also be dynamically linked. 178 gadget drivers to also be dynamically linked.
206 179
207config USB_OMAP 180config USB_PXA25X
208 tristate 181 tristate "PXA 25x or IXP 4xx"
209 depends on USB_GADGET_OMAP
210 default USB_GADGET
211 select USB_GADGET_SELECTED
212
213config USB_GADGET_PXA25X
214 boolean "PXA 25x or IXP 4xx"
215 depends on (ARCH_PXA && PXA25x) || ARCH_IXP4XX 182 depends on (ARCH_PXA && PXA25x) || ARCH_IXP4XX
216 select USB_OTG_UTILS 183 select USB_OTG_UTILS
217 help 184 help
@@ -226,24 +193,18 @@ config USB_GADGET_PXA25X
226 dynamically linked module called "pxa25x_udc" and force all 193 dynamically linked module called "pxa25x_udc" and force all
227 gadget drivers to also be dynamically linked. 194 gadget drivers to also be dynamically linked.
228 195
229config USB_PXA25X
230 tristate
231 depends on USB_GADGET_PXA25X
232 default USB_GADGET
233 select USB_GADGET_SELECTED
234
235# if there's only one gadget driver, using only two bulk endpoints, 196# if there's only one gadget driver, using only two bulk endpoints,
236# don't waste memory for the other endpoints 197# don't waste memory for the other endpoints
237config USB_PXA25X_SMALL 198config USB_PXA25X_SMALL
238 depends on USB_GADGET_PXA25X 199 depends on USB_PXA25X
239 bool 200 bool
240 default n if USB_ETH_RNDIS 201 default n if USB_ETH_RNDIS
241 default y if USB_ZERO 202 default y if USB_ZERO
242 default y if USB_ETH 203 default y if USB_ETH
243 default y if USB_G_SERIAL 204 default y if USB_G_SERIAL
244 205
245config USB_GADGET_R8A66597 206config USB_R8A66597
246 boolean "Renesas R8A66597 USB Peripheral Controller" 207 tristate "Renesas R8A66597 USB Peripheral Controller"
247 select USB_GADGET_DUALSPEED 208 select USB_GADGET_DUALSPEED
248 help 209 help
249 R8A66597 is a discrete USB host and peripheral controller chip that 210 R8A66597 is a discrete USB host and peripheral controller chip that
@@ -254,32 +215,20 @@ config USB_GADGET_R8A66597
254 dynamically linked module called "r8a66597_udc" and force all 215 dynamically linked module called "r8a66597_udc" and force all
255 gadget drivers to also be dynamically linked. 216 gadget drivers to also be dynamically linked.
256 217
257config USB_R8A66597 218config USB_RENESAS_USBHS
258 tristate 219 tristate 'Renesas USBHS controller'
259 depends on USB_GADGET_R8A66597 220 depends on SUPERH || ARCH_SHMOBILE
260 default USB_GADGET
261 select USB_GADGET_SELECTED
262
263config USB_GADGET_RENESAS_USBHS
264 boolean "Renesas USBHS"
265 depends on USB_RENESAS_USBHS
266 select USB_GADGET_DUALSPEED
267 help 221 help
268 Renesas USBHS is a discrete USB host and peripheral controller 222 Renesas USBHS is a discrete USB host and peripheral controller chip
269 chip that supports both full and high speed USB 2.0 data transfers. 223 that supports both full and high speed USB 2.0 data transfers.
270 platform is able to configure endpoint (pipe) style 224 It has nine or more configurable endpoints, and endpoint zero.
271
272 Say "y" to enable the gadget specific portion of the USBHS driver.
273
274 225
275config USB_RENESAS_USBHS_UDC 226 Say "y" to link the driver statically, or "m" to build a
276 tristate 227 dynamically linked module called "renesas_usbhs" and force all
277 depends on USB_GADGET_RENESAS_USBHS 228 gadget drivers to also be dynamically linked.
278 default USB_GADGET
279 select USB_GADGET_SELECTED
280 229
281config USB_GADGET_PXA27X 230config USB_PXA27X
282 boolean "PXA 27x" 231 tristate "PXA 27x"
283 depends on ARCH_PXA && (PXA27x || PXA3xx) 232 depends on ARCH_PXA && (PXA27x || PXA3xx)
284 select USB_OTG_UTILS 233 select USB_OTG_UTILS
285 help 234 help
@@ -293,14 +242,8 @@ config USB_GADGET_PXA27X
293 dynamically linked module called "pxa27x_udc" and force all 242 dynamically linked module called "pxa27x_udc" and force all
294 gadget drivers to also be dynamically linked. 243 gadget drivers to also be dynamically linked.
295 244
296config USB_PXA27X 245config USB_S3C_HSOTG
297 tristate 246 tristate "S3C HS/OtG USB Device controller"
298 depends on USB_GADGET_PXA27X
299 default USB_GADGET
300 select USB_GADGET_SELECTED
301
302config USB_GADGET_S3C_HSOTG
303 boolean "S3C HS/OtG USB Device controller"
304 depends on S3C_DEV_USB_HSOTG 247 depends on S3C_DEV_USB_HSOTG
305 select USB_GADGET_S3C_HSOTG_PIO 248 select USB_GADGET_S3C_HSOTG_PIO
306 select USB_GADGET_DUALSPEED 249 select USB_GADGET_DUALSPEED
@@ -308,14 +251,8 @@ config USB_GADGET_S3C_HSOTG
308 The Samsung S3C64XX USB2.0 high-speed gadget controller 251 The Samsung S3C64XX USB2.0 high-speed gadget controller
309 integrated into the S3C64XX series SoC. 252 integrated into the S3C64XX series SoC.
310 253
311config USB_S3C_HSOTG 254config USB_IMX
312 tristate 255 tristate "Freescale IMX USB Peripheral Controller"
313 depends on USB_GADGET_S3C_HSOTG
314 default USB_GADGET
315 select USB_GADGET_SELECTED
316
317config USB_GADGET_IMX
318 boolean "Freescale IMX USB Peripheral Controller"
319 depends on ARCH_MX1 256 depends on ARCH_MX1
320 help 257 help
321 Freescale's IMX series include an integrated full speed 258 Freescale's IMX series include an integrated full speed
@@ -329,14 +266,8 @@ config USB_GADGET_IMX
329 dynamically linked module called "imx_udc" and force all 266 dynamically linked module called "imx_udc" and force all
330 gadget drivers to also be dynamically linked. 267 gadget drivers to also be dynamically linked.
331 268
332config USB_IMX 269config USB_S3C2410
333 tristate 270 tristate "S3C2410 USB Device Controller"
334 depends on USB_GADGET_IMX
335 default USB_GADGET
336 select USB_GADGET_SELECTED
337
338config USB_GADGET_S3C2410
339 boolean "S3C2410 USB Device Controller"
340 depends on ARCH_S3C2410 271 depends on ARCH_S3C2410
341 help 272 help
342 Samsung's S3C2410 is an ARM-4 processor with an integrated 273 Samsung's S3C2410 is an ARM-4 processor with an integrated
@@ -346,18 +277,12 @@ config USB_GADGET_S3C2410
346 This driver has been tested on the S3C2410, S3C2412, and 277 This driver has been tested on the S3C2410, S3C2412, and
347 S3C2440 processors. 278 S3C2440 processors.
348 279
349config USB_S3C2410
350 tristate
351 depends on USB_GADGET_S3C2410
352 default USB_GADGET
353 select USB_GADGET_SELECTED
354
355config USB_S3C2410_DEBUG 280config USB_S3C2410_DEBUG
356 boolean "S3C2410 udc debug messages" 281 boolean "S3C2410 udc debug messages"
357 depends on USB_GADGET_S3C2410 282 depends on USB_S3C2410
358 283
359config USB_GADGET_S3C_HSUDC 284config USB_S3C_HSUDC
360 boolean "S3C2416, S3C2443 and S3C2450 USB Device Controller" 285 tristate "S3C2416, S3C2443 and S3C2450 USB Device Controller"
361 depends on ARCH_S3C2410 286 depends on ARCH_S3C2410
362 select USB_GADGET_DUALSPEED 287 select USB_GADGET_DUALSPEED
363 help 288 help
@@ -367,41 +292,29 @@ config USB_GADGET_S3C_HSUDC
367 292
368 This driver has been tested on S3C2416 and S3C2450 processors. 293 This driver has been tested on S3C2416 and S3C2450 processors.
369 294
370config USB_S3C_HSUDC 295config USB_PXA_U2O
371 tristate 296 tristate "PXA9xx Processor USB2.0 controller"
372 depends on USB_GADGET_S3C_HSUDC 297 depends on ARCH_MMP
373 default USB_GADGET
374 select USB_GADGET_SELECTED
375
376config USB_GADGET_PXA_U2O
377 boolean "PXA9xx Processor USB2.0 controller"
378 select USB_GADGET_DUALSPEED 298 select USB_GADGET_DUALSPEED
379 help 299 help
380 PXA9xx Processor series include a high speed USB2.0 device 300 PXA9xx Processor series include a high speed USB2.0 device
381 controller, which support high speed and full speed USB peripheral. 301 controller, which support high speed and full speed USB peripheral.
382 302
383config USB_PXA_U2O
384 tristate
385 depends on USB_GADGET_PXA_U2O
386 default USB_GADGET
387 select USB_GADGET_SELECTED
388
389# 303#
390# Controllers available in both integrated and discrete versions 304# Controllers available in both integrated and discrete versions
391# 305#
392 306
393# musb builds in ../musb along with host support 307# musb builds in ../musb along with host support
394config USB_GADGET_MUSB_HDRC 308config USB_GADGET_MUSB_HDRC
395 boolean "Inventra HDRC USB Peripheral (TI, ADI, ...)" 309 tristate "Inventra HDRC USB Peripheral (TI, ADI, ...)"
396 depends on USB_MUSB_HDRC && (USB_MUSB_PERIPHERAL || USB_MUSB_OTG) 310 depends on USB_MUSB_HDRC && (USB_MUSB_PERIPHERAL || USB_MUSB_OTG)
397 select USB_GADGET_DUALSPEED 311 select USB_GADGET_DUALSPEED
398 select USB_GADGET_SELECTED
399 help 312 help
400 This OTG-capable silicon IP is used in dual designs including 313 This OTG-capable silicon IP is used in dual designs including
401 the TI DaVinci, OMAP 243x, OMAP 343x, TUSB 6010, and ADI Blackfin 314 the TI DaVinci, OMAP 243x, OMAP 343x, TUSB 6010, and ADI Blackfin
402 315
403config USB_GADGET_M66592 316config USB_M66592
404 boolean "Renesas M66592 USB Peripheral Controller" 317 tristate "Renesas M66592 USB Peripheral Controller"
405 select USB_GADGET_DUALSPEED 318 select USB_GADGET_DUALSPEED
406 help 319 help
407 M66592 is a discrete USB peripheral controller chip that 320 M66592 is a discrete USB peripheral controller chip that
@@ -412,18 +325,12 @@ config USB_GADGET_M66592
412 dynamically linked module called "m66592_udc" and force all 325 dynamically linked module called "m66592_udc" and force all
413 gadget drivers to also be dynamically linked. 326 gadget drivers to also be dynamically linked.
414 327
415config USB_M66592
416 tristate
417 depends on USB_GADGET_M66592
418 default USB_GADGET
419 select USB_GADGET_SELECTED
420
421# 328#
422# Controllers available only in discrete form (and all PCI controllers) 329# Controllers available only in discrete form (and all PCI controllers)
423# 330#
424 331
425config USB_GADGET_AMD5536UDC 332config USB_AMD5536UDC
426 boolean "AMD5536 UDC" 333 tristate "AMD5536 UDC"
427 depends on PCI 334 depends on PCI
428 select USB_GADGET_DUALSPEED 335 select USB_GADGET_DUALSPEED
429 help 336 help
@@ -437,14 +344,8 @@ config USB_GADGET_AMD5536UDC
437 dynamically linked module called "amd5536udc" and force all 344 dynamically linked module called "amd5536udc" and force all
438 gadget drivers to also be dynamically linked. 345 gadget drivers to also be dynamically linked.
439 346
440config USB_AMD5536UDC 347config USB_FSL_QE
441 tristate 348 tristate "Freescale QE/CPM USB Device Controller"
442 depends on USB_GADGET_AMD5536UDC
443 default USB_GADGET
444 select USB_GADGET_SELECTED
445
446config USB_GADGET_FSL_QE
447 boolean "Freescale QE/CPM USB Device Controller"
448 depends on FSL_SOC && (QUICC_ENGINE || CPM) 349 depends on FSL_SOC && (QUICC_ENGINE || CPM)
449 help 350 help
450 Some of Freescale PowerPC processors have a Full Speed 351 Some of Freescale PowerPC processors have a Full Speed
@@ -456,14 +357,8 @@ config USB_GADGET_FSL_QE
456 Set CONFIG_USB_GADGET to "m" to build this driver as a 357 Set CONFIG_USB_GADGET to "m" to build this driver as a
457 dynamically linked module called "fsl_qe_udc". 358 dynamically linked module called "fsl_qe_udc".
458 359
459config USB_FSL_QE 360config USB_CI13XXX_PCI
460 tristate 361 tristate "MIPS USB CI13xxx PCI UDC"
461 depends on USB_GADGET_FSL_QE
462 default USB_GADGET
463 select USB_GADGET_SELECTED
464
465config USB_GADGET_CI13XXX_PCI
466 boolean "MIPS USB CI13xxx PCI UDC"
467 depends on PCI 362 depends on PCI
468 select USB_GADGET_DUALSPEED 363 select USB_GADGET_DUALSPEED
469 help 364 help
@@ -474,14 +369,8 @@ config USB_GADGET_CI13XXX_PCI
474 dynamically linked module called "ci13xxx_udc" and force all 369 dynamically linked module called "ci13xxx_udc" and force all
475 gadget drivers to also be dynamically linked. 370 gadget drivers to also be dynamically linked.
476 371
477config USB_CI13XXX_PCI 372config USB_NET2272
478 tristate 373 tristate "PLX NET2272"
479 depends on USB_GADGET_CI13XXX_PCI
480 default USB_GADGET
481 select USB_GADGET_SELECTED
482
483config USB_GADGET_NET2272
484 boolean "PLX NET2272"
485 select USB_GADGET_DUALSPEED 374 select USB_GADGET_DUALSPEED
486 help 375 help
487 PLX NET2272 is a USB peripheral controller which supports 376 PLX NET2272 is a USB peripheral controller which supports
@@ -493,9 +382,9 @@ config USB_GADGET_NET2272
493 dynamically linked module called "net2272" and force all 382 dynamically linked module called "net2272" and force all
494 gadget drivers to also be dynamically linked. 383 gadget drivers to also be dynamically linked.
495 384
496config USB_GADGET_NET2272_DMA 385config USB_NET2272_DMA
497 boolean "Support external DMA controller" 386 boolean "Support external DMA controller"
498 depends on USB_GADGET_NET2272 387 depends on USB_NET2272
499 help 388 help
500 The NET2272 part can optionally support an external DMA 389 The NET2272 part can optionally support an external DMA
501 controller, but your board has to have support in the 390 controller, but your board has to have support in the
@@ -503,14 +392,8 @@ config USB_GADGET_NET2272_DMA
503 392
504 If unsure, say "N" here. The driver works fine in PIO mode. 393 If unsure, say "N" here. The driver works fine in PIO mode.
505 394
506config USB_NET2272 395config USB_NET2280
507 tristate 396 tristate "NetChip 228x"
508 depends on USB_GADGET_NET2272
509 default USB_GADGET
510 select USB_GADGET_SELECTED
511
512config USB_GADGET_NET2280
513 boolean "NetChip 228x"
514 depends on PCI 397 depends on PCI
515 select USB_GADGET_DUALSPEED 398 select USB_GADGET_DUALSPEED
516 help 399 help
@@ -525,14 +408,8 @@ config USB_GADGET_NET2280
525 dynamically linked module called "net2280" and force all 408 dynamically linked module called "net2280" and force all
526 gadget drivers to also be dynamically linked. 409 gadget drivers to also be dynamically linked.
527 410
528config USB_NET2280 411config USB_GOKU
529 tristate 412 tristate "Toshiba TC86C001 'Goku-S'"
530 depends on USB_GADGET_NET2280
531 default USB_GADGET
532 select USB_GADGET_SELECTED
533
534config USB_GADGET_GOKU
535 boolean "Toshiba TC86C001 'Goku-S'"
536 depends on PCI 413 depends on PCI
537 help 414 help
538 The Toshiba TC86C001 is a PCI device which includes controllers 415 The Toshiba TC86C001 is a PCI device which includes controllers
@@ -545,14 +422,8 @@ config USB_GADGET_GOKU
545 dynamically linked module called "goku_udc" and to force all 422 dynamically linked module called "goku_udc" and to force all
546 gadget drivers to also be dynamically linked. 423 gadget drivers to also be dynamically linked.
547 424
548config USB_GOKU 425config USB_LANGWELL
549 tristate 426 tristate "Intel Langwell USB Device Controller"
550 depends on USB_GADGET_GOKU
551 default USB_GADGET
552 select USB_GADGET_SELECTED
553
554config USB_GADGET_LANGWELL
555 boolean "Intel Langwell USB Device Controller"
556 depends on PCI 427 depends on PCI
557 select USB_GADGET_DUALSPEED 428 select USB_GADGET_DUALSPEED
558 help 429 help
@@ -566,14 +437,8 @@ config USB_GADGET_LANGWELL
566 dynamically linked module called "langwell_udc" and force all 437 dynamically linked module called "langwell_udc" and force all
567 gadget drivers to also be dynamically linked. 438 gadget drivers to also be dynamically linked.
568 439
569config USB_LANGWELL 440config USB_EG20T
570 tristate 441 tristate "Intel EG20T PCH/OKI SEMICONDUCTOR ML7213 IOH UDC"
571 depends on USB_GADGET_LANGWELL
572 default USB_GADGET
573 select USB_GADGET_SELECTED
574
575config USB_GADGET_EG20T
576 boolean "Intel EG20T PCH/OKI SEMICONDUCTOR ML7213 IOH UDC"
577 depends on PCI 442 depends on PCI
578 select USB_GADGET_DUALSPEED 443 select USB_GADGET_DUALSPEED
579 help 444 help
@@ -594,14 +459,8 @@ config USB_GADGET_EG20T
594 ML7213 is companion chip for Intel Atom E6xx series. 459 ML7213 is companion chip for Intel Atom E6xx series.
595 ML7213 is completely compatible for Intel EG20T PCH. 460 ML7213 is completely compatible for Intel EG20T PCH.
596 461
597config USB_EG20T 462config USB_CI13XXX_MSM
598 tristate 463 tristate "MIPS USB CI13xxx for MSM"
599 depends on USB_GADGET_EG20T
600 default USB_GADGET
601 select USB_GADGET_SELECTED
602
603config USB_GADGET_CI13XXX_MSM
604 boolean "MIPS USB CI13xxx for MSM"
605 depends on ARCH_MSM 464 depends on ARCH_MSM
606 select USB_GADGET_DUALSPEED 465 select USB_GADGET_DUALSPEED
607 select USB_MSM_OTG 466 select USB_MSM_OTG
@@ -617,18 +476,12 @@ config USB_GADGET_CI13XXX_MSM
617 dynamically linked module called "ci13xxx_msm" and force all 476 dynamically linked module called "ci13xxx_msm" and force all
618 gadget drivers to also be dynamically linked. 477 gadget drivers to also be dynamically linked.
619 478
620config USB_CI13XXX_MSM
621 tristate
622 depends on USB_GADGET_CI13XXX_MSM
623 default USB_GADGET
624 select USB_GADGET_SELECTED
625
626# 479#
627# LAST -- dummy/emulated controller 480# LAST -- dummy/emulated controller
628# 481#
629 482
630config USB_GADGET_DUMMY_HCD 483config USB_DUMMY_HCD
631 boolean "Dummy HCD (DEVELOPMENT)" 484 tristate "Dummy HCD (DEVELOPMENT)"
632 depends on USB=y || (USB=m && USB_GADGET=m) 485 depends on USB=y || (USB=m && USB_GADGET=m)
633 select USB_GADGET_DUALSPEED 486 select USB_GADGET_DUALSPEED
634 select USB_GADGET_SUPERSPEED 487 select USB_GADGET_SUPERSPEED
@@ -638,11 +491,11 @@ config USB_GADGET_DUMMY_HCD
638 side is the master; the gadget side is the slave. Gadget drivers 491 side is the master; the gadget side is the slave. Gadget drivers
639 can be high, full, or low speed; and they have access to endpoints 492 can be high, full, or low speed; and they have access to endpoints
640 like those from NET2280, PXA2xx, or SA1100 hardware. 493 like those from NET2280, PXA2xx, or SA1100 hardware.
641 494
642 This may help in some stages of creating a driver to embed in a 495 This may help in some stages of creating a driver to embed in a
643 Linux device, since it lets you debug several parts of the gadget 496 Linux device, since it lets you debug several parts of the gadget
644 driver without its hardware or drivers being involved. 497 driver without its hardware or drivers being involved.
645 498
646 Since such a gadget side driver needs to interoperate with a host 499 Since such a gadget side driver needs to interoperate with a host
647 side Linux-USB device driver, this may help to debug both sides 500 side Linux-USB device driver, this may help to debug both sides
648 of a USB protocol stack. 501 of a USB protocol stack.
@@ -651,12 +504,6 @@ config USB_GADGET_DUMMY_HCD
651 dynamically linked module called "dummy_hcd" and force all 504 dynamically linked module called "dummy_hcd" and force all
652 gadget drivers to also be dynamically linked. 505 gadget drivers to also be dynamically linked.
653 506
654config USB_DUMMY_HCD
655 tristate
656 depends on USB_GADGET_DUMMY_HCD
657 default USB_GADGET
658 select USB_GADGET_SELECTED
659
660# NOTE: Please keep dummy_hcd LAST so that "real hardware" appears 507# NOTE: Please keep dummy_hcd LAST so that "real hardware" appears
661# first and will be selected by default. 508# first and will be selected by default.
662 509
@@ -678,7 +525,7 @@ config USB_GADGET_SUPERSPEED
678# 525#
679choice 526choice
680 tristate "USB Gadget Drivers" 527 tristate "USB Gadget Drivers"
681 depends on USB_GADGET && USB_GADGET_SELECTED 528 depends on USB_GADGET
682 default USB_ETH 529 default USB_ETH
683 help 530 help
684 A Linux "Gadget Driver" talks to the USB Peripheral Controller 531 A Linux "Gadget Driver" talks to the USB Peripheral Controller