aboutsummaryrefslogtreecommitdiffstats
path: root/arch/cris/arch-v32/drivers
diff options
context:
space:
mode:
authorJesper Nilsson <jesper.nilsson@axis.com>2007-12-05 12:10:36 -0500
committerJesper Nilsson <jesper.nilsson@axis.com>2008-02-08 05:06:22 -0500
commit923dd2a46349bb1bb94aa894b7ff61093618d68a (patch)
treeb27462e645d8f05fb30449ccb956a4adaa5eee04 /arch/cris/arch-v32/drivers
parenta4ffc0a0b240a29cbe489f6db9dae112a49ef1c1 (diff)
CRIS: Rearrange Kconfigs for v10 and v32 to allow compilation without warnings.
- Remove some unneeded configs and add some new ones. - Merge common config items to common file instead of duplicating them. - Pull in standard Kconfig.preempt. - Remove some unneeded Kconfigs for subsystems not (yet) available on CRIS (md, scsi, ieee1394, i2o, isdn, telephony, media, pcmcia, pci) - Rename CRISv32 config items which had different types from CRISv10. (ETRAX_LED2G, ETRAX_LED2R, ETRAX_LED3G, ETRAX_LED3R, ETRAX_I2C_DATA_PORT, ETRAX_I2C_CLK_PORT)
Diffstat (limited to 'arch/cris/arch-v32/drivers')
-rw-r--r--arch/cris/arch-v32/drivers/Kconfig693
1 files changed, 478 insertions, 215 deletions
diff --git a/arch/cris/arch-v32/drivers/Kconfig b/arch/cris/arch-v32/drivers/Kconfig
index c329cce2a0c3..471c203f861c 100644
--- a/arch/cris/arch-v32/drivers/Kconfig
+++ b/arch/cris/arch-v32/drivers/Kconfig
@@ -4,64 +4,102 @@ config ETRAX_ETHERNET
4 bool "Ethernet support" 4 bool "Ethernet support"
5 depends on ETRAX_ARCH_V32 5 depends on ETRAX_ARCH_V32
6 select NET_ETHERNET 6 select NET_ETHERNET
7 select MII
7 help 8 help
8 This option enables the ETRAX FS built-in 10/100Mbit Ethernet 9 This option enables the ETRAX FS built-in 10/100Mbit Ethernet
9 controller. 10 controller.
10 11
11config ETRAX_ETHERNET_HW_CSUM 12config ETRAX_NO_PHY
12 bool "Hardware accelerated ethernet checksum and scatter/gather" 13 bool "PHY not present"
13 depends on ETRAX_ETHERNET 14 depends on ETRAX_ETHERNET
14 depends on ETRAX_STREAMCOPROC 15 default N
15 default y
16 help 16 help
17 Hardware acceleration of checksumming and scatter/gather 17 This option disables all MDIO communication with an ethernet
18 transceiver connected to the MII interface. This option shall
19 typically be enabled if the MII interface is connected to a
20 switch. This option should normally be disabled. If enabled,
21 speed and duplex will be locked to 100 Mbit and full duplex.
18 22
19config ETRAX_ETHERNET_IFACE0 23config ETRAX_ETHERNET_IFACE0
20 depends on ETRAX_ETHERNET 24 depends on ETRAX_ETHERNET
21 bool "Enable network interface 0" 25 bool "Enable network interface 0"
22 26
23config ETRAX_ETHERNET_IFACE1 27config ETRAX_ETHERNET_IFACE1
24 depends on ETRAX_ETHERNET 28 depends on (ETRAX_ETHERNET && ETRAXFS)
25 bool "Enable network interface 1 (uses DMA6 and DMA7)" 29 bool "Enable network interface 1 (uses DMA6 and DMA7)"
26 30
31config ETRAX_ETHERNET_GBIT
32 depends on (ETRAX_ETHERNET && CRIS_MACH_ARTPEC3)
33 bool "Enable gigabit Ethernet support"
34
27choice 35choice
28 prompt "Network LED behavior" 36 prompt "Eth0 led group"
29 depends on ETRAX_ETHERNET 37 depends on ETRAX_ETHERNET_IFACE0
30 default ETRAX_NETWORK_LED_ON_WHEN_ACTIVITY 38 default ETRAX_ETH0_USE_LEDGRP0
31 39
32config ETRAX_NETWORK_LED_ON_WHEN_LINK 40config ETRAX_ETH0_USE_LEDGRP0
33 bool "LED_on_when_link" 41 bool "Use LED grp 0"
42 depends on ETRAX_NBR_LED_GRP_ONE || ETRAX_NBR_LED_GRP_TWO
34 help 43 help
35 Selecting LED_on_when_link will light the LED when there is a 44 Use LED grp 0 for eth0
36 connection and will flash off when there is activity.
37
38 Selecting LED_on_when_activity will light the LED only when
39 there is activity.
40 45
41 This setting will also affect the behaviour of other activity LEDs 46config ETRAX_ETH0_USE_LEDGRP1
42 e.g. Bluetooth. 47 bool "Use LED grp 1"
48 depends on ETRAX_NBR_LED_GRP_TWO
49 help
50 Use LED grp 1 for eth0
43 51
44config ETRAX_NETWORK_LED_ON_WHEN_ACTIVITY 52config ETRAX_ETH0_USE_LEDGRPNULL
45 bool "LED_on_when_activity" 53 bool "Use no LEDs for eth0"
46 help 54 help
47 Selecting LED_on_when_link will light the LED when there is a 55 Use no LEDs for eth0
48 connection and will flash off when there is activity. 56endchoice
57
58choice
59 prompt "Eth1 led group"
60 depends on ETRAX_ETHERNET_IFACE1
61 default ETRAX_ETH1_USE_LEDGRP1
49 62
50 Selecting LED_on_when_activity will light the LED only when 63config ETRAX_ETH1_USE_LEDGRP0
51 there is activity. 64 bool "Use LED grp 0"
65 depends on ETRAX_NBR_LED_GRP_ONE || ETRAX_NBR_LED_GRP_TWO
66 help
67 Use LED grp 0 for eth1
52 68
53 This setting will also affect the behaviour of other activity LEDs 69config ETRAX_ETH1_USE_LEDGRP1
54 e.g. Bluetooth. 70 bool "Use LED grp 1"
71 depends on ETRAX_NBR_LED_GRP_TWO
72 help
73 Use LED grp 1 for eth1
55 74
75config ETRAX_ETH1_USE_LEDGRPNULL
76 bool "Use no LEDs for eth1"
77 help
78 Use no LEDs for eth1
56endchoice 79endchoice
57 80
58config ETRAXFS_SERIAL 81config ETRAXFS_SERIAL
59 bool "Serial-port support" 82 bool "Serial-port support"
60 depends on ETRAX_ARCH_V32 83 depends on ETRAX_ARCH_V32
84 select SERIAL_CORE
85 select SERIAL_CORE_CONSOLE
61 help 86 help
62 Enables the ETRAX FS serial driver for ser0 (ttyS0) 87 Enables the ETRAX FS serial driver for ser0 (ttyS0)
63 You probably want this enabled. 88 You probably want this enabled.
64 89
90config ETRAX_RS485
91 bool "RS-485 support"
92 depends on ETRAXFS_SERIAL
93 help
94 Enables support for RS-485 serial communication.
95
96config ETRAX_RS485_DISABLE_RECEIVER
97 bool "Disable serial receiver"
98 depends on ETRAX_RS485
99 help
100 It is necessary to disable the serial receiver to avoid serial
101 loopback. Not all products are able to do this in software only.
102
65config ETRAX_SERIAL_PORT0 103config ETRAX_SERIAL_PORT0
66 bool "Serial port 0 enabled" 104 bool "Serial port 0 enabled"
67 depends on ETRAXFS_SERIAL 105 depends on ETRAXFS_SERIAL
@@ -72,50 +110,28 @@ config ETRAX_SERIAL_PORT0
72 ser0 can use dma4 or dma6 for output and dma5 or dma7 for input. 110 ser0 can use dma4 or dma6 for output and dma5 or dma7 for input.
73 111
74choice 112choice
75 prompt "Ser0 DMA in channel " 113 prompt "Ser0 default port type "
76 depends on ETRAX_SERIAL_PORT0 114 depends on ETRAX_SERIAL_PORT0
77 default ETRAX_SERIAL_PORT0_NO_DMA_IN 115 default ETRAX_SERIAL_PORT0_TYPE_232
78 help 116 help
79 What DMA channel to use for ser0. 117 Type of serial port.
80 118
81 119config ETRAX_SERIAL_PORT0_TYPE_232
82config ETRAX_SERIAL_PORT0_NO_DMA_IN 120 bool "Ser0 is a RS-232 port"
83 bool "Ser0 uses no DMA for input"
84 help
85 Do not use DMA for ser0 input.
86
87config ETRAX_SERIAL_PORT0_DMA7_IN
88 bool "Ser0 uses DMA7 for input"
89 depends on ETRAX_SERIAL_PORT0
90 help 121 help
91 Enables the DMA7 input channel for ser0 (ttyS0). 122 Configure serial port 0 to be a RS-232 port.
92 If you do not enable DMA, an interrupt for each character will be
93 used when receiving data.
94 Normally you want to use DMA, unless you use the DMA channel for
95 something else.
96
97endchoice
98
99choice
100 prompt "Ser0 DMA out channel"
101 depends on ETRAX_SERIAL_PORT0
102 default ETRAX_SERIAL_PORT0_NO_DMA_OUT
103 123
104config ETRAX_SERIAL_PORT0_NO_DMA_OUT 124config ETRAX_SERIAL_PORT0_TYPE_485HD
105 bool "Ser0 uses no DMA for output" 125 bool "Ser0 is a half duplex RS-485 port"
126 depends on ETRAX_RS485
106 help 127 help
107 Do not use DMA for ser0 output. 128 Configure serial port 0 to be a half duplex (two wires) RS-485 port.
108 129
109config ETRAX_SERIAL_PORT0_DMA6_OUT 130config ETRAX_SERIAL_PORT0_TYPE_485FD
110 bool "Ser0 uses DMA6 for output" 131 bool "Ser0 is a full duplex RS-485 port"
111 depends on ETRAX_SERIAL_PORT0 132 depends on ETRAX_RS485
112 help 133 help
113 Enables the DMA6 output channel for ser0 (ttyS0). 134 Configure serial port 0 to be a full duplex (four wires) RS-485 port.
114 If you do not enable DMA, an interrupt for each character will be
115 used when transmitting data.
116 Normally you want to use DMA, unless you use the DMA channel for
117 something else.
118
119endchoice 135endchoice
120 136
121config ETRAX_SER0_DTR_BIT 137config ETRAX_SER0_DTR_BIT
@@ -141,52 +157,28 @@ config ETRAX_SERIAL_PORT1
141 Enables the ETRAX FS serial driver for ser1 (ttyS1). 157 Enables the ETRAX FS serial driver for ser1 (ttyS1).
142 158
143choice 159choice
144 prompt "Ser1 DMA in channel " 160 prompt "Ser1 default port type"
145 depends on ETRAX_SERIAL_PORT1 161 depends on ETRAX_SERIAL_PORT1
146 default ETRAX_SERIAL_PORT1_NO_DMA_IN 162 default ETRAX_SERIAL_PORT1_TYPE_232
147 help 163 help
148 What DMA channel to use for ser1. 164 Type of serial port.
149
150 165
151config ETRAX_SERIAL_PORT1_NO_DMA_IN 166config ETRAX_SERIAL_PORT1_TYPE_232
152 bool "Ser1 uses no DMA for input" 167 bool "Ser1 is a RS-232 port"
153 help 168 help
154 Do not use DMA for ser1 input. 169 Configure serial port 1 to be a RS-232 port.
155 170
156config ETRAX_SERIAL_PORT1_DMA5_IN 171config ETRAX_SERIAL_PORT1_TYPE_485HD
157 bool "Ser1 uses DMA5 for input" 172 bool "Ser1 is a half duplex RS-485 port"
158 depends on ETRAX_SERIAL_PORT1 173 depends on ETRAX_RS485
159 help
160 Enables the DMA5 input channel for ser1 (ttyS1).
161 If you do not enable DMA, an interrupt for each character will be
162 used when receiving data.
163 Normally you want this on, unless you use the DMA channel for
164 something else.
165
166endchoice
167
168choice
169 prompt "Ser1 DMA out channel "
170 depends on ETRAX_SERIAL_PORT1
171 default ETRAX_SERIAL_PORT1_NO_DMA_OUT
172 help
173 What DMA channel to use for ser1.
174
175config ETRAX_SERIAL_PORT1_NO_DMA_OUT
176 bool "Ser1 uses no DMA for output"
177 help 174 help
178 Do not use DMA for ser1 output. 175 Configure serial port 1 to be a half duplex (two wires) RS-485 port.
179 176
180config ETRAX_SERIAL_PORT1_DMA4_OUT 177config ETRAX_SERIAL_PORT1_TYPE_485FD
181 bool "Ser1 uses DMA4 for output" 178 bool "Ser1 is a full duplex RS-485 port"
182 depends on ETRAX_SERIAL_PORT1 179 depends on ETRAX_RS485
183 help 180 help
184 Enables the DMA4 output channel for ser1 (ttyS1). 181 Configure serial port 1 to be a full duplex (four wires) RS-485 port.
185 If you do not enable DMA, an interrupt for each character will be
186 used when transmitting data.
187 Normally you want this on, unless you use the DMA channel for
188 something else.
189
190endchoice 182endchoice
191 183
192config ETRAX_SER1_DTR_BIT 184config ETRAX_SER1_DTR_BIT
@@ -212,52 +204,31 @@ config ETRAX_SERIAL_PORT2
212 Enables the ETRAX FS serial driver for ser2 (ttyS2). 204 Enables the ETRAX FS serial driver for ser2 (ttyS2).
213 205
214choice 206choice
215 prompt "Ser2 DMA in channel " 207 prompt "Ser2 default port type"
216 depends on ETRAX_SERIAL_PORT2 208 depends on ETRAX_SERIAL_PORT2
217 default ETRAX_SERIAL_PORT2_NO_DMA_IN 209 default ETRAX_SERIAL_PORT2_TYPE_232
218 help
219 What DMA channel to use for ser2.
220
221
222config ETRAX_SERIAL_PORT2_NO_DMA_IN
223 bool "Ser2 uses no DMA for input"
224 help 210 help
225 Do not use DMA for ser2 input. 211 What DMA channel to use for ser2
226 212
227config ETRAX_SERIAL_PORT2_DMA3_IN 213config ETRAX_SERIAL_PORT2_TYPE_232
228 bool "Ser2 uses DMA3 for input" 214 bool "Ser2 is a RS-232 port"
229 depends on ETRAX_SERIAL_PORT2
230 help 215 help
231 Enables the DMA3 input channel for ser2 (ttyS2). 216 Configure serial port 2 to be a RS-232 port.
232 If you do not enable DMA, an interrupt for each character will be
233 used when receiving data.
234 Normally you want to use DMA, unless you use the DMA channel for
235 something else.
236
237endchoice
238 217
239choice 218config ETRAX_SERIAL_PORT2_TYPE_485HD
240 prompt "Ser2 DMA out channel" 219 bool "Ser2 is a half duplex RS-485 port"
241 depends on ETRAX_SERIAL_PORT2 220 depends on ETRAX_RS485
242 default ETRAX_SERIAL_PORT2_NO_DMA_OUT
243
244config ETRAX_SERIAL_PORT2_NO_DMA_OUT
245 bool "Ser2 uses no DMA for output"
246 help 221 help
247 Do not use DMA for ser2 output. 222 Configure serial port 2 to be a half duplex (two wires) RS-485 port.
248 223
249config ETRAX_SERIAL_PORT2_DMA2_OUT 224config ETRAX_SERIAL_PORT2_TYPE_485FD
250 bool "Ser2 uses DMA2 for output" 225 bool "Ser2 is a full duplex RS-485 port"
251 depends on ETRAX_SERIAL_PORT2 226 depends on ETRAX_RS485
252 help 227 help
253 Enables the DMA2 output channel for ser2 (ttyS2). 228 Configure serial port 2 to be a full duplex (four wires) RS-485 port.
254 If you do not enable DMA, an interrupt for each character will be
255 used when transmitting data.
256 Normally you want to use DMA, unless you use the DMA channel for
257 something else.
258
259endchoice 229endchoice
260 230
231
261config ETRAX_SER2_DTR_BIT 232config ETRAX_SER2_DTR_BIT
262 string "Ser 2 DTR bit (empty = not used)" 233 string "Ser 2 DTR bit (empty = not used)"
263 depends on ETRAX_SERIAL_PORT2 234 depends on ETRAX_SERIAL_PORT2
@@ -281,71 +252,121 @@ config ETRAX_SERIAL_PORT3
281 Enables the ETRAX FS serial driver for ser3 (ttyS3). 252 Enables the ETRAX FS serial driver for ser3 (ttyS3).
282 253
283choice 254choice
284 prompt "Ser3 DMA in channel " 255 prompt "Ser3 default port type"
285 depends on ETRAX_SERIAL_PORT3 256 depends on ETRAX_SERIAL_PORT3
286 default ETRAX_SERIAL_PORT3_NO_DMA_IN 257 default ETRAX_SERIAL_PORT3_TYPE_232
287 help 258 help
288 What DMA channel to use for ser3. 259 What DMA channel to use for ser3.
289 260
261config ETRAX_SERIAL_PORT3_TYPE_232
262 bool "Ser3 is a RS-232 port"
263 help
264 Configure serial port 3 to be a RS-232 port.
290 265
291config ETRAX_SERIAL_PORT3_NO_DMA_IN 266config ETRAX_SERIAL_PORT3_TYPE_485HD
292 bool "Ser3 uses no DMA for input" 267 bool "Ser3 is a half duplex RS-485 port"
268 depends on ETRAX_RS485
269 help
270 Configure serial port 3 to be a half duplex (two wires) RS-485 port.
271
272config ETRAX_SERIAL_PORT3_TYPE_485FD
273 bool "Ser3 is a full duplex RS-485 port"
274 depends on ETRAX_RS485
293 help 275 help
294 Do not use DMA for ser3 input. 276 Configure serial port 3 to be a full duplex (four wires) RS-485 port.
277endchoice
295 278
296config ETRAX_SERIAL_PORT3_DMA9_IN 279config ETRAX_SER3_DTR_BIT
297 bool "Ser3 uses DMA9 for input" 280 string "Ser 3 DTR bit (empty = not used)"
281 depends on ETRAX_SERIAL_PORT3
282
283config ETRAX_SER3_RI_BIT
284 string "Ser 3 RI bit (empty = not used)"
298 depends on ETRAX_SERIAL_PORT3 285 depends on ETRAX_SERIAL_PORT3
286
287config ETRAX_SER3_DSR_BIT
288 string "Ser 3 DSR bit (empty = not used)"
289 depends on ETRAX_SERIAL_PORT3
290
291config ETRAX_SER3_CD_BIT
292 string "Ser 3 CD bit (empty = not used)"
293 depends on ETRAX_SERIAL_PORT3
294
295config ETRAX_SERIAL_PORT4
296 bool "Serial port 4 enabled"
297 depends on ETRAXFS_SERIAL && CRIS_MACH_ARTPEC3
299 help 298 help
300 Enables the DMA9 input channel for ser3 (ttyS3). 299 Enables the ETRAX FS serial driver for ser4 (ttyS4).
301 If you do not enable DMA, an interrupt for each character will be
302 used when receiving data.
303 Normally you want to use DMA, unless you use the DMA channel for
304 something else.
305 300
301choice
302 prompt "Ser4 default port type"
303 depends on ETRAX_SERIAL_PORT4
304 default ETRAX_SERIAL_PORT4_TYPE_232
305 help
306 What DMA channel to use for ser4.
307
308config ETRAX_SERIAL_PORT4_TYPE_232
309 bool "Ser4 is a RS-232 port"
310 help
311 Configure serial port 4 to be a RS-232 port.
312
313config ETRAX_SERIAL_PORT4_TYPE_485HD
314 bool "Ser4 is a half duplex RS-485 port"
315 depends on ETRAX_RS485
316 help
317 Configure serial port 4 to be a half duplex (two wires) RS-485 port.
318
319config ETRAX_SERIAL_PORT4_TYPE_485FD
320 bool "Ser4 is a full duplex RS-485 port"
321 depends on ETRAX_RS485
322 help
323 Configure serial port 4 to be a full duplex (four wires) RS-485 port.
306endchoice 324endchoice
307 325
308choice 326choice
309 prompt "Ser3 DMA out channel" 327 prompt "Ser4 DMA in channel "
310 depends on ETRAX_SERIAL_PORT3 328 depends on ETRAX_SERIAL_PORT4
311 default ETRAX_SERIAL_PORT3_NO_DMA_OUT 329 default ETRAX_SERIAL_PORT4_NO_DMA_IN
330 help
331 What DMA channel to use for ser4.
332
312 333
313config ETRAX_SERIAL_PORT3_NO_DMA_OUT 334config ETRAX_SERIAL_PORT4_NO_DMA_IN
314 bool "Ser3 uses no DMA for output" 335 bool "Ser4 uses no DMA for input"
315 help 336 help
316 Do not use DMA for ser3 output. 337 Do not use DMA for ser4 input.
317 338
318config ETRAX_SERIAL_PORT3_DMA8_OUT 339config ETRAX_SERIAL_PORT4_DMA9_IN
319 bool "Ser3 uses DMA8 for output" 340 bool "Ser4 uses DMA9 for input"
320 depends on ETRAX_SERIAL_PORT3 341 depends on ETRAX_SERIAL_PORT4
321 help 342 help
322 Enables the DMA8 output channel for ser3 (ttyS3). 343 Enables the DMA9 input channel for ser4 (ttyS4).
323 If you do not enable DMA, an interrupt for each character will be 344 If you do not enable DMA, an interrupt for each character will be
324 used when transmitting data. 345 used when receiveing data.
325 Normally you want to use DMA, unless you use the DMA channel for 346 Normally you want to use DMA, unless you use the DMA channel for
326 something else. 347 something else.
327 348
328endchoice 349endchoice
329 350
330config ETRAX_SER3_DTR_BIT 351config ETRAX_SER4_DTR_BIT
331 string "Ser 3 DTR bit (empty = not used)" 352 string "Ser 4 DTR bit (empty = not used)"
332 depends on ETRAX_SERIAL_PORT3 353 depends on ETRAX_SERIAL_PORT4
333 354
334config ETRAX_SER3_RI_BIT 355config ETRAX_SER4_RI_BIT
335 string "Ser 3 RI bit (empty = not used)" 356 string "Ser 4 RI bit (empty = not used)"
336 depends on ETRAX_SERIAL_PORT3 357 depends on ETRAX_SERIAL_PORT4
337 358
338config ETRAX_SER3_DSR_BIT 359config ETRAX_SER4_DSR_BIT
339 string "Ser 3 DSR bit (empty = not used)" 360 string "Ser 4 DSR bit (empty = not used)"
340 depends on ETRAX_SERIAL_PORT3 361 depends on ETRAX_SERIAL_PORT4
341 362
342config ETRAX_SER3_CD_BIT 363config ETRAX_SER3_CD_BIT
343 string "Ser 3 CD bit (empty = not used)" 364 string "Ser 4 CD bit (empty = not used)"
344 depends on ETRAX_SERIAL_PORT3 365 depends on ETRAX_SERIAL_PORT4
345 366
346config ETRAX_RS485 367config ETRAX_RS485
347 bool "RS-485 support" 368 bool "RS-485 support"
348 depends on ETRAX_SERIAL 369 depends on ETRAXFS_SERIAL
349 help 370 help
350 Enables support for RS-485 serial communication. For a primer on 371 Enables support for RS-485 serial communication. For a primer on
351 RS-485, see <http://www.hw.cz/english/docs/rs485/rs485.html>. 372 RS-485, see <http://www.hw.cz/english/docs/rs485/rs485.html>.
@@ -356,7 +377,6 @@ config ETRAX_RS485_DISABLE_RECEIVER
356 help 377 help
357 It is necessary to disable the serial receiver to avoid serial 378 It is necessary to disable the serial receiver to avoid serial
358 loopback. Not all products are able to do this in software only. 379 loopback. Not all products are able to do this in software only.
359 Axis 2400/2401 must disable receiver.
360 380
361config ETRAX_AXISFLASHMAP 381config ETRAX_AXISFLASHMAP
362 bool "Axis flash-map support" 382 bool "Axis flash-map support"
@@ -364,6 +384,7 @@ config ETRAX_AXISFLASHMAP
364 select MTD 384 select MTD
365 select MTD_CFI 385 select MTD_CFI
366 select MTD_CFI_AMDSTD 386 select MTD_CFI_AMDSTD
387 select MTD_JEDECPROBE
367 select MTD_CHAR 388 select MTD_CHAR
368 select MTD_BLOCK 389 select MTD_BLOCK
369 select MTD_PARTITIONS 390 select MTD_PARTITIONS
@@ -394,7 +415,7 @@ config ETRAX_SYNCHRONOUS_SERIAL0_DMA
394 415
395config ETRAX_SYNCHRONOUS_SERIAL_PORT1 416config ETRAX_SYNCHRONOUS_SERIAL_PORT1
396 bool "Synchronous serial port 1 enabled" 417 bool "Synchronous serial port 1 enabled"
397 depends on ETRAX_SYNCHRONOUS_SERIAL 418 depends on ETRAX_SYNCHRONOUS_SERIAL && ETRAXFS
398 help 419 help
399 Enabled synchronous serial port 1. 420 Enabled synchronous serial port 1.
400 421
@@ -405,6 +426,31 @@ config ETRAX_SYNCHRONOUS_SERIAL1_DMA
405 A synchronous serial port can run in manual or DMA mode. 426 A synchronous serial port can run in manual or DMA mode.
406 Selecting this option will make it run in DMA mode. 427 Selecting this option will make it run in DMA mode.
407 428
429config ETRAX_AXISFLASHMAP
430 bool "Axis flash-map support"
431 depends on ETRAX_ARCH_V32
432 select MTD
433 select MTD_CFI
434 select MTD_CFI_AMDSTD
435 select MTD_JEDECPROBE
436 select MTD_CHAR
437 select MTD_BLOCK
438 select MTD_PARTITIONS
439 select MTD_CONCAT
440 select MTD_COMPLEX_MAPPINGS
441 help
442 This option enables MTD mapping of flash devices. Needed to use
443 flash memories. If unsure, say Y.
444
445config ETRAX_AXISFLASHMAP_MTD0WHOLE
446 bool "MTD0 is whole boot flash device"
447 depends on ETRAX_AXISFLASHMAP
448 default N
449 help
450 When this option is not set, mtd0 refers to the first partition
451 on the boot flash device. When set, mtd0 refers to the whole
452 device, with mtd1 referring to the first partition etc.
453
408config ETRAX_PTABLE_SECTOR 454config ETRAX_PTABLE_SECTOR
409 int "Byte-offset of partition table sector" 455 int "Byte-offset of partition table sector"
410 depends on ETRAX_AXISFLASHMAP 456 depends on ETRAX_AXISFLASHMAP
@@ -425,19 +471,27 @@ config ETRAX_NANDFLASH
425 This option enables MTD mapping of NAND flash devices. Needed to use 471 This option enables MTD mapping of NAND flash devices. Needed to use
426 NAND flash memories. If unsure, say Y. 472 NAND flash memories. If unsure, say Y.
427 473
474config ETRAX_NANDBOOT
475 bool "Boot from NAND flash"
476 depends on ETRAX_NANDFLASH
477 help
478 This options enables booting from NAND flash devices.
479 Say Y if your boot code, kernel and root file system is in
480 NAND flash. Say N if they are in NOR flash.
481
428config ETRAX_I2C 482config ETRAX_I2C
429 bool "I2C driver" 483 bool "I2C driver"
430 depends on ETRAX_ARCH_V32 484 depends on ETRAX_ARCH_V32
431 help 485 help
432 This option enabled the I2C driver used by e.g. the RTC driver. 486 This option enables the I2C driver used by e.g. the RTC driver.
433 487
434config ETRAX_I2C_DATA_PORT 488config ETRAX_V32_I2C_DATA_PORT
435 string "I2C data pin" 489 string "I2C data pin"
436 depends on ETRAX_I2C 490 depends on ETRAX_I2C
437 help 491 help
438 The pin to use for I2C data. 492 The pin to use for I2C data.
439 493
440config ETRAX_I2C_CLK_PORT 494config ETRAX_V32_I2C_CLK_PORT
441 string "I2C clock pin" 495 string "I2C clock pin"
442 depends on ETRAX_I2C 496 depends on ETRAX_I2C
443 help 497 help
@@ -445,22 +499,10 @@ config ETRAX_I2C_CLK_PORT
445 499
446config ETRAX_RTC 500config ETRAX_RTC
447 bool "Real Time Clock support" 501 bool "Real Time Clock support"
448 depends on ETRAX_ARCH_V32 502 depends on ETRAX_ARCH_V32 && ETRAX_I2C
449 help 503 help
450 Enabled RTC support. 504 Enabled RTC support.
451 505
452choice
453 prompt "RTC chip"
454 depends on ETRAX_RTC
455 default ETRAX_PCF8563
456
457config ETRAX_PCF8563
458 bool "PCF8563"
459 help
460 Philips PCF8563 RTC
461
462endchoice
463
464config ETRAX_GPIO 506config ETRAX_GPIO
465 bool "GPIO support" 507 bool "GPIO support"
466 depends on ETRAX_ARCH_V32 508 depends on ETRAX_ARCH_V32
@@ -476,33 +518,36 @@ config ETRAX_GPIO
476 Remember that you need to setup the port directions appropriately in 518 Remember that you need to setup the port directions appropriately in
477 the General configuration. 519 the General configuration.
478 520
479config ETRAX_PA_BUTTON_BITMASK 521config ETRAX_VIRTUAL_GPIO
480 hex "PA-buttons bitmask" 522 bool "Virtual GPIO support"
481 depends on ETRAX_GPIO 523 depends on ETRAX_GPIO
482 default "0x02"
483 help 524 help
484 This is a bitmask (8 bits) with information about what bits on PA 525 Enables the virtual Etrax general port device (major 120, minor 6).
485 that are used for buttons. 526 It uses an I/O expander for the I2C-bus.
486 Most products has a so called TEST button on PA1, if that is true 527
487 use 0x02 here. 528config ETRAX_VIRTUAL_GPIO_INTERRUPT_PA_PIN
488 Use 00 if there are no buttons on PA. 529 int "Virtual GPIO interrupt pin on PA pin"
489 If the bitmask is <> 00 a button driver will be included in the gpio 530 range 0 7
490 driver. ETRAX general I/O support must be enabled. 531 depends on ETRAX_VIRTUAL_GPIO
532 help
533 The pin to use on PA for virtual gpio interrupt.
491 534
492config ETRAX_PA_CHANGEABLE_DIR 535config ETRAX_PA_CHANGEABLE_DIR
493 hex "PA user changeable dir mask" 536 hex "PA user changeable dir mask"
494 depends on ETRAX_GPIO 537 depends on ETRAX_GPIO
495 default "0x00" 538 default "0x00" if ETRAXFS
539 default "0x00000000" if !ETRAXFS
496 help 540 help
497 This is a bitmask (8 bits) with information of what bits in PA that a 541 This is a bitmask (8 bits) with information of what bits in PA that a
498 user can change direction on using ioctl's. 542 user can change direction on using ioctl's.
499 Bit set = changeable. 543 Bit set = changeable.
500 You probably want 0x00 here, but it depends on your hardware. 544 You probably want 0 here, but it depends on your hardware.
501 545
502config ETRAX_PA_CHANGEABLE_BITS 546config ETRAX_PA_CHANGEABLE_BITS
503 hex "PA user changeable bits mask" 547 hex "PA user changeable bits mask"
504 depends on ETRAX_GPIO 548 depends on ETRAX_GPIO
505 default "0x00" 549 default "0x00" if ETRAXFS
550 default "0x00000000" if !ETRAXFS
506 help 551 help
507 This is a bitmask (8 bits) with information of what bits in PA 552 This is a bitmask (8 bits) with information of what bits in PA
508 that a user can change the value on using ioctl's. 553 that a user can change the value on using ioctl's.
@@ -511,17 +556,19 @@ config ETRAX_PA_CHANGEABLE_BITS
511config ETRAX_PB_CHANGEABLE_DIR 556config ETRAX_PB_CHANGEABLE_DIR
512 hex "PB user changeable dir mask" 557 hex "PB user changeable dir mask"
513 depends on ETRAX_GPIO 558 depends on ETRAX_GPIO
514 default "0x00000" 559 default "0x00000" if ETRAXFS
560 default "0x00000000" if !ETRAXFS
515 help 561 help
516 This is a bitmask (18 bits) with information of what bits in PB 562 This is a bitmask (18 bits) with information of what bits in PB
517 that a user can change direction on using ioctl's. 563 that a user can change direction on using ioctl's.
518 Bit set = changeable. 564 Bit set = changeable.
519 You probably want 0x00000 here, but it depends on your hardware. 565 You probably want 0 here, but it depends on your hardware.
520 566
521config ETRAX_PB_CHANGEABLE_BITS 567config ETRAX_PB_CHANGEABLE_BITS
522 hex "PB user changeable bits mask" 568 hex "PB user changeable bits mask"
523 depends on ETRAX_GPIO 569 depends on ETRAX_GPIO
524 default "0x00000" 570 default "0x00000" if ETRAXFS
571 default "0x00000000" if !ETRAXFS
525 help 572 help
526 This is a bitmask (18 bits) with information of what bits in PB 573 This is a bitmask (18 bits) with information of what bits in PB
527 that a user can change the value on using ioctl's. 574 that a user can change the value on using ioctl's.
@@ -530,17 +577,19 @@ config ETRAX_PB_CHANGEABLE_BITS
530config ETRAX_PC_CHANGEABLE_DIR 577config ETRAX_PC_CHANGEABLE_DIR
531 hex "PC user changeable dir mask" 578 hex "PC user changeable dir mask"
532 depends on ETRAX_GPIO 579 depends on ETRAX_GPIO
533 default "0x00000" 580 default "0x00000" if ETRAXFS
581 default "0x00000000" if !ETRAXFS
534 help 582 help
535 This is a bitmask (18 bits) with information of what bits in PC 583 This is a bitmask (18 bits) with information of what bits in PC
536 that a user can change direction on using ioctl's. 584 that a user can change direction on using ioctl's.
537 Bit set = changeable. 585 Bit set = changeable.
538 You probably want 0x00000 here, but it depends on your hardware. 586 You probably want 0 here, but it depends on your hardware.
539 587
540config ETRAX_PC_CHANGEABLE_BITS 588config ETRAX_PC_CHANGEABLE_BITS
541 hex "PC user changeable bits mask" 589 hex "PC user changeable bits mask"
542 depends on ETRAX_GPIO 590 depends on ETRAX_GPIO
543 default "0x00000" 591 default "0x00000" if ETRAXFS
592 default "0x00000000" if ETRAXFS
544 help 593 help
545 This is a bitmask (18 bits) with information of what bits in PC 594 This is a bitmask (18 bits) with information of what bits in PC
546 that a user can change the value on using ioctl's. 595 that a user can change the value on using ioctl's.
@@ -548,7 +597,7 @@ config ETRAX_PC_CHANGEABLE_BITS
548 597
549config ETRAX_PD_CHANGEABLE_DIR 598config ETRAX_PD_CHANGEABLE_DIR
550 hex "PD user changeable dir mask" 599 hex "PD user changeable dir mask"
551 depends on ETRAX_GPIO 600 depends on ETRAX_GPIO && ETRAXFS
552 default "0x00000" 601 default "0x00000"
553 help 602 help
554 This is a bitmask (18 bits) with information of what bits in PD 603 This is a bitmask (18 bits) with information of what bits in PD
@@ -558,7 +607,7 @@ config ETRAX_PD_CHANGEABLE_DIR
558 607
559config ETRAX_PD_CHANGEABLE_BITS 608config ETRAX_PD_CHANGEABLE_BITS
560 hex "PD user changeable bits mask" 609 hex "PD user changeable bits mask"
561 depends on ETRAX_GPIO 610 depends on ETRAX_GPIO && ETRAXFS
562 default "0x00000" 611 default "0x00000"
563 help 612 help
564 This is a bitmask (18 bits) with information of what bits in PD 613 This is a bitmask (18 bits) with information of what bits in PD
@@ -567,7 +616,7 @@ config ETRAX_PD_CHANGEABLE_BITS
567 616
568config ETRAX_PE_CHANGEABLE_DIR 617config ETRAX_PE_CHANGEABLE_DIR
569 hex "PE user changeable dir mask" 618 hex "PE user changeable dir mask"
570 depends on ETRAX_GPIO 619 depends on ETRAX_GPIO && ETRAXFS
571 default "0x00000" 620 default "0x00000"
572 help 621 help
573 This is a bitmask (18 bits) with information of what bits in PE 622 This is a bitmask (18 bits) with information of what bits in PE
@@ -577,20 +626,36 @@ config ETRAX_PE_CHANGEABLE_DIR
577 626
578config ETRAX_PE_CHANGEABLE_BITS 627config ETRAX_PE_CHANGEABLE_BITS
579 hex "PE user changeable bits mask" 628 hex "PE user changeable bits mask"
580 depends on ETRAX_GPIO 629 depends on ETRAX_GPIO && ETRAXFS
581 default "0x00000" 630 default "0x00000"
582 help 631 help
583 This is a bitmask (18 bits) with information of what bits in PE 632 This is a bitmask (18 bits) with information of what bits in PE
584 that a user can change the value on using ioctl's. 633 that a user can change the value on using ioctl's.
585 Bit set = changeable. 634 Bit set = changeable.
586 635
636config ETRAX_PV_CHANGEABLE_DIR
637 hex "PV user changeable dir mask"
638 depends on ETRAX_VIRTUAL_GPIO
639 default "0x0000"
640 help
641 This is a bitmask (16 bits) with information of what bits in PV
642 that a user can change direction on using ioctl's.
643 Bit set = changeable.
644 You probably want 0x0000 here, but it depends on your hardware.
645
646config ETRAX_PV_CHANGEABLE_BITS
647 hex "PV user changeable bits mask"
648 depends on ETRAX_VIRTUAL_GPIO
649 default "0x0000"
650 help
651 This is a bitmask (16 bits) with information of what bits in PV
652 that a user can change the value on using ioctl's.
653 Bit set = changeable.
654
587config ETRAX_CARDBUS 655config ETRAX_CARDBUS
588 bool "Cardbus support" 656 bool "Cardbus support"
589 depends on ETRAX_ARCH_V32 657 depends on ETRAX_ARCH_V32
590 select PCCARD
591 select CARDBUS
592 select HOTPLUG 658 select HOTPLUG
593 select PCCARD_NONSTATIC
594 help 659 help
595 Enabled the ETRAX Cardbus driver. 660 Enabled the ETRAX Cardbus driver.
596 661
@@ -613,4 +678,202 @@ config ETRAX_STREAMCOPROC
613 This option enables a driver for the stream co-processor 678 This option enables a driver for the stream co-processor
614 for cryptographic operations. 679 for cryptographic operations.
615 680
681source drivers/mmc/Kconfig
682
683config ETRAX_MMC_IOP
684 tristate "MMC/SD host driver using IO-processor"
685 depends on ETRAX_ARCH_V32 && MMC
686 help
687 This option enables the SD/MMC host controller interface.
688 The host controller is implemented using the built in
689 IO-Processor. Only the SPU is used in this implementation.
690
691config ETRAX_SPI_MMC
692# Make this one of several "choices" (possible simultaneously but
693# suggested uniquely) when an IOP driver emerges for "real" MMC/SD
694# protocol support.
695 tristate
696 depends on !ETRAX_MMC_IOP
697 default MMC
698 select SPI
699 select MMC_SPI
700 select ETRAX_SPI_MMC_BOARD
701
702# For the parts that can't be a module (due to restrictions in
703# framework elsewhere).
704config ETRAX_SPI_MMC_BOARD
705 boolean
706 default n
707
708# While the board info is MMC_SPI only, the drivers are written to be
709# independent of MMC_SPI, so we'll keep SPI non-dependent on the
710# MMC_SPI config choices (well, except for a single depends-on-line
711# for the board-info file until a separate non-MMC SPI board file
712# emerges).
713# FIXME: When that happens, we'll need to be able to ask for and
714# configure non-MMC SPI ports together with MMC_SPI ports (if multiple
715# SPI ports are enabled).
716
717config SPI_ETRAX_SSER
718 tristate
719 depends on SPI_MASTER && ETRAX_ARCH_V32 && EXPERIMENTAL
720 select SPI_BITBANG
721 help
722 This enables using an synchronous serial (sser) port as a
723 SPI master controller on Axis ETRAX FS and later. The
724 driver can be configured to use any sser port.
725
726config SPI_ETRAX_GPIO
727 tristate
728 depends on SPI_MASTER && ETRAX_ARCH_V32 && EXPERIMENTAL
729 select SPI_BITBANG
730 help
731 This enables using GPIO pins port as a SPI master controller
732 on Axis ETRAX FS and later. The driver can be configured to
733 use any GPIO pins.
734
735config ETRAX_SPI_SSER0
736 tristate "SPI using synchronous serial port 0 (sser0)"
737 depends on ETRAX_SPI_MMC
738 default m if MMC_SPI=m
739 default y if MMC_SPI=y
740 default y if MMC_SPI=n
741 select SPI_ETRAX_SSER
742 help
743 Say Y for an MMC/SD socket connected to synchronous serial port 0,
744 or for devices using the SPI protocol on that port. Say m if you
745 want to build it as a module, which will be named spi_crisv32_sser.
746 (You need to select MMC separately.)
747
748config ETRAX_SPI_SSER0_DMA
749 bool "DMA for SPI on sser0 enabled"
750 depends on ETRAX_SPI_SSER0
751 depends on !ETRAX_SERIAL_PORT1_DMA4_OUT && !ETRAX_SERIAL_PORT1_DMA5_IN
752 default y
753 help
754 Say Y if using DMA (dma4/dma5) for SPI on synchronous serial port 0.
755
756config ETRAX_SPI_MMC_CD_SSER0_PIN
757 string "MMC/SD card detect pin for SPI on sser0"
758 depends on ETRAX_SPI_SSER0 && MMC_SPI
759 default "pd11"
760 help
761 The pin to use for SD/MMC card detect. This pin should be pulled up
762 and grounded when a card is present. If defined as " " (space), no
763 pin is selected. A card must then always be inserted for proper
764 action.
765
766config ETRAX_SPI_MMC_WP_SSER0_PIN
767 string "MMC/SD card write-protect pin for SPI on sser0"
768 depends on ETRAX_SPI_SSER0 && MMC_SPI
769 default "pd10"
770 help
771 The pin to use for the SD/MMC write-protect signal for a memory
772 card. If defined as " " (space), the card is considered writable.
773
774config ETRAX_SPI_SSER1
775 tristate "SPI using synchronous serial port 1 (sser1)"
776 depends on ETRAX_SPI_MMC
777 default m if MMC_SPI=m && ETRAX_SPI_SSER0=n
778 default y if MMC_SPI=y && ETRAX_SPI_SSER0=n
779 default y if MMC_SPI=n && ETRAX_SPI_SSER0=n
780 select SPI_ETRAX_SSER
781 help
782 Say Y for an MMC/SD socket connected to synchronous serial port 1,
783 or for devices using the SPI protocol on that port. Say m if you
784 want to build it as a module, which will be named spi_crisv32_sser.
785 (You need to select MMC separately.)
786
787config ETRAX_SPI_SSER1_DMA
788 bool "DMA for SPI on sser1 enabled"
789 depends on ETRAX_SPI_SSER1 && !ETRAX_ETHERNET_IFACE1
790 depends on !ETRAX_SERIAL_PORT0_DMA6_OUT && !ETRAX_SERIAL_PORT0_DMA7_IN
791 default y
792 help
793 Say Y if using DMA (dma6/dma7) for SPI on synchronous serial port 1.
794
795config ETRAX_SPI_MMC_CD_SSER1_PIN
796 string "MMC/SD card detect pin for SPI on sser1"
797 depends on ETRAX_SPI_SSER1 && MMC_SPI
798 default "pd12"
799 help
800 The pin to use for SD/MMC card detect. This pin should be pulled up
801 and grounded when a card is present. If defined as " " (space), no
802 pin is selected. A card must then always be inserted for proper
803 action.
804
805config ETRAX_SPI_MMC_WP_SSER1_PIN
806 string "MMC/SD card write-protect pin for SPI on sser1"
807 depends on ETRAX_SPI_SSER1 && MMC_SPI
808 default "pd9"
809 help
810 The pin to use for the SD/MMC write-protect signal for a memory
811 card. If defined as " " (space), the card is considered writable.
812
813config ETRAX_SPI_GPIO
814 tristate "Bitbanged SPI using gpio pins"
815 depends on ETRAX_SPI_MMC
816 select SPI_ETRAX_GPIO
817 default m if MMC_SPI=m && ETRAX_SPI_SSER0=n && ETRAX_SPI_SSER1=n
818 default y if MMC_SPI=y && ETRAX_SPI_SSER0=n && ETRAX_SPI_SSER1=n
819 default y if MMC_SPI=n && ETRAX_SPI_SSER0=n && ETRAX_SPI_SSER1=n
820 help
821 Say Y for an MMC/SD socket connected to general I/O pins (but not
822 a complete synchronous serial ports), or for devices using the SPI
823 protocol on general I/O pins. Slow and slows down the system.
824 Say m to build it as a module, which will be called spi_crisv32_gpio.
825 (You need to select MMC separately.)
826
827# The default match that of sser0, only because that's how it was tested.
828config ETRAX_SPI_CS_PIN
829 string "SPI chip select pin"
830 depends on ETRAX_SPI_GPIO
831 default "pc3"
832 help
833 The pin to use for SPI chip select.
834
835config ETRAX_SPI_CLK_PIN
836 string "SPI clock pin"
837 depends on ETRAX_SPI_GPIO
838 default "pc1"
839 help
840 The pin to use for the SPI clock.
841
842config ETRAX_SPI_DATAIN_PIN
843 string "SPI MISO (data in) pin"
844 depends on ETRAX_SPI_GPIO
845 default "pc16"
846 help
847 The pin to use for SPI data in from the device.
848
849config ETRAX_SPI_DATAOUT_PIN
850 string "SPI MOSI (data out) pin"
851 depends on ETRAX_SPI_GPIO
852 default "pc0"
853 help
854 The pin to use for SPI data out to the device.
855
856config ETRAX_SPI_MMC_CD_GPIO_PIN
857 string "MMC/SD card detect pin for SPI using gpio (space for none)"
858 depends on ETRAX_SPI_GPIO && MMC_SPI
859 default "pd11"
860 help
861 The pin to use for SD/MMC card detect. This pin should be pulled up
862 and grounded when a card is present. If defined as " " (space), no
863 pin is selected. A card must then always be inserted for proper
864 action.
865
866config ETRAX_SPI_MMC_WP_GPIO_PIN
867 string "MMC/SD card write-protect pin for SPI using gpio (space for none)"
868 depends on ETRAX_SPI_GPIO && MMC_SPI
869 default "pd10"
870 help
871 The pin to use for the SD/MMC write-protect signal for a memory
872 card. If defined as " " (space), the card is considered writable.
873
874# Avoid choices causing non-working configs by conditionalizing the inclusion.
875if ETRAX_SPI_MMC
876source drivers/spi/Kconfig
877endif
878
616endif 879endif