m68knommu: make Coldfire 548x support more generic
[pandora-kernel.git] / arch / m68knommu / Kconfig
1 config M68K
2         bool
3         default y
4         select HAVE_IDE
5
6 config MMU
7         bool
8         default n
9
10 config NO_DMA
11         bool
12         depends on !COLDFIRE
13         default y
14
15 config FPU
16         bool
17         default n
18
19 config ZONE_DMA
20         bool
21         default y
22
23 config RWSEM_GENERIC_SPINLOCK
24         bool
25         default y
26
27 config RWSEM_XCHGADD_ALGORITHM
28         bool
29         default n
30
31 config ARCH_HAS_ILOG2_U32
32         bool
33         default n
34
35 config ARCH_HAS_ILOG2_U64
36         bool
37         default n
38
39 config GENERIC_FIND_NEXT_BIT
40         bool
41         default y
42
43 config GENERIC_GPIO
44         bool
45         default n
46
47 config GENERIC_HWEIGHT
48         bool
49         default y
50
51 config GENERIC_HARDIRQS
52         bool
53         default y
54
55 config GENERIC_HARDIRQS_NO__DO_IRQ
56         bool
57         default y
58
59 config GENERIC_CALIBRATE_DELAY
60         bool
61         default y
62
63 config GENERIC_CMOS_UPDATE
64         bool
65         default y
66
67 config TIME_LOW_RES
68         bool
69         default y
70
71 config GENERIC_CLOCKEVENTS
72         bool
73         default n
74
75 config NO_IOPORT
76         def_bool y
77
78 source "init/Kconfig"
79
80 source "kernel/Kconfig.freezer"
81
82 menu "Processor type and features"
83
84 choice
85         prompt "CPU"
86         default M68EZ328
87
88 config M68328
89         bool "MC68328"
90         help
91           Motorola 68328 processor support.
92
93 config M68EZ328
94         bool "MC68EZ328"
95         help
96           Motorola 68EX328 processor support.
97
98 config M68VZ328
99         bool "MC68VZ328"
100         help
101           Motorola 68VZ328 processor support.
102
103 config M68360
104         bool "MC68360"
105         help
106           Motorola 68360 processor support.
107
108 config M5206
109         bool "MCF5206"
110         help
111           Motorola ColdFire 5206 processor support.
112
113 config M5206e
114         bool "MCF5206e"
115         help
116           Motorola ColdFire 5206e processor support.
117
118 config M520x
119         bool "MCF520x"
120         select GENERIC_CLOCKEVENTS
121         help
122            Freescale Coldfire 5207/5208 processor support.
123
124 config M523x
125         bool "MCF523x"
126         select GENERIC_CLOCKEVENTS
127         help
128           Freescale Coldfire 5230/1/2/4/5 processor support
129
130 config M5249
131         bool "MCF5249"
132         help
133           Motorola ColdFire 5249 processor support.
134
135 config M5271
136         bool "MCF5271"
137         help
138           Freescale (Motorola) ColdFire 5270/5271 processor support.
139
140 config M5272
141         bool "MCF5272"
142         help
143           Motorola ColdFire 5272 processor support.
144
145 config M5275
146         bool "MCF5275"
147         help
148           Freescale (Motorola) ColdFire 5274/5275 processor support.
149
150 config M528x
151         bool "MCF528x"
152         select GENERIC_CLOCKEVENTS
153         help
154           Motorola ColdFire 5280/5282 processor support.
155
156 config M5307
157         bool "MCF5307"
158         help
159           Motorola ColdFire 5307 processor support.
160
161 config M532x
162         bool "MCF532x"
163         help
164           Freescale (Motorola) ColdFire 532x processor support.
165
166 config M5407
167         bool "MCF5407"
168         help
169           Motorola ColdFire 5407 processor support.
170
171 config M548x
172         bool "MCF548x"
173         help
174           Freescale ColdFire 5480/5481/5482/5483/5484/5485 processor support.
175
176 endchoice
177
178 config M527x
179         bool
180         depends on (M5271 || M5275)
181         select GENERIC_CLOCKEVENTS
182         default y
183
184 config M54xx
185         bool
186         depends on M548x
187         default y
188
189 config COLDFIRE
190         bool
191         depends on (M5206 || M5206e || M520x || M523x || M5249 || M527x || M5272 || M528x || M5307 || M532x || M5407 || M54xx)
192         select GENERIC_GPIO
193         select ARCH_REQUIRE_GPIOLIB
194         default y
195
196 config CLOCK_SET
197         bool "Enable setting the CPU clock frequency"
198         default n
199         help
200           On some CPU's you do not need to know what the core CPU clock
201           frequency is. On these you can disable clock setting. On some
202           traditional 68K parts, and on all ColdFire parts you need to set
203           the appropriate CPU clock frequency. On these devices many of the
204           onboard peripherals derive their timing from the master CPU clock
205           frequency.
206
207 config CLOCK_FREQ
208         int "Set the core clock frequency"
209         default "66666666"
210         depends on CLOCK_SET
211         help
212           Define the CPU clock frequency in use. This is the core clock
213           frequency, it may or may not be the same as the external clock
214           crystal fitted to your board. Some processors have an internal
215           PLL and can have their frequency programmed at run time, others
216           use internal dividers. In general the kernel won't setup a PLL
217           if it is fitted (there are some exceptions). This value will be
218           specific to the exact CPU that you are using.
219
220 config CLOCK_DIV
221         int "Set the core/bus clock divide ratio"
222         default "1"
223         depends on CLOCK_SET
224         help
225           On many SoC style CPUs the master CPU clock is also used to drive 
226           on-chip peripherals. The clock that is distributed to these
227           peripherals is sometimes a fixed ratio of the master clock
228           frequency. If so then set this to the divider ratio of the
229           master clock to the peripheral clock. If not sure then select 1.
230
231 config OLDMASK
232         bool "Old mask 5307 (1H55J) silicon"
233         depends on M5307
234         help
235           Build support for the older revision ColdFire 5307 silicon.
236           Specifically this is the 1H55J mask revision.
237
238 comment "Platform"
239
240 config PILOT3
241         bool "Pilot 1000/5000, PalmPilot Personal/Pro, or PalmIII support"
242         depends on M68328
243         help
244           Support for the Palm Pilot 1000/5000, Personal/Pro and PalmIII.
245
246 config XCOPILOT_BUGS
247         bool "(X)Copilot support"
248         depends on PILOT3
249         help
250           Support the bugs of Xcopilot.
251
252 config UC5272
253         bool 'Arcturus Networks uC5272 dimm board support'
254         depends on M5272
255         help
256           Support for the Arcturus Networks uC5272 dimm board.
257
258 config UC5282
259        bool "Arcturus Networks uC5282 board support"
260           depends on M528x
261        help
262           Support for the Arcturus Networks uC5282 dimm board.
263
264 config UCSIMM
265         bool "uCsimm module support"
266         depends on M68EZ328
267         help
268           Support for the Arcturus Networks uCsimm module.
269
270 config UCDIMM
271         bool "uDsimm module support"
272         depends on M68VZ328
273         help
274           Support for the Arcturus Networks uDsimm module.
275
276 config DRAGEN2
277         bool "DragenEngine II board support"
278         depends on M68VZ328
279         help
280           Support for the DragenEngine II board.
281
282 config DIRECT_IO_ACCESS
283         bool "Allow user to access IO directly"
284         depends on (UCSIMM || UCDIMM || DRAGEN2)
285         help
286           Disable the CPU internal registers protection in user mode,
287           to allow a user application to read/write them.
288
289 config INIT_LCD
290         bool "Initialize LCD"
291         depends on (UCSIMM || UCDIMM || DRAGEN2)
292         help
293           Initialize the LCD controller of the 68x328 processor.
294
295 config MEMORY_RESERVE
296         int "Memory reservation (MiB)"
297         depends on (UCSIMM || UCDIMM)
298         help
299           Reserve certain memory regions on 68x328 based boards.
300
301 config UCQUICC
302         bool "Lineo uCquicc board support"
303         depends on M68360
304         help
305           Support for the Lineo uCquicc board.
306
307 config ARN5206
308         bool "Arnewsh 5206 board support"
309         depends on M5206
310         help
311           Support for the Arnewsh 5206 board.
312
313 config M5206eC3
314         bool "Motorola M5206eC3 board support"
315         depends on M5206e
316         help
317           Support for the Motorola M5206eC3 board.
318
319 config ELITE
320         bool "Motorola M5206eLITE board support"
321         depends on M5206e
322         help
323           Support for the Motorola M5206eLITE board.
324
325 config M5208EVB
326         bool "Freescale M5208EVB board support"
327         depends on M520x
328         help
329           Support for the Freescale Coldfire M5208EVB.
330
331 config M5235EVB
332         bool "Freescale M5235EVB support"
333         depends on M523x
334         help
335           Support for the Freescale M5235EVB board.
336
337 config M5249C3
338         bool "Motorola M5249C3 board support"
339         depends on M5249
340         help
341           Support for the Motorola M5249C3 board.
342
343 config M5271EVB
344         bool "Freescale (Motorola) M5271EVB board support"
345         depends on M5271
346         help
347           Support for the Freescale (Motorola) M5271EVB board.
348
349 config M5275EVB
350         bool "Freescale (Motorola) M5275EVB board support"
351         depends on M5275
352         help
353           Support for the Freescale (Motorola) M5275EVB board.
354
355 config M5272C3
356         bool "Motorola M5272C3 board support"
357         depends on M5272
358         help
359           Support for the Motorola M5272C3 board.
360
361 config COBRA5272
362         bool "senTec COBRA5272 board support"
363         depends on M5272
364         help
365           Support for the senTec COBRA5272 board.
366
367 config AVNET5282
368         bool "Avnet 5282 board support"
369         depends on M528x
370         help
371           Support for the Avnet 5282 board.  
372           
373 config M5282EVB
374         bool "Motorola M5282EVB board support"
375         depends on M528x
376         help
377           Support for the Motorola M5282EVB board.
378
379 config COBRA5282
380         bool "senTec COBRA5282 board support"
381         depends on M528x
382         help
383           Support for the senTec COBRA5282 board.
384           
385 config SOM5282EM
386         bool "EMAC.Inc SOM5282EM board support"
387         depends on M528x
388         help
389           Support for the EMAC.Inc SOM5282EM module.  
390           
391 config WILDFIRE
392         bool "Intec Automation Inc. WildFire board support"
393         depends on M528x
394         help
395           Support for the Intec Automation Inc. WildFire.
396           
397 config WILDFIREMOD
398         bool "Intec Automation Inc. WildFire module support"
399         depends on M528x
400         help
401           Support for the Intec Automation Inc. WildFire module.
402
403 config ARN5307
404         bool "Arnewsh 5307 board support"
405         depends on M5307
406         help
407           Support for the Arnewsh 5307 board.
408
409 config M5307C3
410         bool "Motorola M5307C3 board support"
411         depends on M5307
412         help
413           Support for the Motorola M5307C3 board.
414
415 config SECUREEDGEMP3
416         bool "SnapGear SecureEdge/MP3 platform support"
417         depends on M5307
418         help
419           Support for the SnapGear SecureEdge/MP3 platform.
420
421 config M5329EVB
422         bool "Freescale (Motorola) M5329EVB board support"
423         depends on M532x
424         help
425           Support for the Freescale (Motorola) M5329EVB board.
426
427 config COBRA5329
428         bool "senTec COBRA5329 board support"
429         depends on M532x
430         help
431           Support for the senTec COBRA5329 board.
432
433 config M5407C3
434         bool "Motorola M5407C3 board support"
435         depends on M5407
436         help
437           Support for the Motorola M5407C3 board.
438
439 config CLEOPATRA
440         bool "Feith CLEOPATRA board support"
441         depends on (M5307 || M5407)
442         help
443           Support for the Feith Cleopatra boards.
444
445 config CANCam
446         bool "Feith CANCam board support"
447         depends on M5272
448         help
449           Support for the Feith CANCam board.
450
451 config SCALES
452         bool "Feith SCALES board support"
453         depends on M5272
454         help
455           Support for the Feith SCALES board.
456
457 config NETtel
458         bool "SecureEdge/NETtel board support"
459         depends on (M5206e || M5272 || M5307)
460         help
461           Support for the SnapGear NETtel/SecureEdge/SnapGear boards.
462
463 config SNAPGEAR
464         bool "SnapGear router board support"
465         depends on NETtel
466         help
467           Special additional support for SnapGear router boards.
468
469 config CPU16B
470         bool "Sneha Technologies S.L. Sarasvati board support"
471         depends on M5272
472         help
473           Support for the SNEHA CPU16B board.
474
475 config MOD5272
476         bool "Netburner MOD-5272 board support"
477         depends on M5272
478         help
479           Support for the Netburner MOD-5272 board.
480
481 config SAVANTrosie1
482         bool "Savant Rosie1 board support"
483         depends on M523x
484         help
485           Support for the Savant Rosie1 board.
486
487 config ROMFS_FROM_ROM
488         bool "ROMFS image not RAM resident"
489         depends on (NETtel || SNAPGEAR)
490         help
491           The ROMfs filesystem will stay resident in the FLASH/ROM, not be
492           moved into RAM.
493
494 config PILOT
495         bool
496         default y
497         depends on (PILOT3 || PILOT5)
498
499 config ARNEWSH
500         bool
501         default y
502         depends on (ARN5206 || ARN5307)
503
504 config FREESCALE
505         bool
506         default y
507         depends on (M5206eC3 || M5208EVB || M5235EVB || M5249C3 || M5271EVB || M5272C3 || M5275EVB || M5282EVB || M5307C3 || M5329EVB || M5407C3)
508
509 config HW_FEITH
510         bool
511         default y
512         depends on (CLEOPATRA || CANCam || SCALES)
513
514 config senTec
515         bool
516         default y
517         depends on (COBRA5272 || COBRA5282)
518         
519 config EMAC_INC
520         bool
521         default y
522         depends on (SOM5282EM)
523
524 config SNEHA
525         bool
526         default y
527         depends on CPU16B
528
529 config SAVANT
530         bool
531         default y
532         depends on SAVANTrosie1
533
534 config AVNET
535         bool
536         default y
537         depends on (AVNET5282)
538
539 config UBOOT
540         bool "Support for U-Boot command line parameters"
541         help
542           If you say Y here kernel will try to collect command
543           line parameters from the initial u-boot stack.
544         default n
545
546 config 4KSTACKS
547         bool "Use 4Kb for kernel stacks instead of 8Kb"
548         default y
549         help
550           If you say Y here the kernel will use a 4Kb stacksize for the
551           kernel stack attached to each process/thread. This facilitates
552           running more threads on a system and also reduces the pressure
553           on the VM subsystem for higher order allocations.
554
555 config HZ
556         int
557         default 1000 if CLEOPATRA
558         default 100
559
560 comment "RAM configuration"
561
562 config RAMBASE
563         hex "Address of the base of RAM"
564         default "0"
565         help
566           Define the address that RAM starts at. On many platforms this is
567           0, the base of the address space. And this is the default. Some
568           platforms choose to setup their RAM at other addresses within the
569           processor address space.
570
571 config RAMSIZE
572         hex "Size of RAM (in bytes), or 0 for automatic"
573         default "0x400000"
574         help
575           Define the size of the system RAM. If you select 0 then the
576           kernel will try to probe the RAM size at runtime. This is not
577           supported on all CPU types.
578
579 config VECTORBASE
580         hex "Address of the base of system vectors"
581         default "0"
582         help
583           Define the address of the system vectors. Commonly this is
584           put at the start of RAM, but it doesn't have to be. On ColdFire
585           platforms this address is programmed into the VBR register, thus
586           actually setting the address to use.
587
588 config KERNELBASE
589         hex "Address of the base of kernel code"
590         default "0x400"
591         help
592           Typically on m68k systems the kernel will not start at the base
593           of RAM, but usually some small offset from it. Define the start
594           address of the kernel here. The most common setup will have the
595           processor vectors at the base of RAM and then the start of the
596           kernel. On some platforms some RAM is reserved for boot loaders
597           and the kernel starts after that. The 0x400 default was based on
598           a system with the RAM based at address 0, and leaving enough room
599           for the theoretical maximum number of 256 vectors.
600
601 choice
602         prompt "RAM bus width"
603         default RAMAUTOBIT
604
605 config RAMAUTOBIT
606         bool "AUTO"
607         help
608           Select the physical RAM data bus size. Not needed on most platforms,
609           so you can generally choose AUTO.
610
611 config RAM8BIT
612         bool "8bit"
613         help
614           Configure RAM bus to be 8 bits wide.
615
616 config RAM16BIT
617         bool "16bit"
618         help
619           Configure RAM bus to be 16 bits wide.
620
621 config RAM32BIT
622         bool "32bit"
623         help
624           Configure RAM bus to be 32 bits wide.
625
626 endchoice
627
628 comment "ROM configuration"
629
630 config ROM
631         bool "Specify ROM linker regions"
632         default n
633         help
634           Define a ROM region for the linker script. This creates a kernel
635           that can be stored in flash, with possibly the text, and data
636           regions being copied out to RAM at startup.
637
638 config ROMBASE
639         hex "Address of the base of ROM device"
640         default "0"
641         depends on ROM
642         help
643           Define the address that the ROM region starts at. Some platforms
644           use this to set their chip select region accordingly for the boot
645           device.
646
647 config ROMVEC
648         hex "Address of the base of the ROM vectors"
649         default "0"
650         depends on ROM
651         help
652           This is almost always the same as the base of the ROM. Since on all
653           68000 type variants the vectors are at the base of the boot device
654           on system startup.
655
656 config ROMVECSIZE
657         hex "Size of ROM vector region (in bytes)"
658         default "0x400"
659         depends on ROM
660         help
661           Define the size of the vector region in ROM. For most 68000
662           variants this would be 0x400 bytes in size. Set to 0 if you do
663           not want a vector region at the start of the ROM.
664
665 config ROMSTART
666         hex "Address of the base of system image in ROM"
667         default "0x400"
668         depends on ROM
669         help
670           Define the start address of the system image in ROM. Commonly this
671           is strait after the ROM vectors.
672
673 config ROMSIZE
674         hex "Size of the ROM device"
675         default "0x100000"
676         depends on ROM
677         help
678           Size of the ROM device. On some platforms this is used to setup
679           the chip select that controls the boot ROM device.
680
681 choice
682         prompt "Kernel executes from"
683         ---help---
684           Choose the memory type that the kernel will be running in.
685
686 config RAMKERNEL
687         bool "RAM"
688         help
689           The kernel will be resident in RAM when running.
690
691 config ROMKERNEL
692         bool "ROM"
693         help
694           The kernel will be resident in FLASH/ROM when running. This is
695           often referred to as Execute-in-Place (XIP), since the kernel
696           code executes from the position it is stored in the FLASH/ROM.
697
698 endchoice
699
700 if COLDFIRE
701 source "kernel/Kconfig.preempt"
702 endif
703
704 source "kernel/time/Kconfig"
705
706 source "mm/Kconfig"
707
708 endmenu
709
710 config ISA_DMA_API
711         bool
712         depends on !M5272
713         default y
714
715 source "drivers/pcmcia/Kconfig"
716
717 menu "Executable file formats"
718
719 source "fs/Kconfig.binfmt"
720
721 endmenu
722
723 menu "Power management options"
724
725 config PM
726         bool "Power Management support"
727         help
728           Support processor power management modes
729
730 endmenu
731
732 source "net/Kconfig"
733
734 source "drivers/Kconfig"
735
736 source "fs/Kconfig"
737
738 source "arch/m68knommu/Kconfig.debug"
739
740 source "security/Kconfig"
741
742 source "crypto/Kconfig"
743
744 source "lib/Kconfig"