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