diff options
author | Felipe Balbi <balbi@ti.com> | 2010-12-01 07:23:48 -0500 |
---|---|---|
committer | Felipe Balbi <balbi@ti.com> | 2010-12-10 03:21:09 -0500 |
commit | 7c925546427a0428b84bc5ba1f28b3698e492072 (patch) | |
tree | 753685c16953aef4d8cdc148c7c2d1f9bd189fb0 /drivers/usb/musb/Kconfig | |
parent | 7421107b293cace2fc081731306d447ecd8517ab (diff) |
usb: musb: add Kconfig options for each glue layer
This will make things simpler when choosing which
glue layer to compile. It avoids a lot of magic
around the "default" Kconfig option and lets the
user choose what exactly s/he wants to compile.
Signed-off-by: Felipe Balbi <balbi@ti.com>
Diffstat (limited to 'drivers/usb/musb/Kconfig')
-rw-r--r-- | drivers/usb/musb/Kconfig | 70 |
1 files changed, 25 insertions, 45 deletions
diff --git a/drivers/usb/musb/Kconfig b/drivers/usb/musb/Kconfig index 341a37a469bd..7119d900a479 100644 --- a/drivers/usb/musb/Kconfig +++ b/drivers/usb/musb/Kconfig | |||
@@ -32,55 +32,35 @@ config USB_MUSB_HDRC | |||
32 | To compile this driver as a module, choose M here; the | 32 | To compile this driver as a module, choose M here; the |
33 | module will be called "musb_hdrc". | 33 | module will be called "musb_hdrc". |
34 | 34 | ||
35 | config USB_MUSB_SOC | 35 | choice |
36 | boolean | 36 | prompt "Platform Glue Layer" |
37 | depends on USB_MUSB_HDRC | 37 | depends on USB_MUSB_HDRC |
38 | default y if ARCH_DAVINCI | ||
39 | default y if ARCH_OMAP2430 | ||
40 | default y if ARCH_OMAP3 | ||
41 | default y if ARCH_OMAP4 | ||
42 | default y if (BF54x && !BF544) | ||
43 | default y if (BF52x && !BF522 && !BF523) | ||
44 | 38 | ||
45 | comment "DaVinci 35x and 644x USB support" | 39 | config USB_MUSB_DAVINCI |
46 | depends on USB_MUSB_HDRC && ARCH_DAVINCI_DMx | 40 | bool "DaVinci" |
41 | depends on ARCH_DAVINCI_DMx | ||
47 | 42 | ||
48 | comment "DA8xx/OMAP-L1x USB support" | 43 | config USB_MUSB_DA8XX |
49 | depends on USB_MUSB_HDRC && ARCH_DAVINCI_DA8XX | 44 | bool "DA8xx/OMAP-L1x" |
45 | depends on ARCH_DAVINCI_DA8XX | ||
50 | 46 | ||
51 | comment "OMAP 243x high speed USB support" | 47 | config USB_MUSB_TUSB6010 |
52 | depends on USB_MUSB_HDRC && ARCH_OMAP2430 | 48 | bool "TUSB6010" |
49 | depends on ARCH_OMAP | ||
53 | 50 | ||
54 | comment "OMAP 343x high speed USB support" | 51 | config USB_MUSB_OMAP2PLUS |
55 | depends on USB_MUSB_HDRC && ARCH_OMAP3 | 52 | bool "OMAP2430 and onwards" |
53 | depends on ARCH_OMAP2PLUS | ||
56 | 54 | ||
57 | comment "OMAP 44xx high speed USB support" | 55 | config USB_MUSB_AM35X |
58 | depends on USB_MUSB_HDRC && ARCH_OMAP4 | 56 | bool "AM35x" |
57 | depends on ARCH_OMAP | ||
59 | 58 | ||
60 | comment "Blackfin high speed USB Support" | 59 | config USB_MUSB_BLACKFIN |
61 | depends on USB_MUSB_HDRC && ((BF54x && !BF544) || (BF52x && !BF522 && !BF523)) | 60 | bool "Blackfin" |
61 | depends on (BF54x && !BF544) || (BF52x && ! BF522 && !BF523) | ||
62 | 62 | ||
63 | config USB_MUSB_AM35X | 63 | endchoice |
64 | bool | ||
65 | depends on USB_MUSB_HDRC && !ARCH_OMAP2430 && !ARCH_OMAP4 | ||
66 | select NOP_USB_XCEIV | ||
67 | default MACH_OMAP3517EVM | ||
68 | help | ||
69 | Select this option if your platform is based on AM35x. As | ||
70 | AM35x has an updated MUSB with CPPI4.1 DMA so this config | ||
71 | is introduced to differentiate musb ip between OMAP3x and | ||
72 | AM35x platforms. | ||
73 | |||
74 | config USB_TUSB6010 | ||
75 | boolean "TUSB 6010 support" | ||
76 | depends on USB_MUSB_HDRC && !USB_MUSB_SOC | ||
77 | select NOP_USB_XCEIV | ||
78 | default y | ||
79 | help | ||
80 | The TUSB 6010 chip, from Texas Instruments, connects a discrete | ||
81 | HDRC core using a 16-bit parallel bus (NOR flash style) or VLYNQ | ||
82 | (a high speed serial link). It can use system-specific external | ||
83 | DMA controllers. | ||
84 | 64 | ||
85 | choice | 65 | choice |
86 | prompt "Driver Mode" | 66 | prompt "Driver Mode" |
@@ -158,7 +138,7 @@ config USB_MUSB_HDRC_HCD | |||
158 | config MUSB_PIO_ONLY | 138 | config MUSB_PIO_ONLY |
159 | bool 'Disable DMA (always use PIO)' | 139 | bool 'Disable DMA (always use PIO)' |
160 | depends on USB_MUSB_HDRC | 140 | depends on USB_MUSB_HDRC |
161 | default USB_TUSB6010 || ARCH_DAVINCI_DA8XX || USB_MUSB_AM35X | 141 | default USB_MUSB_TUSB6010 || USB_MUSB_DA8XX || USB_MUSB_AM35X |
162 | help | 142 | help |
163 | All data is copied between memory and FIFO by the CPU. | 143 | All data is copied between memory and FIFO by the CPU. |
164 | DMA controllers are ignored. | 144 | DMA controllers are ignored. |
@@ -171,21 +151,21 @@ config MUSB_PIO_ONLY | |||
171 | config USB_INVENTRA_DMA | 151 | config USB_INVENTRA_DMA |
172 | bool | 152 | bool |
173 | depends on USB_MUSB_HDRC && !MUSB_PIO_ONLY | 153 | depends on USB_MUSB_HDRC && !MUSB_PIO_ONLY |
174 | default ARCH_OMAP2430 || ARCH_OMAP3 || BLACKFIN || ARCH_OMAP4 | 154 | default USB_MUSB_OMAP2PLUS || USB_MUSB_BLACKFIN |
175 | help | 155 | help |
176 | Enable DMA transfers using Mentor's engine. | 156 | Enable DMA transfers using Mentor's engine. |
177 | 157 | ||
178 | config USB_TI_CPPI_DMA | 158 | config USB_TI_CPPI_DMA |
179 | bool | 159 | bool |
180 | depends on USB_MUSB_HDRC && !MUSB_PIO_ONLY | 160 | depends on USB_MUSB_HDRC && !MUSB_PIO_ONLY |
181 | default ARCH_DAVINCI | 161 | default USB_MUSB_DAVINCI |
182 | help | 162 | help |
183 | Enable DMA transfers when TI CPPI DMA is available. | 163 | Enable DMA transfers when TI CPPI DMA is available. |
184 | 164 | ||
185 | config USB_TUSB_OMAP_DMA | 165 | config USB_TUSB_OMAP_DMA |
186 | bool | 166 | bool |
187 | depends on USB_MUSB_HDRC && !MUSB_PIO_ONLY | 167 | depends on USB_MUSB_HDRC && !MUSB_PIO_ONLY |
188 | depends on USB_TUSB6010 | 168 | depends on USB_MUSB_TUSB6010 |
189 | depends on ARCH_OMAP | 169 | depends on ARCH_OMAP |
190 | default y | 170 | default y |
191 | help | 171 | help |