123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121 |
- #
- # USB Gadget support on a system involves
- # (a) a peripheral controller, and
- # (b) the gadget driver using it.
- #
- # NOTE: Gadget support ** DOES NOT ** depend on host-side CONFIG_USB !!
- #
- # - Host systems (like PCs) need CONFIG_USB (with "A" jacks).
- # - Peripherals (like PDAs) need CONFIG_USB_GADGET (with "B" jacks).
- # - Some systems have both kinds of controllers.
- #
- # 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).
- #
- menuconfig USB_GADGET
- bool "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.
- The USB hardware is asymmetric, which makes it easier to set up:
- you can't connect a "to-the-host" connector to a peripheral.
- U-Boot can run in the host, or in the peripheral. In both cases
- you need a low level bus controller driver, and some software
- talking to it. Peripheral controllers are often discrete silicon,
- or are integrated with the CPU in a microcontroller. The more
- familiar host side controllers have names like "EHCI", "OHCI",
- or "UHCI", and are usually integrated into southbridges on PC
- motherboards.
- Enable this configuration option if you want to run U-Boot inside
- a USB peripheral device. Configure one hardware driver for your
- peripheral/device side bus controller, and a "gadget driver" for
- your peripheral protocol.
- if USB_GADGET
- config USB_GADGET_ATMEL_USBA
- bool "Atmel USBA"
- select USB_GADGET_DUALSPEED
- help
- USBA is the integrated high-speed USB Device controller on
- the AT32AP700x, some AT91SAM9 and AT91CAP9 processors from Atmel.
- config USB_GADGET_BCM_UDC_OTG_PHY
- bool "Broadcom UDC OTG PHY"
- help
- Enable the Broadcom UDC OTG physical device interface.
- config USB_GADGET_DWC2_OTG
- bool "DesignWare USB2.0 HS OTG controller (gadget mode)"
- select USB_GADGET_DUALSPEED
- help
- The Designware USB2.0 high-speed gadget controller
- integrated into many SoCs. Select this option if you want the
- driver to operate in Peripheral mode. This option requires
- USB_GADGET to be enabled.
- if USB_GADGET_DWC2_OTG
- config USB_GADGET_DWC2_OTG_PHY_BUS_WIDTH_8
- bool "DesignWare USB2.0 HS OTG controller 8-bit PHY bus width"
- help
- Set the Designware USB2.0 high-speed OTG controller
- PHY interface width to 8 bits, rather than the default (16 bits).
- endif # USB_GADGET_DWC2_OTG
- config CI_UDC
- bool "ChipIdea device controller"
- select USB_GADGET_DUALSPEED
- help
- Say Y here to enable device controller functionality of the
- ChipIdea driver.
- config USB_GADGET_VBUS_DRAW
- int "Maximum VBUS Power usage (2-500 mA)"
- range 2 500
- default 2
- help
- Some devices need to draw power from USB when they are
- configured, perhaps to operate circuitry or to recharge
- batteries. This is in addition to any local power supply,
- such as an AC adapter or batteries.
- Enter the maximum power your device draws through USB, in
- milliAmperes. The permitted range of values is 2 - 500 mA;
- 0 mA would be legal, but can make some hosts misbehave.
- This value will be used except for system-specific gadget
- drivers that have more specific information.
- # Selected by UDC drivers that support high-speed operation.
- config USB_GADGET_DUALSPEED
- bool
- config USB_GADGET_DOWNLOAD
- bool "Enable USB download gadget"
- help
- Composite USB download gadget support (g_dnl) for download functions.
- This code works on top of composite gadget.
- if USB_GADGET_DOWNLOAD
- config G_DNL_MANUFACTURER
- string "Vendor name of USB device"
- config G_DNL_VENDOR_NUM
- hex "Vendor ID of USB device"
- config G_DNL_PRODUCT_NUM
- hex "Product ID of USB device"
- config USBNET_DEVADDR
- string "USB Gadget Ethernet device mac address"
- default "de:ad:be:ef:00:01"
- endif # USB_GADGET_DOWNLOAD
- endif # USB_GADGET
|