CRIS: avoid using arch links in Kconfig
[linux-2.6.git] / arch / cris / arch-v32 / drivers / Kconfig
1 if ETRAX_ARCH_V32
2
3 config ETRAX_ETHERNET
4         bool "Ethernet support"
5         depends on ETRAX_ARCH_V32
6         select NET_ETHERNET
7         help
8           This option enables the ETRAX FS built-in 10/100Mbit Ethernet
9           controller.
10
11 config ETRAX_ETHERNET_HW_CSUM
12         bool "Hardware accelerated ethernet checksum and scatter/gather"
13         depends on ETRAX_ETHERNET
14         depends on ETRAX_STREAMCOPROC
15         default y
16         help
17           Hardware acceleration of checksumming and scatter/gather
18
19 config ETRAX_ETHERNET_IFACE0
20         depends on ETRAX_ETHERNET
21         bool "Enable network interface 0"
22
23 config ETRAX_ETHERNET_IFACE1
24         depends on ETRAX_ETHERNET
25         bool "Enable network interface 1 (uses DMA6 and DMA7)"
26
27 choice
28         prompt "Network LED behavior"
29         depends on ETRAX_ETHERNET
30         default ETRAX_NETWORK_LED_ON_WHEN_ACTIVITY
31
32 config ETRAX_NETWORK_LED_ON_WHEN_LINK
33         bool "LED_on_when_link"
34         help
35           Selecting LED_on_when_link will light the LED when there is a
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
41           This setting will also affect the behaviour of other activity LEDs
42           e.g. Bluetooth.
43
44 config ETRAX_NETWORK_LED_ON_WHEN_ACTIVITY
45         bool "LED_on_when_activity"
46         help
47           Selecting LED_on_when_link will light the LED when there is a
48           connection and will flash off when there is activity.
49
50           Selecting LED_on_when_activity will light the LED only when
51           there is activity.
52
53           This setting will also affect the behaviour of other activity LEDs
54           e.g. Bluetooth.
55
56 endchoice
57
58 config ETRAXFS_SERIAL
59         bool "Serial-port support"
60         depends on ETRAX_ARCH_V32
61         help
62           Enables the ETRAX FS serial driver for ser0 (ttyS0)
63           You probably want this enabled.
64
65 config ETRAX_SERIAL_PORT0
66         bool "Serial port 0 enabled"
67         depends on ETRAXFS_SERIAL
68         help
69           Enables the ETRAX FS serial driver for ser0 (ttyS0)
70           Normally you want this on. You can control what DMA channels to use
71           if you do not need DMA to something else.
72           ser0 can use dma4 or dma6 for output and dma5 or dma7 for input.
73
74 choice
75         prompt "Ser0 DMA in channel "
76         depends on ETRAX_SERIAL_PORT0
77         default ETRAX_SERIAL_PORT0_NO_DMA_IN
78         help
79           What DMA channel to use for ser0.
80
81
82 config ETRAX_SERIAL_PORT0_NO_DMA_IN
83         bool "Ser0 uses no DMA for input"
84         help
85           Do not use DMA for ser0 input.
86
87 config ETRAX_SERIAL_PORT0_DMA7_IN
88         bool "Ser0 uses DMA7 for input"
89         depends on ETRAX_SERIAL_PORT0
90         help
91           Enables the DMA7 input channel for ser0 (ttyS0).
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
97 endchoice
98
99 choice
100         prompt "Ser0 DMA out channel"
101         depends on ETRAX_SERIAL_PORT0
102         default ETRAX_SERIAL_PORT0_NO_DMA_OUT
103
104 config ETRAX_SERIAL_PORT0_NO_DMA_OUT
105         bool "Ser0 uses no DMA for output"
106         help
107           Do not use DMA for ser0 output.
108
109 config ETRAX_SERIAL_PORT0_DMA6_OUT
110         bool "Ser0 uses DMA6 for output"
111         depends on ETRAX_SERIAL_PORT0
112         help
113           Enables the DMA6 output channel for ser0 (ttyS0).
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
119 endchoice
120
121 config ETRAX_SER0_DTR_BIT
122         string "Ser 0 DTR bit (empty = not used)"
123         depends on ETRAX_SERIAL_PORT0
124
125 config ETRAX_SER0_RI_BIT
126         string "Ser 0 RI bit (empty = not used)"
127         depends on ETRAX_SERIAL_PORT0
128
129 config ETRAX_SER0_DSR_BIT
130         string "Ser 0 DSR bit (empty = not used)"
131         depends on ETRAX_SERIAL_PORT0
132
133 config ETRAX_SER0_CD_BIT
134         string "Ser 0 CD bit (empty = not used)"
135         depends on ETRAX_SERIAL_PORT0
136
137 config ETRAX_SERIAL_PORT1
138         bool "Serial port 1 enabled"
139         depends on ETRAXFS_SERIAL
140         help
141           Enables the ETRAX FS serial driver for ser1 (ttyS1).
142
143 choice
144         prompt "Ser1 DMA in channel "
145         depends on ETRAX_SERIAL_PORT1
146         default ETRAX_SERIAL_PORT1_NO_DMA_IN
147         help
148           What DMA channel to use for ser1.
149
150
151 config ETRAX_SERIAL_PORT1_NO_DMA_IN
152         bool "Ser1 uses no DMA for input"
153         help
154           Do not use DMA for ser1 input.
155
156 config ETRAX_SERIAL_PORT1_DMA5_IN
157         bool "Ser1 uses DMA5 for input"
158         depends on ETRAX_SERIAL_PORT1
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
166 endchoice
167
168 choice
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
175 config ETRAX_SERIAL_PORT1_NO_DMA_OUT
176         bool "Ser1 uses no DMA for output"
177         help
178           Do not use DMA for ser1 output.
179
180 config ETRAX_SERIAL_PORT1_DMA4_OUT
181         bool "Ser1 uses DMA4 for output"
182         depends on ETRAX_SERIAL_PORT1
183         help
184           Enables the DMA4 output channel for ser1 (ttyS1).
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
190 endchoice
191
192 config ETRAX_SER1_DTR_BIT
193         string "Ser 1 DTR bit (empty = not used)"
194         depends on ETRAX_SERIAL_PORT1
195
196 config ETRAX_SER1_RI_BIT
197         string "Ser 1 RI bit (empty = not used)"
198         depends on ETRAX_SERIAL_PORT1
199
200 config ETRAX_SER1_DSR_BIT
201         string "Ser 1 DSR bit (empty = not used)"
202         depends on ETRAX_SERIAL_PORT1
203
204 config ETRAX_SER1_CD_BIT
205         string "Ser 1 CD bit (empty = not used)"
206         depends on ETRAX_SERIAL_PORT1
207
208 config ETRAX_SERIAL_PORT2
209         bool "Serial port 2 enabled"
210         depends on ETRAXFS_SERIAL
211         help
212           Enables the ETRAX FS serial driver for ser2 (ttyS2).
213
214 choice
215         prompt "Ser2 DMA in channel "
216         depends on ETRAX_SERIAL_PORT2
217         default ETRAX_SERIAL_PORT2_NO_DMA_IN
218         help
219           What DMA channel to use for ser2.
220
221
222 config ETRAX_SERIAL_PORT2_NO_DMA_IN
223         bool "Ser2 uses no DMA for input"
224         help
225           Do not use DMA for ser2 input.
226
227 config ETRAX_SERIAL_PORT2_DMA3_IN
228         bool "Ser2 uses DMA3 for input"
229         depends on ETRAX_SERIAL_PORT2
230         help
231           Enables the DMA3 input channel for ser2 (ttyS2).
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
237 endchoice
238
239 choice
240         prompt "Ser2 DMA out channel"
241         depends on ETRAX_SERIAL_PORT2
242         default ETRAX_SERIAL_PORT2_NO_DMA_OUT
243
244 config ETRAX_SERIAL_PORT2_NO_DMA_OUT
245         bool "Ser2 uses no DMA for output"
246         help
247           Do not use DMA for ser2 output.
248
249 config ETRAX_SERIAL_PORT2_DMA2_OUT
250         bool "Ser2 uses DMA2 for output"
251         depends on ETRAX_SERIAL_PORT2
252         help
253           Enables the DMA2 output channel for ser2 (ttyS2).
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
259 endchoice
260
261 config ETRAX_SER2_DTR_BIT
262         string "Ser 2 DTR bit (empty = not used)"
263         depends on ETRAX_SERIAL_PORT2
264
265 config ETRAX_SER2_RI_BIT
266         string "Ser 2 RI bit (empty = not used)"
267         depends on ETRAX_SERIAL_PORT2
268
269 config ETRAX_SER2_DSR_BIT
270         string "Ser 2 DSR bit (empty = not used)"
271         depends on ETRAX_SERIAL_PORT2
272
273 config ETRAX_SER2_CD_BIT
274         string "Ser 2 CD bit (empty = not used)"
275         depends on ETRAX_SERIAL_PORT2
276
277 config ETRAX_SERIAL_PORT3
278         bool "Serial port 3 enabled"
279         depends on ETRAXFS_SERIAL
280         help
281           Enables the ETRAX FS serial driver for ser3 (ttyS3).
282
283 choice
284         prompt "Ser3 DMA in channel "
285         depends on ETRAX_SERIAL_PORT3
286         default ETRAX_SERIAL_PORT3_NO_DMA_IN
287         help
288           What DMA channel to use for ser3.
289
290
291 config ETRAX_SERIAL_PORT3_NO_DMA_IN
292         bool "Ser3 uses no DMA for input"
293         help
294           Do not use DMA for ser3 input.
295
296 config ETRAX_SERIAL_PORT3_DMA9_IN
297         bool "Ser3 uses DMA9 for input"
298         depends on ETRAX_SERIAL_PORT3
299         help
300           Enables the DMA9 input channel for ser3 (ttyS3).
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
306 endchoice
307
308 choice
309         prompt "Ser3 DMA out channel"
310         depends on ETRAX_SERIAL_PORT3
311         default ETRAX_SERIAL_PORT3_NO_DMA_OUT
312
313 config ETRAX_SERIAL_PORT3_NO_DMA_OUT
314         bool "Ser3 uses no DMA for output"
315         help
316           Do not use DMA for ser3 output.
317
318 config ETRAX_SERIAL_PORT3_DMA8_OUT
319         bool "Ser3 uses DMA8 for output"
320         depends on ETRAX_SERIAL_PORT3
321         help
322           Enables the DMA8 output channel for ser3 (ttyS3).
323           If you do not enable DMA, an interrupt for each character will be
324           used when transmitting data.
325           Normally you want to use DMA, unless you use the DMA channel for
326           something else.
327
328 endchoice
329
330 config ETRAX_SER3_DTR_BIT
331         string "Ser 3 DTR bit (empty = not used)"
332         depends on ETRAX_SERIAL_PORT3
333
334 config ETRAX_SER3_RI_BIT
335         string "Ser 3 RI bit (empty = not used)"
336         depends on ETRAX_SERIAL_PORT3
337
338 config ETRAX_SER3_DSR_BIT
339         string "Ser 3 DSR bit (empty = not used)"
340         depends on ETRAX_SERIAL_PORT3
341
342 config ETRAX_SER3_CD_BIT
343         string "Ser 3 CD bit (empty = not used)"
344         depends on ETRAX_SERIAL_PORT3
345
346 config ETRAX_RS485
347         bool "RS-485 support"
348         depends on ETRAX_SERIAL
349         help
350           Enables support for RS-485 serial communication.  For a primer on
351           RS-485, see <http://www.hw.cz/english/docs/rs485/rs485.html>.
352
353 config ETRAX_RS485_DISABLE_RECEIVER
354         bool "Disable serial receiver"
355         depends on ETRAX_RS485
356         help
357           It is necessary to disable the serial receiver to avoid serial
358           loopback.  Not all products are able to do this in software only.
359           Axis 2400/2401 must disable receiver.
360
361 config ETRAX_AXISFLASHMAP
362         bool "Axis flash-map support"
363         depends on ETRAX_ARCH_V32
364         select MTD
365         select MTD_CFI
366         select MTD_CFI_AMDSTD
367         select MTD_CHAR
368         select MTD_BLOCK
369         select MTD_PARTITIONS
370         select MTD_CONCAT
371         select MTD_COMPLEX_MAPPINGS
372         help
373           This option enables MTD mapping of flash devices.  Needed to use
374           flash memories.  If unsure, say Y.
375
376 config ETRAX_SYNCHRONOUS_SERIAL
377         bool "Synchronous serial-port support"
378         depends on ETRAX_ARCH_V32
379         help
380           Enables the ETRAX FS synchronous serial driver.
381
382 config ETRAX_SYNCHRONOUS_SERIAL_PORT0
383          bool "Synchronous serial port 0 enabled"
384          depends on ETRAX_SYNCHRONOUS_SERIAL
385          help
386            Enabled synchronous serial port 0.
387
388 config ETRAX_SYNCHRONOUS_SERIAL0_DMA
389          bool "Enable DMA on synchronous serial port 0."
390          depends on ETRAX_SYNCHRONOUS_SERIAL_PORT0
391          help
392            A synchronous serial port can run in manual or DMA mode.
393            Selecting this option will make it run in DMA mode.
394
395 config ETRAX_SYNCHRONOUS_SERIAL_PORT1
396          bool "Synchronous serial port 1 enabled"
397          depends on ETRAX_SYNCHRONOUS_SERIAL
398          help
399            Enabled synchronous serial port 1.
400
401 config ETRAX_SYNCHRONOUS_SERIAL1_DMA
402          bool "Enable DMA on synchronous serial port 1."
403          depends on ETRAX_SYNCHRONOUS_SERIAL_PORT1
404          help
405            A synchronous serial port can run in manual or DMA mode.
406            Selecting this option will make it run in DMA mode.
407
408 config ETRAX_PTABLE_SECTOR
409         int "Byte-offset of partition table sector"
410         depends on ETRAX_AXISFLASHMAP
411         default "65536"
412         help
413           Byte-offset of the partition table in the first flash chip.
414           The default value is 64kB and should not be changed unless
415           you know exactly what you are doing. The only valid reason
416           for changing this is when the flash block size is bigger
417           than 64kB (e.g. when using two parallel 16 bit flashes).
418
419 config ETRAX_NANDFLASH
420         bool "NAND flash support"
421         depends on ETRAX_ARCH_V32
422         select MTD_NAND
423         select MTD_NAND_IDS
424         help
425           This option enables MTD mapping of NAND flash devices.  Needed to use
426           NAND flash memories.  If unsure, say Y.
427
428 config ETRAX_I2C
429         bool "I2C driver"
430         depends on ETRAX_ARCH_V32
431         help
432           This option enabled the I2C driver used by e.g. the RTC driver.
433
434 config ETRAX_I2C_DATA_PORT
435         string "I2C data pin"
436         depends on ETRAX_I2C
437         help
438           The pin to use for I2C data.
439
440 config ETRAX_I2C_CLK_PORT
441         string "I2C clock pin"
442         depends on ETRAX_I2C
443         help
444           The pin to use for I2C clock.
445
446 config ETRAX_RTC
447         bool "Real Time Clock support"
448         depends on ETRAX_ARCH_V32
449         help
450           Enabled RTC support.
451
452 choice
453         prompt "RTC chip"
454         depends on ETRAX_RTC
455         default ETRAX_PCF8563
456
457 config ETRAX_PCF8563
458         bool "PCF8563"
459         help
460           Philips PCF8563 RTC
461
462 endchoice
463
464 config ETRAX_GPIO
465         bool "GPIO support"
466         depends on ETRAX_ARCH_V32
467         ---help---
468           Enables the ETRAX general port device (major 120, minors 0-4).
469           You can use this driver to access the general port bits. It supports
470           these ioctl's:
471           #include <linux/etraxgpio.h>
472           fd = open("/dev/gpioa", O_RDWR); // or /dev/gpiob
473           ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_SETBITS), bits_to_set);
474           ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_CLRBITS), bits_to_clear);
475           err = ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_READ_INBITS), &val);
476           Remember that you need to setup the port directions appropriately in
477           the General configuration.
478
479 config ETRAX_PA_BUTTON_BITMASK
480         hex "PA-buttons bitmask"
481         depends on ETRAX_GPIO
482         default "0x02"
483         help
484           This is a bitmask (8 bits) with information about what bits on PA
485           that are used for buttons.
486           Most products has a so called TEST button on PA1, if that is true
487           use 0x02 here.
488           Use 00 if there are no buttons on PA.
489           If the bitmask is <> 00 a button driver will be included in the gpio
490           driver. ETRAX general I/O support must be enabled.
491
492 config ETRAX_PA_CHANGEABLE_DIR
493         hex "PA user changeable dir mask"
494         depends on ETRAX_GPIO
495         default "0x00"
496         help
497           This is a bitmask (8 bits) with information of what bits in PA that a
498           user can change direction on using ioctl's.
499           Bit set = changeable.
500           You probably want 0x00 here, but it depends on your hardware.
501
502 config ETRAX_PA_CHANGEABLE_BITS
503         hex "PA user changeable bits mask"
504         depends on ETRAX_GPIO
505         default "0x00"
506         help
507           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.
509           Bit set = changeable.
510
511 config ETRAX_PB_CHANGEABLE_DIR
512         hex "PB user changeable dir mask"
513         depends on ETRAX_GPIO
514         default "0x00000"
515         help
516           This is a bitmask (18 bits) with information of what bits in PB
517           that a user can change direction on using ioctl's.
518           Bit set = changeable.
519           You probably want 0x00000 here, but it depends on your hardware.
520
521 config ETRAX_PB_CHANGEABLE_BITS
522         hex "PB user changeable bits mask"
523         depends on ETRAX_GPIO
524         default "0x00000"
525         help
526           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.
528           Bit set = changeable.
529
530 config ETRAX_PC_CHANGEABLE_DIR
531         hex "PC user changeable dir mask"
532         depends on ETRAX_GPIO
533         default "0x00000"
534         help
535           This is a bitmask (18 bits) with information of what bits in PC
536           that a user can change direction on using ioctl's.
537           Bit set = changeable.
538           You probably want 0x00000 here, but it depends on your hardware.
539
540 config ETRAX_PC_CHANGEABLE_BITS
541         hex "PC user changeable bits mask"
542         depends on ETRAX_GPIO
543         default "0x00000"
544         help
545           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.
547           Bit set = changeable.
548
549 config ETRAX_PD_CHANGEABLE_DIR
550         hex "PD user changeable dir mask"
551         depends on ETRAX_GPIO
552         default "0x00000"
553         help
554           This is a bitmask (18 bits) with information of what bits in PD
555           that a user can change direction on using ioctl's.
556           Bit set = changeable.
557           You probably want 0x00000 here, but it depends on your hardware.
558
559 config ETRAX_PD_CHANGEABLE_BITS
560         hex "PD user changeable bits mask"
561         depends on ETRAX_GPIO
562         default "0x00000"
563         help
564           This is a bitmask (18 bits) with information of what bits in PD
565           that a user can change the value on using ioctl's.
566           Bit set = changeable.
567
568 config ETRAX_PE_CHANGEABLE_DIR
569         hex "PE user changeable dir mask"
570         depends on ETRAX_GPIO
571         default "0x00000"
572         help
573           This is a bitmask (18 bits) with information of what bits in PE
574           that a user can change direction on using ioctl's.
575           Bit set = changeable.
576           You probably want 0x00000 here, but it depends on your hardware.
577
578 config ETRAX_PE_CHANGEABLE_BITS
579         hex "PE user changeable bits mask"
580         depends on ETRAX_GPIO
581         default "0x00000"
582         help
583           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.
585           Bit set = changeable.
586
587 config ETRAX_CARDBUS
588         bool "Cardbus support"
589         depends on ETRAX_ARCH_V32
590         select PCCARD
591         select CARDBUS
592         select HOTPLUG
593         select PCCARD_NONSTATIC
594         help
595          Enabled the ETRAX Cardbus driver.
596
597 config PCI
598        bool
599        depends on ETRAX_CARDBUS
600        default y
601
602 config ETRAX_IOP_FW_LOAD
603         tristate "IO-processor hotplug firmware loading support"
604         depends on ETRAX_ARCH_V32
605         select FW_LOADER
606         help
607           Enables IO-processor hotplug firmware loading support.
608
609 config ETRAX_STREAMCOPROC
610         tristate "Stream co-processor driver enabled"
611         depends on ETRAX_ARCH_V32
612         help
613           This option enables a driver for the stream co-processor
614           for cryptographic operations.
615
616 endif