Commit | Line | Data |
---|---|---|
550a7375 FB |
1 | # |
2 | # USB Dual Role (OTG-ready) Controller Drivers | |
3 | # for silicon based on Mentor Graphics INVENTRA designs | |
4 | # | |
5 | ||
550a7375 FB |
6 | # (M)HDRC = (Multipoint) Highspeed Dual-Role Controller |
7 | config USB_MUSB_HDRC | |
54a605f4 | 8 | tristate 'Inventra Highspeed Dual Role Controller (TI, ADI, ...)' |
62285963 | 9 | depends on USB && USB_GADGET |
8ba63a22 | 10 | select NOP_USB_XCEIV if (ARCH_DAVINCI || MACH_OMAP3EVM || BLACKFIN) |
fa296528 | 11 | select NOP_USB_XCEIV if (SOC_OMAPTI81XX || SOC_OMAPAM33XX) |
550a7375 | 12 | select TWL4030_USB if MACH_OMAP_3430SDP |
4c42fbc9 | 13 | select TWL6030_USB if MACH_OMAP_4430SDP || MACH_OMAP4_PANDA |
37daa925 | 14 | select USB_OTG_UTILS |
0de174b5 | 15 | select USB_GADGET_DUALSPEED |
550a7375 FB |
16 | help |
17 | Say Y here if your system has a dual role high speed USB | |
18 | controller based on the Mentor Graphics silicon IP. Then | |
19 | configure options to match your silicon and the board | |
20 | it's being used with, including the USB peripheral role, | |
21 | or the USB host role, or both. | |
22 | ||
a227fd7d DB |
23 | Texas Instruments familiies using this IP include DaVinci |
24 | (35x, 644x ...), OMAP 243x, OMAP 3, and TUSB 6010. | |
550a7375 | 25 | |
085ad406 BW |
26 | Analog Devices parts using this IP include Blackfin BF54x, |
27 | BF525 and BF527. | |
28 | ||
550a7375 FB |
29 | If you do not know what this is, please say N. |
30 | ||
1376d92f FB |
31 | To compile this driver as a module, choose M here; the |
32 | module will be called "musb-hdrc". | |
550a7375 | 33 | |
c6bde9b5 FC |
34 | if USB_MUSB_HDRC |
35 | ||
7c925546 FB |
36 | choice |
37 | prompt "Platform Glue Layer" | |
550a7375 | 38 | |
7c925546 | 39 | config USB_MUSB_DAVINCI |
1376d92f | 40 | tristate "DaVinci" |
7c925546 | 41 | depends on ARCH_DAVINCI_DMx |
550a7375 | 42 | |
7c925546 | 43 | config USB_MUSB_DA8XX |
1376d92f | 44 | tristate "DA8xx/OMAP-L1x" |
7c925546 | 45 | depends on ARCH_DAVINCI_DA8XX |
3ee076de | 46 | |
7c925546 | 47 | config USB_MUSB_TUSB6010 |
1376d92f | 48 | tristate "TUSB6010" |
550a7375 | 49 | |
7c925546 | 50 | config USB_MUSB_OMAP2PLUS |
1376d92f | 51 | tristate "OMAP2430 and onwards" |
7c925546 | 52 | depends on ARCH_OMAP2PLUS |
550a7375 | 53 | |
7c925546 | 54 | config USB_MUSB_AM35X |
1376d92f | 55 | tristate "AM35x" |
7c925546 | 56 | depends on ARCH_OMAP |
c71b1b9c | 57 | |
9ecb8875 AKG |
58 | config USB_MUSB_DSPS |
59 | tristate "TI DSPS platforms" | |
fa296528 | 60 | depends on SOC_OMAPTI81XX || SOC_OMAPAM33XX |
9ecb8875 | 61 | |
7c925546 | 62 | config USB_MUSB_BLACKFIN |
1376d92f | 63 | tristate "Blackfin" |
7c925546 | 64 | depends on (BF54x && !BF544) || (BF52x && ! BF522 && !BF523) |
085ad406 | 65 | |
4bc36fd3 | 66 | config USB_MUSB_UX500 |
1376d92f | 67 | tristate "U8500 and U5500" |
d0678594 | 68 | depends on (ARCH_U8500 && AB8500_USB) |
4bc36fd3 | 69 | |
7c925546 | 70 | endchoice |
550a7375 | 71 | |
2e7fc3ba AB |
72 | choice |
73 | prompt 'MUSB DMA mode' | |
74 | default USB_UX500_DMA if USB_MUSB_UX500 | |
75 | default USB_INVENTRA_DMA if USB_MUSB_OMAP2PLUS || USB_MUSB_BLACKFIN | |
76 | default USB_TI_CPPI_DMA if USB_MUSB_DAVINCI | |
77 | default USB_TUSB_OMAP_DMA if USB_MUSB_TUSB6010 | |
9ecb8875 AKG |
78 | default MUSB_PIO_ONLY if USB_MUSB_TUSB6010 || USB_MUSB_DA8XX || USB_MUSB_AM35X \ |
79 | || USB_MUSB_DSPS | |
550a7375 | 80 | help |
2e7fc3ba AB |
81 | Unfortunately, only one option can be enabled here. Ideally one |
82 | should be able to build all these drivers into one kernel to | |
83 | allow using DMA on multiplatform kernels. | |
550a7375 | 84 | |
d2389440 | 85 | config USB_UX500_DMA |
2e7fc3ba | 86 | bool 'ST Ericsson U8500 and U5500' |
2e7fc3ba | 87 | depends on USB_MUSB_UX500 |
d2389440 MYK |
88 | help |
89 | Enable DMA transfers on UX500 platforms. | |
90 | ||
550a7375 | 91 | config USB_INVENTRA_DMA |
2e7fc3ba | 92 | bool 'Inventra' |
2e7fc3ba | 93 | depends on USB_MUSB_OMAP2PLUS || USB_MUSB_BLACKFIN |
550a7375 FB |
94 | help |
95 | Enable DMA transfers using Mentor's engine. | |
96 | ||
97 | config USB_TI_CPPI_DMA | |
2e7fc3ba | 98 | bool 'TI CPPI (Davinci)' |
2e7fc3ba | 99 | depends on USB_MUSB_DAVINCI |
550a7375 FB |
100 | help |
101 | Enable DMA transfers when TI CPPI DMA is available. | |
102 | ||
103 | config USB_TUSB_OMAP_DMA | |
2e7fc3ba | 104 | bool 'TUSB 6010' |
7c925546 | 105 | depends on USB_MUSB_TUSB6010 |
550a7375 | 106 | depends on ARCH_OMAP |
550a7375 FB |
107 | help |
108 | Enable DMA transfers on TUSB 6010 when OMAP DMA is available. | |
109 | ||
2e7fc3ba AB |
110 | config MUSB_PIO_ONLY |
111 | bool 'Disable DMA (always use PIO)' | |
2e7fc3ba AB |
112 | help |
113 | All data is copied between memory and FIFO by the CPU. | |
114 | DMA controllers are ignored. | |
115 | ||
116 | Do not choose this unless DMA support for your SOC or board | |
117 | is unavailable (or unstable). When DMA is enabled at compile time, | |
118 | you can still disable it at run time using the "use_dma=n" module | |
119 | parameter. | |
120 | ||
121 | endchoice | |
c6bde9b5 FC |
122 | |
123 | endif # USB_MUSB_HDRC |