mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-05 16:37:50 +00:00
usb: gadget Kconfig cleanup
This reorders the list of USB peripheral controller drivers so it's more common for the initial (default) value to be relevant: put the SOC integrated silicon up front, discrete stuff last. Alphabetize. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
2714021937
commit
a7a19fac8a
1 changed files with 178 additions and 155 deletions
|
@ -85,6 +85,13 @@ config USB_GADGET_SELECTED
|
||||||
#
|
#
|
||||||
# USB Peripheral Controller Support
|
# USB Peripheral Controller Support
|
||||||
#
|
#
|
||||||
|
# The order here is alphabetical, except that integrated controllers go
|
||||||
|
# before discrete ones so they will be the initial/default value:
|
||||||
|
# - integrated/SOC controllers first
|
||||||
|
# - licensed IP used in both SOC and discrete versions
|
||||||
|
# - discrete ones (including all PCI-only controllers)
|
||||||
|
# - debug/dummy gadget+hcd is last.
|
||||||
|
#
|
||||||
choice
|
choice
|
||||||
prompt "USB Peripheral Controller"
|
prompt "USB Peripheral Controller"
|
||||||
depends on USB_GADGET
|
depends on USB_GADGET
|
||||||
|
@ -94,26 +101,27 @@ choice
|
||||||
Many controller drivers are platform-specific; these
|
Many controller drivers are platform-specific; these
|
||||||
often need board-specific hooks.
|
often need board-specific hooks.
|
||||||
|
|
||||||
config USB_GADGET_AMD5536UDC
|
#
|
||||||
boolean "AMD5536 UDC"
|
# Integrated controllers
|
||||||
depends on PCI
|
#
|
||||||
select USB_GADGET_DUALSPEED
|
|
||||||
|
config USB_GADGET_AT91
|
||||||
|
boolean "Atmel AT91 USB Device Port"
|
||||||
|
depends on ARCH_AT91 && !ARCH_AT91SAM9RL && !ARCH_AT91CAP9
|
||||||
|
select USB_GADGET_SELECTED
|
||||||
help
|
help
|
||||||
The AMD5536 UDC is part of the AMD Geode CS5536, an x86 southbridge.
|
Many Atmel AT91 processors (such as the AT91RM2000) have a
|
||||||
It is a USB Highspeed DMA capable USB device controller. Beside ep0
|
full speed USB Device Port with support for five configurable
|
||||||
it provides 4 IN and 4 OUT endpoints (bulk or interrupt type).
|
endpoints (plus endpoint zero).
|
||||||
The UDC port supports OTG operation, and may be used as a host port
|
|
||||||
if it's not being used to implement peripheral or OTG roles.
|
|
||||||
|
|
||||||
Say "y" to link the driver statically, or "m" to build a
|
Say "y" to link the driver statically, or "m" to build a
|
||||||
dynamically linked module called "amd5536udc" and force all
|
dynamically linked module called "at91_udc" and force all
|
||||||
gadget drivers to also be dynamically linked.
|
gadget drivers to also be dynamically linked.
|
||||||
|
|
||||||
config USB_AMD5536UDC
|
config USB_AT91
|
||||||
tristate
|
tristate
|
||||||
depends on USB_GADGET_AMD5536UDC
|
depends on USB_GADGET_AT91
|
||||||
default USB_GADGET
|
default USB_GADGET
|
||||||
select USB_GADGET_SELECTED
|
|
||||||
|
|
||||||
config USB_GADGET_ATMEL_USBA
|
config USB_GADGET_ATMEL_USBA
|
||||||
boolean "Atmel USBA"
|
boolean "Atmel USBA"
|
||||||
|
@ -150,128 +158,6 @@ config USB_FSL_USB2
|
||||||
default USB_GADGET
|
default USB_GADGET
|
||||||
select USB_GADGET_SELECTED
|
select USB_GADGET_SELECTED
|
||||||
|
|
||||||
config USB_GADGET_NET2280
|
|
||||||
boolean "NetChip 228x"
|
|
||||||
depends on PCI
|
|
||||||
select USB_GADGET_DUALSPEED
|
|
||||||
help
|
|
||||||
NetChip 2280 / 2282 is a PCI based USB peripheral controller which
|
|
||||||
supports both full and high speed USB 2.0 data transfers.
|
|
||||||
|
|
||||||
It has six configurable endpoints, as well as endpoint zero
|
|
||||||
(for control transfers) and several endpoints with dedicated
|
|
||||||
functions.
|
|
||||||
|
|
||||||
Say "y" to link the driver statically, or "m" to build a
|
|
||||||
dynamically linked module called "net2280" and force all
|
|
||||||
gadget drivers to also be dynamically linked.
|
|
||||||
|
|
||||||
config USB_NET2280
|
|
||||||
tristate
|
|
||||||
depends on USB_GADGET_NET2280
|
|
||||||
default USB_GADGET
|
|
||||||
select USB_GADGET_SELECTED
|
|
||||||
|
|
||||||
config USB_GADGET_PXA25X
|
|
||||||
boolean "PXA 25x or IXP 4xx"
|
|
||||||
depends on (ARCH_PXA && PXA25x) || ARCH_IXP4XX
|
|
||||||
help
|
|
||||||
Intel's PXA 25x series XScale ARM-5TE processors include
|
|
||||||
an integrated full speed USB 1.1 device controller. The
|
|
||||||
controller in the IXP 4xx series is register-compatible.
|
|
||||||
|
|
||||||
It has fifteen fixed-function endpoints, as well as endpoint
|
|
||||||
zero (for control transfers).
|
|
||||||
|
|
||||||
Say "y" to link the driver statically, or "m" to build a
|
|
||||||
dynamically linked module called "pxa25x_udc" and force all
|
|
||||||
gadget drivers to also be dynamically linked.
|
|
||||||
|
|
||||||
config USB_PXA25X
|
|
||||||
tristate
|
|
||||||
depends on USB_GADGET_PXA25X
|
|
||||||
default USB_GADGET
|
|
||||||
select USB_GADGET_SELECTED
|
|
||||||
|
|
||||||
# if there's only one gadget driver, using only two bulk endpoints,
|
|
||||||
# don't waste memory for the other endpoints
|
|
||||||
config USB_PXA25X_SMALL
|
|
||||||
depends on USB_GADGET_PXA25X
|
|
||||||
bool
|
|
||||||
default n if USB_ETH_RNDIS
|
|
||||||
default y if USB_ZERO
|
|
||||||
default y if USB_ETH
|
|
||||||
default y if USB_G_SERIAL
|
|
||||||
|
|
||||||
config USB_GADGET_M66592
|
|
||||||
boolean "Renesas M66592 USB Peripheral Controller"
|
|
||||||
select USB_GADGET_DUALSPEED
|
|
||||||
help
|
|
||||||
M66592 is a discrete USB peripheral controller chip that
|
|
||||||
supports both full and high speed USB 2.0 data transfers.
|
|
||||||
It has seven configurable endpoints, and endpoint zero.
|
|
||||||
|
|
||||||
Say "y" to link the driver statically, or "m" to build a
|
|
||||||
dynamically linked module called "m66592_udc" and force all
|
|
||||||
gadget drivers to also be dynamically linked.
|
|
||||||
|
|
||||||
config USB_M66592
|
|
||||||
tristate
|
|
||||||
depends on USB_GADGET_M66592
|
|
||||||
default USB_GADGET
|
|
||||||
select USB_GADGET_SELECTED
|
|
||||||
|
|
||||||
config SUPERH_BUILT_IN_M66592
|
|
||||||
boolean "Enable SuperH built-in USB like the M66592"
|
|
||||||
depends on USB_GADGET_M66592 && CPU_SUBTYPE_SH7722
|
|
||||||
help
|
|
||||||
SH7722 has USB like the M66592.
|
|
||||||
|
|
||||||
The transfer rate is very slow when use "Ethernet Gadget".
|
|
||||||
However, this problem is improved if change a value of
|
|
||||||
NET_IP_ALIGN to 4.
|
|
||||||
|
|
||||||
config USB_GADGET_PXA27X
|
|
||||||
boolean "PXA 27x"
|
|
||||||
depends on ARCH_PXA && PXA27x
|
|
||||||
help
|
|
||||||
Intel's PXA 27x series XScale ARM v5TE processors include
|
|
||||||
an integrated full speed USB 1.1 device controller.
|
|
||||||
|
|
||||||
It has up to 23 endpoints, as well as endpoint zero (for
|
|
||||||
control transfers).
|
|
||||||
|
|
||||||
Say "y" to link the driver statically, or "m" to build a
|
|
||||||
dynamically linked module called "pxa27x_udc" and force all
|
|
||||||
gadget drivers to also be dynamically linked.
|
|
||||||
|
|
||||||
config USB_PXA27X
|
|
||||||
tristate
|
|
||||||
depends on USB_GADGET_PXA27X
|
|
||||||
default USB_GADGET
|
|
||||||
select USB_GADGET_SELECTED
|
|
||||||
|
|
||||||
config USB_GADGET_GOKU
|
|
||||||
boolean "Toshiba TC86C001 'Goku-S'"
|
|
||||||
depends on PCI
|
|
||||||
help
|
|
||||||
The Toshiba TC86C001 is a PCI device which includes controllers
|
|
||||||
for full speed USB devices, IDE, I2C, SIO, plus a USB host (OHCI).
|
|
||||||
|
|
||||||
The device controller has three configurable (bulk or interrupt)
|
|
||||||
endpoints, plus endpoint zero (for control transfers).
|
|
||||||
|
|
||||||
Say "y" to link the driver statically, or "m" to build a
|
|
||||||
dynamically linked module called "goku_udc" and to force all
|
|
||||||
gadget drivers to also be dynamically linked.
|
|
||||||
|
|
||||||
config USB_GOKU
|
|
||||||
tristate
|
|
||||||
depends on USB_GADGET_GOKU
|
|
||||||
default USB_GADGET
|
|
||||||
select USB_GADGET_SELECTED
|
|
||||||
|
|
||||||
|
|
||||||
config USB_GADGET_LH7A40X
|
config USB_GADGET_LH7A40X
|
||||||
boolean "LH7A40X"
|
boolean "LH7A40X"
|
||||||
depends on ARCH_LH7A40X
|
depends on ARCH_LH7A40X
|
||||||
|
@ -284,16 +170,6 @@ config USB_LH7A40X
|
||||||
default USB_GADGET
|
default USB_GADGET
|
||||||
select USB_GADGET_SELECTED
|
select USB_GADGET_SELECTED
|
||||||
|
|
||||||
# built in ../musb along with host support
|
|
||||||
config USB_GADGET_MUSB_HDRC
|
|
||||||
boolean "Inventra HDRC USB Peripheral (TI, ...)"
|
|
||||||
depends on USB_MUSB_HDRC && (USB_MUSB_PERIPHERAL || USB_MUSB_OTG)
|
|
||||||
select USB_GADGET_DUALSPEED
|
|
||||||
select USB_GADGET_SELECTED
|
|
||||||
help
|
|
||||||
This OTG-capable silicon IP is used in dual designs including
|
|
||||||
the TI DaVinci, OMAP 243x, OMAP 343x, and TUSB 6010.
|
|
||||||
|
|
||||||
config USB_GADGET_OMAP
|
config USB_GADGET_OMAP
|
||||||
boolean "OMAP USB Device Controller"
|
boolean "OMAP USB Device Controller"
|
||||||
depends on ARCH_OMAP
|
depends on ARCH_OMAP
|
||||||
|
@ -326,6 +202,57 @@ config USB_OTG
|
||||||
|
|
||||||
Select this only if your OMAP board has a Mini-AB connector.
|
Select this only if your OMAP board has a Mini-AB connector.
|
||||||
|
|
||||||
|
config USB_GADGET_PXA25X
|
||||||
|
boolean "PXA 25x or IXP 4xx"
|
||||||
|
depends on (ARCH_PXA && PXA25x) || ARCH_IXP4XX
|
||||||
|
help
|
||||||
|
Intel's PXA 25x series XScale ARM-5TE processors include
|
||||||
|
an integrated full speed USB 1.1 device controller. The
|
||||||
|
controller in the IXP 4xx series is register-compatible.
|
||||||
|
|
||||||
|
It has fifteen fixed-function endpoints, as well as endpoint
|
||||||
|
zero (for control transfers).
|
||||||
|
|
||||||
|
Say "y" to link the driver statically, or "m" to build a
|
||||||
|
dynamically linked module called "pxa25x_udc" and force all
|
||||||
|
gadget drivers to also be dynamically linked.
|
||||||
|
|
||||||
|
config USB_PXA25X
|
||||||
|
tristate
|
||||||
|
depends on USB_GADGET_PXA25X
|
||||||
|
default USB_GADGET
|
||||||
|
select USB_GADGET_SELECTED
|
||||||
|
|
||||||
|
# if there's only one gadget driver, using only two bulk endpoints,
|
||||||
|
# don't waste memory for the other endpoints
|
||||||
|
config USB_PXA25X_SMALL
|
||||||
|
depends on USB_GADGET_PXA25X
|
||||||
|
bool
|
||||||
|
default n if USB_ETH_RNDIS
|
||||||
|
default y if USB_ZERO
|
||||||
|
default y if USB_ETH
|
||||||
|
default y if USB_G_SERIAL
|
||||||
|
|
||||||
|
config USB_GADGET_PXA27X
|
||||||
|
boolean "PXA 27x"
|
||||||
|
depends on ARCH_PXA && PXA27x
|
||||||
|
help
|
||||||
|
Intel's PXA 27x series XScale ARM v5TE processors include
|
||||||
|
an integrated full speed USB 1.1 device controller.
|
||||||
|
|
||||||
|
It has up to 23 endpoints, as well as endpoint zero (for
|
||||||
|
control transfers).
|
||||||
|
|
||||||
|
Say "y" to link the driver statically, or "m" to build a
|
||||||
|
dynamically linked module called "pxa27x_udc" and force all
|
||||||
|
gadget drivers to also be dynamically linked.
|
||||||
|
|
||||||
|
config USB_PXA27X
|
||||||
|
tristate
|
||||||
|
depends on USB_GADGET_PXA27X
|
||||||
|
default USB_GADGET
|
||||||
|
select USB_GADGET_SELECTED
|
||||||
|
|
||||||
config USB_GADGET_S3C2410
|
config USB_GADGET_S3C2410
|
||||||
boolean "S3C2410 USB Device Controller"
|
boolean "S3C2410 USB Device Controller"
|
||||||
depends on ARCH_S3C2410
|
depends on ARCH_S3C2410
|
||||||
|
@ -347,23 +274,119 @@ config USB_S3C2410_DEBUG
|
||||||
boolean "S3C2410 udc debug messages"
|
boolean "S3C2410 udc debug messages"
|
||||||
depends on USB_GADGET_S3C2410
|
depends on USB_GADGET_S3C2410
|
||||||
|
|
||||||
config USB_GADGET_AT91
|
#
|
||||||
boolean "AT91 USB Device Port"
|
# Controllers available in both integrated and discrete versions
|
||||||
depends on ARCH_AT91 && !ARCH_AT91SAM9RL && !ARCH_AT91CAP9
|
#
|
||||||
|
|
||||||
|
# musb builds in ../musb along with host support
|
||||||
|
config USB_GADGET_MUSB_HDRC
|
||||||
|
boolean "Inventra HDRC USB Peripheral (TI, ...)"
|
||||||
|
depends on USB_MUSB_HDRC && (USB_MUSB_PERIPHERAL || USB_MUSB_OTG)
|
||||||
|
select USB_GADGET_DUALSPEED
|
||||||
select USB_GADGET_SELECTED
|
select USB_GADGET_SELECTED
|
||||||
help
|
help
|
||||||
Many Atmel AT91 processors (such as the AT91RM2000) have a
|
This OTG-capable silicon IP is used in dual designs including
|
||||||
full speed USB Device Port with support for five configurable
|
the TI DaVinci, OMAP 243x, OMAP 343x, and TUSB 6010.
|
||||||
endpoints (plus endpoint zero).
|
|
||||||
|
config USB_GADGET_M66592
|
||||||
|
boolean "Renesas M66592 USB Peripheral Controller"
|
||||||
|
select USB_GADGET_DUALSPEED
|
||||||
|
help
|
||||||
|
M66592 is a discrete USB peripheral controller chip that
|
||||||
|
supports both full and high speed USB 2.0 data transfers.
|
||||||
|
It has seven configurable endpoints, and endpoint zero.
|
||||||
|
|
||||||
Say "y" to link the driver statically, or "m" to build a
|
Say "y" to link the driver statically, or "m" to build a
|
||||||
dynamically linked module called "at91_udc" and force all
|
dynamically linked module called "m66592_udc" and force all
|
||||||
gadget drivers to also be dynamically linked.
|
gadget drivers to also be dynamically linked.
|
||||||
|
|
||||||
config USB_AT91
|
config USB_M66592
|
||||||
tristate
|
tristate
|
||||||
depends on USB_GADGET_AT91
|
depends on USB_GADGET_M66592
|
||||||
default USB_GADGET
|
default USB_GADGET
|
||||||
|
select USB_GADGET_SELECTED
|
||||||
|
|
||||||
|
config SUPERH_BUILT_IN_M66592
|
||||||
|
boolean "Enable SuperH built-in USB like the M66592"
|
||||||
|
depends on USB_GADGET_M66592 && CPU_SUBTYPE_SH7722
|
||||||
|
help
|
||||||
|
SH7722 has USB like the M66592.
|
||||||
|
|
||||||
|
The transfer rate is very slow when use "Ethernet Gadget".
|
||||||
|
However, this problem is improved if change a value of
|
||||||
|
NET_IP_ALIGN to 4.
|
||||||
|
|
||||||
|
#
|
||||||
|
# Controllers available only in discrete form (and all PCI controllers)
|
||||||
|
#
|
||||||
|
|
||||||
|
config USB_GADGET_AMD5536UDC
|
||||||
|
boolean "AMD5536 UDC"
|
||||||
|
depends on PCI
|
||||||
|
select USB_GADGET_DUALSPEED
|
||||||
|
help
|
||||||
|
The AMD5536 UDC is part of the AMD Geode CS5536, an x86 southbridge.
|
||||||
|
It is a USB Highspeed DMA capable USB device controller. Beside ep0
|
||||||
|
it provides 4 IN and 4 OUT endpoints (bulk or interrupt type).
|
||||||
|
The UDC port supports OTG operation, and may be used as a host port
|
||||||
|
if it's not being used to implement peripheral or OTG roles.
|
||||||
|
|
||||||
|
Say "y" to link the driver statically, or "m" to build a
|
||||||
|
dynamically linked module called "amd5536udc" and force all
|
||||||
|
gadget drivers to also be dynamically linked.
|
||||||
|
|
||||||
|
config USB_AMD5536UDC
|
||||||
|
tristate
|
||||||
|
depends on USB_GADGET_AMD5536UDC
|
||||||
|
default USB_GADGET
|
||||||
|
select USB_GADGET_SELECTED
|
||||||
|
|
||||||
|
config USB_GADGET_NET2280
|
||||||
|
boolean "NetChip 228x"
|
||||||
|
depends on PCI
|
||||||
|
select USB_GADGET_DUALSPEED
|
||||||
|
help
|
||||||
|
NetChip 2280 / 2282 is a PCI based USB peripheral controller which
|
||||||
|
supports both full and high speed USB 2.0 data transfers.
|
||||||
|
|
||||||
|
It has six configurable endpoints, as well as endpoint zero
|
||||||
|
(for control transfers) and several endpoints with dedicated
|
||||||
|
functions.
|
||||||
|
|
||||||
|
Say "y" to link the driver statically, or "m" to build a
|
||||||
|
dynamically linked module called "net2280" and force all
|
||||||
|
gadget drivers to also be dynamically linked.
|
||||||
|
|
||||||
|
config USB_NET2280
|
||||||
|
tristate
|
||||||
|
depends on USB_GADGET_NET2280
|
||||||
|
default USB_GADGET
|
||||||
|
select USB_GADGET_SELECTED
|
||||||
|
|
||||||
|
config USB_GADGET_GOKU
|
||||||
|
boolean "Toshiba TC86C001 'Goku-S'"
|
||||||
|
depends on PCI
|
||||||
|
help
|
||||||
|
The Toshiba TC86C001 is a PCI device which includes controllers
|
||||||
|
for full speed USB devices, IDE, I2C, SIO, plus a USB host (OHCI).
|
||||||
|
|
||||||
|
The device controller has three configurable (bulk or interrupt)
|
||||||
|
endpoints, plus endpoint zero (for control transfers).
|
||||||
|
|
||||||
|
Say "y" to link the driver statically, or "m" to build a
|
||||||
|
dynamically linked module called "goku_udc" and to force all
|
||||||
|
gadget drivers to also be dynamically linked.
|
||||||
|
|
||||||
|
config USB_GOKU
|
||||||
|
tristate
|
||||||
|
depends on USB_GADGET_GOKU
|
||||||
|
default USB_GADGET
|
||||||
|
select USB_GADGET_SELECTED
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# LAST -- dummy/emulated controller
|
||||||
|
#
|
||||||
|
|
||||||
config USB_GADGET_DUMMY_HCD
|
config USB_GADGET_DUMMY_HCD
|
||||||
boolean "Dummy HCD (DEVELOPMENT)"
|
boolean "Dummy HCD (DEVELOPMENT)"
|
||||||
|
|
Loading…
Reference in a new issue