diff options
| author | Felipe Balbi <balbi@ti.com> | 2011-06-22 10:28:10 -0400 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@suse.de> | 2011-07-01 17:31:11 -0400 |
| commit | 193ab2a6070039e7ee2b9b9bebea754a7c52fd1b (patch) | |
| tree | 7244a04a5d0db79c5f21664a2b971c02cf56622a | |
| parent | ee34e51a7458ba59af65d1b0eb9c7fa9d19a7586 (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>
| -rw-r--r-- | drivers/usb/Kconfig | 2 | ||||
| -rw-r--r-- | drivers/usb/gadget/Kconfig | 285 | ||||
| -rw-r--r-- | drivers/usb/renesas_usbhs/Kconfig | 16 |
3 files changed, 66 insertions, 237 deletions
diff --git a/drivers/usb/Kconfig b/drivers/usb/Kconfig index 48f1781352f1..8cd999a217b6 100644 --- a/drivers/usb/Kconfig +++ b/drivers/usb/Kconfig | |||
| @@ -118,8 +118,6 @@ source "drivers/usb/host/Kconfig" | |||
| 118 | 118 | ||
| 119 | source "drivers/usb/musb/Kconfig" | 119 | source "drivers/usb/musb/Kconfig" |
| 120 | 120 | ||
| 121 | source "drivers/usb/renesas_usbhs/Kconfig" | ||
| 122 | |||
| 123 | source "drivers/usb/class/Kconfig" | 121 | source "drivers/usb/class/Kconfig" |
| 124 | 122 | ||
| 125 | source "drivers/usb/storage/Kconfig" | 123 | source "drivers/usb/storage/Kconfig" |
diff --git a/drivers/usb/gadget/Kconfig b/drivers/usb/gadget/Kconfig index 86f64caeafc1..46a253adde31 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 | ||
| 99 | config 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 | ||
| 125 | config USB_GADGET_AT91 | 122 | config 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 | ||
| 138 | config USB_AT91 | 134 | config USB_ATMEL_USBA |
| 139 | tristate | 135 | tristate "Atmel USBA" |
| 140 | depends on USB_GADGET_AT91 | ||
| 141 | default USB_GADGET | ||
| 142 | |||
| 143 | config 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 | ||
| 151 | config USB_ATMEL_USBA | 142 | config 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 | |||
| 157 | config 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 | ||
| 173 | config USB_FSL_USB2 | 158 | config 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 | |||
| 179 | config 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 | ||
| 185 | config USB_FUSB300 | 164 | config 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 | |||
| 191 | config 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 | ||
| 207 | config USB_OMAP | 180 | config 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 | |||
| 213 | config 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 | ||
| 229 | config 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 |
| 237 | config USB_PXA25X_SMALL | 198 | config 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 | ||
| 245 | config USB_GADGET_R8A66597 | 206 | config 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 | ||
| 257 | config USB_R8A66597 | 218 | config 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 | |||
| 263 | config 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 | ||
| 275 | config 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 | ||
| 281 | config USB_GADGET_PXA27X | 230 | config 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 | ||
| 296 | config USB_PXA27X | 245 | config 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 | |||
| 302 | config 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 | ||
| 311 | config USB_S3C_HSOTG | 254 | config 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 | |||
| 317 | config 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 | ||
| 332 | config USB_IMX | 269 | config 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 | |||
| 338 | config 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 | ||
| 349 | config USB_S3C2410 | ||
| 350 | tristate | ||
| 351 | depends on USB_GADGET_S3C2410 | ||
| 352 | default USB_GADGET | ||
| 353 | select USB_GADGET_SELECTED | ||
| 354 | |||
| 355 | config USB_S3C2410_DEBUG | 280 | config 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 | ||
| 359 | config USB_GADGET_S3C_HSUDC | 284 | config 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 | ||
| 370 | config USB_S3C_HSUDC | 295 | config 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 | |||
| 376 | config 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 | ||
| 383 | config 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 |
| 394 | config USB_GADGET_MUSB_HDRC | 308 | config 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 | ||
| 403 | config USB_GADGET_M66592 | 316 | config 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 | ||
| 415 | config 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 | ||
| 425 | config USB_GADGET_AMD5536UDC | 332 | config 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 | ||
| 440 | config USB_AMD5536UDC | 347 | config 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 | |||
| 446 | config 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 | ||
| 459 | config USB_FSL_QE | 360 | config 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 | |||
| 465 | config 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 | ||
| 477 | config USB_CI13XXX_PCI | 372 | config 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 | |||
| 483 | config 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 | ||
| 496 | config USB_GADGET_NET2272_DMA | 385 | config 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 | ||
| 506 | config USB_NET2272 | 395 | config USB_NET2280 |
| 507 | tristate | 396 | tristate "NetChip 228x" |
| 508 | depends on USB_GADGET_NET2272 | ||
| 509 | default USB_GADGET | ||
| 510 | select USB_GADGET_SELECTED | ||
| 511 | |||
| 512 | config 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 | ||
| 528 | config USB_NET2280 | 411 | config 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 | |||
| 534 | config 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 | ||
| 548 | config USB_GOKU | 425 | config 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 | |||
| 554 | config 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 | ||
| 569 | config USB_LANGWELL | 440 | config 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 | |||
| 575 | config 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 | ||
| 597 | config USB_EG20T | 462 | config 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 | |||
| 603 | config 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 | ||
| 620 | config 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 | ||
| 630 | config USB_GADGET_DUMMY_HCD | 483 | config 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 | ||
| 654 | config 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 | # |
| 679 | choice | 526 | choice |
| 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 |
diff --git a/drivers/usb/renesas_usbhs/Kconfig b/drivers/usb/renesas_usbhs/Kconfig deleted file mode 100644 index b2e64918884c..000000000000 --- a/drivers/usb/renesas_usbhs/Kconfig +++ /dev/null | |||
| @@ -1,16 +0,0 @@ | |||
| 1 | # | ||
| 2 | # Renesas USB Controller Drivers | ||
| 3 | # | ||
| 4 | |||
| 5 | config USB_RENESAS_USBHS | ||
| 6 | tristate 'Renesas USBHS controller' | ||
| 7 | depends on SUPERH || ARCH_SHMOBILE | ||
| 8 | default n | ||
| 9 | help | ||
| 10 | Renesas USBHS is a discrete USB host and peripheral controller chip | ||
| 11 | that supports both full and high speed USB 2.0 data transfers. | ||
| 12 | It has nine or more configurable endpoints, and endpoint zero. | ||
| 13 | |||
| 14 | Say "y" to link the driver statically, or "m" to build a | ||
| 15 | dynamically linked module called "renesas_usbhs" and force all | ||
| 16 | gadget drivers to also be dynamically linked. | ||
