Kconfig 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. #
  2. # USB Dual Role (OTG-ready) Controller Drivers
  3. # for silicon based on Mentor Graphics INVENTRA designs
  4. #
  5. # (M)HDRC = (Multipoint) Highspeed Dual-Role Controller
  6. config USB_MUSB_HDRC
  7. tristate 'Inventra Highspeed Dual Role Controller (TI, ADI, ...)'
  8. depends on USB && USB_GADGET
  9. select USB_OTG_UTILS
  10. help
  11. Say Y here if your system has a dual role high speed USB
  12. controller based on the Mentor Graphics silicon IP. Then
  13. configure options to match your silicon and the board
  14. it's being used with, including the USB peripheral role,
  15. or the USB host role, or both.
  16. Texas Instruments families using this IP include DaVinci
  17. (35x, 644x ...), OMAP 243x, OMAP 3, and TUSB 6010.
  18. Analog Devices parts using this IP include Blackfin BF54x,
  19. BF525 and BF527.
  20. If you do not know what this is, please say N.
  21. To compile this driver as a module, choose M here; the
  22. module will be called "musb-hdrc".
  23. if USB_MUSB_HDRC
  24. choice
  25. prompt "Platform Glue Layer"
  26. config USB_MUSB_DAVINCI
  27. tristate "DaVinci"
  28. depends on ARCH_DAVINCI_DMx
  29. depends on BROKEN
  30. config USB_MUSB_DA8XX
  31. tristate "DA8xx/OMAP-L1x"
  32. depends on ARCH_DAVINCI_DA8XX
  33. depends on BROKEN
  34. config USB_MUSB_TUSB6010
  35. tristate "TUSB6010"
  36. depends on GENERIC_HARDIRQS
  37. config USB_MUSB_OMAP2PLUS
  38. tristate "OMAP2430 and onwards"
  39. depends on ARCH_OMAP2PLUS
  40. config USB_MUSB_AM35X
  41. tristate "AM35x"
  42. depends on ARCH_OMAP
  43. config USB_MUSB_DSPS
  44. tristate "TI DSPS platforms"
  45. depends on SOC_TI81XX || SOC_AM33XX
  46. config USB_MUSB_BLACKFIN
  47. tristate "Blackfin"
  48. depends on (BF54x && !BF544) || (BF52x && ! BF522 && !BF523)
  49. config USB_MUSB_UX500
  50. tristate "U8500 and U5500"
  51. depends on (ARCH_U8500 && AB8500_USB)
  52. endchoice
  53. choice
  54. prompt 'MUSB DMA mode'
  55. default MUSB_PIO_ONLY if ARCH_MULTIPLATFORM
  56. default USB_UX500_DMA if USB_MUSB_UX500
  57. default USB_INVENTRA_DMA if USB_MUSB_OMAP2PLUS || USB_MUSB_BLACKFIN
  58. default USB_TI_CPPI_DMA if USB_MUSB_DAVINCI
  59. default USB_TUSB_OMAP_DMA if USB_MUSB_TUSB6010
  60. default MUSB_PIO_ONLY if USB_MUSB_TUSB6010 || USB_MUSB_DA8XX || USB_MUSB_AM35X \
  61. || USB_MUSB_DSPS
  62. help
  63. Unfortunately, only one option can be enabled here. Ideally one
  64. should be able to build all these drivers into one kernel to
  65. allow using DMA on multiplatform kernels.
  66. config USB_UX500_DMA
  67. bool 'ST Ericsson U8500 and U5500'
  68. depends on USB_MUSB_UX500
  69. help
  70. Enable DMA transfers on UX500 platforms.
  71. config USB_INVENTRA_DMA
  72. bool 'Inventra'
  73. depends on USB_MUSB_OMAP2PLUS || USB_MUSB_BLACKFIN
  74. help
  75. Enable DMA transfers using Mentor's engine.
  76. config USB_TI_CPPI_DMA
  77. bool 'TI CPPI (Davinci)'
  78. depends on USB_MUSB_DAVINCI
  79. help
  80. Enable DMA transfers when TI CPPI DMA is available.
  81. config USB_TUSB_OMAP_DMA
  82. bool 'TUSB 6010'
  83. depends on USB_MUSB_TUSB6010
  84. depends on ARCH_OMAP
  85. help
  86. Enable DMA transfers on TUSB 6010 when OMAP DMA is available.
  87. config MUSB_PIO_ONLY
  88. bool 'Disable DMA (always use PIO)'
  89. help
  90. All data is copied between memory and FIFO by the CPU.
  91. DMA controllers are ignored.
  92. Do not choose this unless DMA support for your SOC or board
  93. is unavailable (or unstable). When DMA is enabled at compile time,
  94. you can still disable it at run time using the "use_dma=n" module
  95. parameter.
  96. endchoice
  97. endif # USB_MUSB_HDRC