diff options
Diffstat (limited to 'drivers/usb/gadget/Kconfig')
-rw-r--r-- | drivers/usb/gadget/Kconfig | 103 |
1 files changed, 100 insertions, 3 deletions
diff --git a/drivers/usb/gadget/Kconfig b/drivers/usb/gadget/Kconfig index a18e3c5dd82..3d83b8d0b31 100644 --- a/drivers/usb/gadget/Kconfig +++ b/drivers/usb/gadget/Kconfig @@ -109,8 +109,8 @@ config USB_GADGET_SELECTED # - discrete ones (including all PCI-only controllers) # - debug/dummy gadget+hcd is last. # -choice - prompt "USB Peripheral Controller" +menuconfig USB_PERIPHERAL_CONTROLLER + bool "USB Peripheral Controller" depends on USB_GADGET help A USB device uses a controller to talk to its host. @@ -122,6 +122,8 @@ choice # Integrated controllers # +if USB_PERIPHERAL_CONTROLLER + config USB_GADGET_AT91 boolean "Atmel AT91 USB Device Port" depends on ARCH_AT91 && !ARCH_AT91SAM9RL && !ARCH_AT91CAP9 && !ARCH_AT91SAM9G45 @@ -504,6 +506,101 @@ config USB_LANGWELL default USB_GADGET select USB_GADGET_SELECTED +menuconfig USB_GADGET_DWC_OTG + boolean "Synopsys DWC OTG Controller" + depends on 405EZ || 405EX || 460EX || APM82181 + select USB_GADGET_DUALSPEED + help + This driver provides USB Device Controller support for the + Synopsys DesignWare USB OTG Core used on the AMCC 405EZ/405EX/ + 460EX/APM82181. + + Note that on the 405EZ, this Core provides USB Device Controller + function only. It does not act as a true OTG device, and the + 'OTG' is slightly misleading. + +if USB_GADGET_DWC_OTG + +config USB_DWC_OTG + tristate + depends on USB_GADGET_DWC_OTG + default USB_GADGET + select USB_GADGET_SELECTED + +config DWC_LEGACY_405EX + bool "Enable 405EX Legacy Support (lower performance)" + default n + depends on 405EX + select DWC_SLAVE + help + Enable Legacy 405EX Chip support (Rev 1.0) where DWC DMA is broken. + Selecting this option will cause lower performance. + Don't select this unless you want to support Rev 1.0 405EX chips (obsolete). + +menuconfig DWC_OTG_MODE + bool "DWC OTG Mode" + depends on 405EX || 460EX || APM82181 + help + Enable selection whether USB OTG should operate in Host or + Device mode only + +if DWC_OTG_MODE +config DWC_HOST_ONLY + bool "DWC Host Only Mode" + depends on 405EX || 460EX || APM82181 + help + DWC Core in only host mode. + +config DWC_DEVICE_ONLY + bool "DWC Device Only Mode" + default y if 405EZ + help + DWC Core in only device mode. + +endif + +config DWC_SLAVE + bool "DWC Slave Mode" + depends on 405EX || 460EX || APM82181 + default n + help + Slave mode uses the processor to tranfer data. + In Slave mode, processor DMA channels can be used if available. + +config DWC_USE_PLB_DMA + bool "Use PPC4xx PLB DMA (Only for Slave Mode)" + depends on DWC_SLAVE + depends on 405EX + default n + select OTG_PLB_DMA + select OTG_PLB_DMA_TASKLET + select PPC4xx_EDMA + help + Enable use of PPC4xx DMA engines in Slave Mode. + Please ensure PLB DMA channels not in use by any other block. + +if DWC_USE_PLB_DMA +config OTG_PLB_DMA + bool + default n + +config OTG_PLB_DMA_TASKLET + bool + default n + +config PPC4xx_EDMA + bool + default n +endif + +config DWC_DEBUG + bool "Enable DWC Debugging" + default n + help + Enable DWC driver debugging + +endif #USB_GADGET_DWC_OTG + # # LAST -- dummy/emulated controller @@ -541,7 +638,7 @@ config USB_DUMMY_HCD # NOTE: Please keep dummy_hcd LAST so that "real hardware" appears # first and will be selected by default. -endchoice +endif # USB_PERIPHERAL_CONTROLLER config USB_GADGET_DUALSPEED bool |