]> err.no Git - linux-2.6/blobdiff - drivers/usb/gadget/Kconfig
usb ethernet gadget: split CDC Ethernet function
[linux-2.6] / drivers / usb / gadget / Kconfig
index f81d08d6538b6d34ce9d112a18de3dec909d096f..d6bab0d5f453ba458eec51e044f40e72a5e96a7f 100644 (file)
 # With help from a special transceiver and a "Mini-AB" jack, systems with
 # both kinds of controller can also support "USB On-the-Go" (CONFIG_USB_OTG).
 #
-menu "USB Gadget Support"
 
-config USB_GADGET
-       tristate "Support for USB Gadgets"
+menuconfig USB_GADGET
+       tristate "USB Gadget Support"
        help
           USB is a master/slave protocol, organized with one master
           host (such as a PC) controlling up to 127 peripheral devices.
@@ -42,9 +41,11 @@ config USB_GADGET
           For more information, see <http://www.linux-usb.org/gadget> and
           the kernel DocBook documentation for this API.
 
+if USB_GADGET
+
 config USB_GADGET_DEBUG
-       boolean "Debugging messages"
-       depends on USB_GADGET && DEBUG_KERNEL && EXPERIMENTAL
+       boolean "Debugging messages (DEVELOPMENT)"
+       depends on USB_GADGET && DEBUG_KERNEL
        help
           Many controller and gadget drivers will print some debugging
           messages if you use this option to ask for those messages.
@@ -57,7 +58,7 @@ config USB_GADGET_DEBUG
           production build.
 
 config USB_GADGET_DEBUG_FILES
-       boolean "Debugging information files"
+       boolean "Debugging information files (DEVELOPMENT)"
        depends on USB_GADGET && PROC_FS
        help
           Some of the drivers in the "gadget" framework can expose
@@ -68,7 +69,7 @@ config USB_GADGET_DEBUG_FILES
           here.  If in doubt, or to conserve kernel memory, say "N".
 
 config USB_GADGET_DEBUG_FS
-       boolean "Debugging information files in debugfs"
+       boolean "Debugging information files in debugfs (DEVELOPMENT)"
        depends on USB_GADGET && DEBUG_FS
        help
           Some of the drivers in the "gadget" framework can expose
@@ -117,10 +118,10 @@ config USB_AMD5536UDC
 config USB_GADGET_ATMEL_USBA
        boolean "Atmel USBA"
        select USB_GADGET_DUALSPEED
-       depends on AVR32
+       depends on AVR32 || ARCH_AT91CAP9 || ARCH_AT91SAM9RL
        help
          USBA is the integrated high-speed USB Device controller on
-         the AT32AP700x processors from Atmel.
+         the AT32AP700x, some AT91SAM9 and AT91CAP9 processors from Atmel.
 
 config USB_ATMEL_USBA
        tristate
@@ -130,7 +131,7 @@ config USB_ATMEL_USBA
 
 config USB_GADGET_FSL_USB2
        boolean "Freescale Highspeed USB DR Peripheral Controller"
-       depends on MPC834x || PPC_MPC831x
+       depends on FSL_SOC
        select USB_GADGET_DUALSPEED
        help
           Some of Freescale PowerPC processors have a High Speed
@@ -171,7 +172,7 @@ config USB_NET2280
        default USB_GADGET
        select USB_GADGET_SELECTED
 
-config USB_GADGET_PXA2XX
+config USB_GADGET_PXA25X
        boolean "PXA 25x or IXP 4xx"
        depends on (ARCH_PXA && PXA25x) || ARCH_IXP4XX
        help
@@ -183,19 +184,19 @@ config USB_GADGET_PXA2XX
           zero (for control transfers).
 
           Say "y" to link the driver statically, or "m" to build a
-          dynamically linked module called "pxa2xx_udc" and force all
+          dynamically linked module called "pxa25x_udc" and force all
           gadget drivers to also be dynamically linked.
 
-config USB_PXA2XX
+config USB_PXA25X
        tristate
-       depends on USB_GADGET_PXA2XX
+       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_PXA2XX_SMALL
-       depends on USB_GADGET_PXA2XX
+config USB_PXA25X_SMALL
+       depends on USB_GADGET_PXA25X
        bool
        default n if USB_ETH_RNDIS
        default y if USB_ZERO
@@ -220,6 +221,36 @@ config USB_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
@@ -308,7 +339,7 @@ config USB_S3C2410_DEBUG
 
 config USB_GADGET_AT91
        boolean "AT91 USB Device Port"
-       depends on ARCH_AT91 && !ARCH_AT91SAM9RL
+       depends on ARCH_AT91 && !ARCH_AT91SAM9RL && !ARCH_AT91CAP9
        select USB_GADGET_SELECTED
        help
           Many Atmel AT91 processors (such as the AT91RM2000) have a
@@ -326,7 +357,7 @@ config USB_AT91
 
 config USB_GADGET_DUMMY_HCD
        boolean "Dummy HCD (DEVELOPMENT)"
-       depends on (USB=y || (USB=m && USB_GADGET=m)) && EXPERIMENTAL
+       depends on USB=y || (USB=m && USB_GADGET=m)
        select USB_GADGET_DUALSPEED
        help
          This host controller driver emulates USB, looping all data transfer
@@ -393,7 +424,6 @@ choice
 
 config USB_ZERO
        tristate "Gadget Zero (DEVELOPMENT)"
-       depends on EXPERIMENTAL
        help
          Gadget Zero is a two-configuration device.  It either sinks and
          sources bulk data; or it loops back a configurable number of
@@ -457,8 +487,8 @@ config USB_ETH
          dynamically linked module called "g_ether".
 
 config USB_ETH_RNDIS
-       bool "RNDIS support (EXPERIMENTAL)"
-       depends on USB_ETH && EXPERIMENTAL
+       bool "RNDIS support"
+       depends on USB_ETH
        default y
        help
           Microsoft Windows XP bundles the "Remote NDIS" (RNDIS) protocol,
@@ -484,6 +514,9 @@ config USB_GADGETFS
          All endpoints, transfer speeds, and transfer types supported by
          the hardware are available, through read() and write() calls.
 
+         Currently, this option is still labelled as EXPERIMENTAL because
+         of existing race conditions in the underlying in-kernel AIO core.
+
          Say "y" to link the driver statically, or "m" to build a
          dynamically linked module called "gadgetfs".
 
@@ -538,6 +571,20 @@ config USB_MIDI_GADGET
          Say "y" to link the driver statically, or "m" to build a
          dynamically linked module called "g_midi".
 
+config USB_G_PRINTER
+       tristate "Printer Gadget"
+       help
+         The Printer Gadget channels data between the USB host and a
+         userspace program driving the print engine. The user space
+         program reads and writes the device file /dev/g_printer to
+         receive or send printer data. It can use ioctl calls to
+         the device file to get or set printer status.
+
+         Say "y" to link the driver statically, or "m" to build a
+         dynamically linked module called "g_printer".
+
+         For more information, see Documentation/usb/gadget_printer.txt
+         which includes sample code for accessing the device file.
 
 # put drivers that need isochronous transfer support (for audio
 # or video class gadget drivers), or specific hardware, here.
@@ -546,4 +593,4 @@ config USB_MIDI_GADGET
 
 endchoice
 
-endmenu
+endif # USB_GADGET