blob: c41234f1b825509e5e83d5725739723f56ed76d7 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#
2# For a description of the syntax of this configuration file,
3# see Documentation/kbuild/kconfig-language.txt.
4#
5
6mainmenu "Linux/M32R Kernel Configuration"
7
8config M32R
9 bool
10 default y
Sam Ravnborgec7748b2008-02-09 10:46:40 +010011 select HAVE_IDE
Mathieu Desnoyers42d4b832008-02-02 15:10:34 -050012 select HAVE_OPROFILE
Rusty Russell98a79d62008-12-13 21:19:41 +103013 select INIT_ALL_POSSIBLE
Linus Torvalds1da177e2005-04-16 15:20:36 -070014
15config SBUS
16 bool
17
Linus Torvalds1da177e2005-04-16 15:20:36 -070018config GENERIC_ISA_DMA
19 bool
20 default y
21
Christoph Lameter5ac6da62007-02-10 01:43:14 -080022config ZONE_DMA
23 bool
24 default y
25
Linus Torvalds1da177e2005-04-16 15:20:36 -070026config GENERIC_HARDIRQS
27 bool
28 default y
29
30config GENERIC_IRQ_PROBE
31 bool
32 default y
33
Al Viro5ea81762007-02-11 15:41:31 +000034config NO_IOPORT
35 def_bool y
36
Dan Williams1b0fac42007-07-15 23:40:26 -070037config NO_DMA
38 def_bool y
39
H. Peter Anvinbdc80782008-02-08 04:21:26 -080040config HZ
41 int
42 default 100
43
john stultz95ad7592009-09-21 17:04:04 -070044config GENERIC_TIME
45 def_bool y
46
47config ARCH_USES_GETTIMEOFFSET
48 def_bool y
49
Linus Torvalds1da177e2005-04-16 15:20:36 -070050source "init/Kconfig"
51
Matt Helsleydc52ddc2008-10-18 20:27:21 -070052source "kernel/Kconfig.freezer"
53
Linus Torvalds1da177e2005-04-16 15:20:36 -070054
55menu "Processor type and features"
56
57choice
58 prompt "Platform Type"
59 default PLAT_MAPPI
60
61config PLAT_MAPPI
62 bool "Mappi-I"
63 help
64 The Mappi-I is an FPGA board for SOC (System-On-a-Chip) prototyping.
65 You can operate a Linux system on this board by using an M32R
66 softmacro core, which is a fully-synthesizable functional model
67 described in Verilog-HDL.
68
69 The Mappi-I board was the first platform, which had been used
70 to port and develop a Linux system for the M32R processor.
71 Currently, the Mappi-II, an heir to the Mappi-I, is available.
72
73config PLAT_USRV
74 bool "uServer"
Hirokazu Takatae070fb742007-08-17 17:22:15 +090075 select PLAT_HAS_INT1ICU
Linus Torvalds1da177e2005-04-16 15:20:36 -070076
77config PLAT_M32700UT
78 bool "M32700UT"
Hirokazu Takatae070fb742007-08-17 17:22:15 +090079 select PLAT_HAS_INT0ICU
80 select PLAT_HAS_INT1ICU
81 select PLAT_HAS_INT2ICU
Linus Torvalds1da177e2005-04-16 15:20:36 -070082 help
83 The M3T-M32700UT is an evaluation board based on uT-Engine
84 specification. This board has an M32700 (Chaos) evaluation chip.
85 You can say Y for SMP, because the M32700 is a single chip
86 multiprocessor.
87
88config PLAT_OPSPUT
89 bool "OPSPUT"
Hirokazu Takatae070fb742007-08-17 17:22:15 +090090 select PLAT_HAS_INT0ICU
91 select PLAT_HAS_INT1ICU
92 select PLAT_HAS_INT2ICU
Linus Torvalds1da177e2005-04-16 15:20:36 -070093 help
94 The OPSPUT is an evaluation board based on uT-Engine
95 specification. This board has a OPSP-REP chip.
96
97config PLAT_OAKS32R
98 bool "OAKS32R"
99 help
100 The OAKS32R is a tiny, inexpensive evaluation board.
101 Please note that if you say Y here and choose chip "M32102",
102 say N for MMU and select a no-MMU version kernel, otherwise
103 a kernel with MMU support will not work, because the M32102
104 is a microcontroller for embedded systems and it has no MMU.
105
106config PLAT_MAPPI2
107 bool "Mappi-II(M3A-ZA36/M3A-ZA52)"
108
Hirokazu Takata23680862005-06-21 17:16:10 -0700109config PLAT_MAPPI3
110 bool "Mappi-III(M3A-2170)"
111
Hirokazu Takata9287d952006-01-06 00:18:41 -0800112config PLAT_M32104UT
113 bool "M32104UT"
Hirokazu Takatae070fb742007-08-17 17:22:15 +0900114 select PLAT_HAS_INT1ICU
Hirokazu Takata9287d952006-01-06 00:18:41 -0800115 help
116 The M3T-M32104UT is an reference board based on uT-Engine
117 specification. This board has a M32104 chip.
118
Linus Torvalds1da177e2005-04-16 15:20:36 -0700119endchoice
120
121choice
122 prompt "Processor family"
123 default CHIP_M32700
124
125config CHIP_M32700
126 bool "M32700 (Chaos)"
127
128config CHIP_M32102
129 bool "M32102"
130
Hirokazu Takata9287d952006-01-06 00:18:41 -0800131config CHIP_M32104
132 bool "M32104"
133 depends on PLAT_M32104UT
134
Linus Torvalds1da177e2005-04-16 15:20:36 -0700135config CHIP_VDEC2
136 bool "VDEC2"
137
138config CHIP_OPSP
139 bool "OPSP"
140
141endchoice
142
143config MMU
144 bool "Support for memory management hardware"
145 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
146 default y
147
148config TLB_ENTRIES
149 int "TLB Entries"
150 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
151 default 32 if CHIP_M32700 || CHIP_OPSP
152 default 16 if CHIP_VDEC2
153
154
155config ISA_M32R
156 bool
Hirokazu Takata9287d952006-01-06 00:18:41 -0800157 depends on CHIP_M32102 || CHIP_M32104
Linus Torvalds1da177e2005-04-16 15:20:36 -0700158 default y
159
160config ISA_M32R2
161 bool
162 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
163 default y
164
165config ISA_DSP_LEVEL2
166 bool
167 depends on CHIP_M32700 || CHIP_OPSP
168 default y
169
170config ISA_DUAL_ISSUE
171 bool
172 depends on CHIP_M32700 || CHIP_OPSP
173 default y
174
Hirokazu Takatae070fb742007-08-17 17:22:15 +0900175config PLAT_HAS_INT0ICU
176 bool
177 default n
178
179config PLAT_HAS_INT1ICU
180 bool
181 default n
182
183config PLAT_HAS_INT2ICU
184 bool
185 default n
186
Linus Torvalds1da177e2005-04-16 15:20:36 -0700187config BUS_CLOCK
188 int "Bus Clock [Hz] (integer)"
189 default "70000000" if PLAT_MAPPI
190 default "25000000" if PLAT_USRV
Hirokazu Takata23680862005-06-21 17:16:10 -0700191 default "50000000" if PLAT_MAPPI3
Linus Torvalds1da177e2005-04-16 15:20:36 -0700192 default "50000000" if PLAT_M32700UT
193 default "50000000" if PLAT_OPSPUT
Hirokazu Takata9287d952006-01-06 00:18:41 -0800194 default "54000000" if PLAT_M32104UT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700195 default "33333333" if PLAT_OAKS32R
196 default "20000000" if PLAT_MAPPI2
197
198config TIMER_DIVIDE
199 int "Timer divider (integer)"
200 default "128"
201
202config CPU_LITTLE_ENDIAN
203 bool "Generate little endian code"
204 default n
205
206config MEMORY_START
207 hex "Physical memory start address (hex)"
Hirokazu Takata23680862005-06-21 17:16:10 -0700208 default "08000000" if PLAT_MAPPI || PLAT_MAPPI2 || PLAT_MAPPI3
Linus Torvalds1da177e2005-04-16 15:20:36 -0700209 default "08000000" if PLAT_USRV
210 default "08000000" if PLAT_M32700UT
211 default "08000000" if PLAT_OPSPUT
Hirokazu Takata9287d952006-01-06 00:18:41 -0800212 default "04000000" if PLAT_M32104UT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700213 default "01000000" if PLAT_OAKS32R
214
215config MEMORY_SIZE
216 hex "Physical memory size (hex)"
Hirokazu Takata23680862005-06-21 17:16:10 -0700217 default "08000000" if PLAT_MAPPI3
Linus Torvalds1da177e2005-04-16 15:20:36 -0700218 default "04000000" if PLAT_MAPPI || PLAT_MAPPI2
219 default "02000000" if PLAT_USRV
220 default "01000000" if PLAT_M32700UT
221 default "01000000" if PLAT_OPSPUT
Hirokazu Takata9287d952006-01-06 00:18:41 -0800222 default "01000000" if PLAT_M32104UT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700223 default "00800000" if PLAT_OAKS32R
224
Dave Hansen3f22ab22005-06-23 00:07:43 -0700225config ARCH_DISCONTIGMEM_ENABLE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700226 bool "Internal RAM Support"
Hirokazu Takata9287d952006-01-06 00:18:41 -0800227 depends on CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104
Linus Torvalds1da177e2005-04-16 15:20:36 -0700228 default y
229
Dave Hansen3f22ab22005-06-23 00:07:43 -0700230source "mm/Kconfig"
231
Linus Torvalds1da177e2005-04-16 15:20:36 -0700232config IRAM_START
233 hex "Internal memory start address (hex)"
Hirokazu Takata9287d952006-01-06 00:18:41 -0800234 default "00f00000" if !CHIP_M32104
235 default "00700000" if CHIP_M32104
236 depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -0700237
238config IRAM_SIZE
239 hex "Internal memory size (hex)"
Hirokazu Takata9287d952006-01-06 00:18:41 -0800240 depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -0700241 default "00080000" if CHIP_M32700
Hirokazu Takata9287d952006-01-06 00:18:41 -0800242 default "00010000" if CHIP_M32102 || CHIP_OPSP || CHIP_M32104
Linus Torvalds1da177e2005-04-16 15:20:36 -0700243 default "00008000" if CHIP_VDEC2
244
245#
246# Define implied options from the CPU selection here
247#
248
Nick Piggin95c354f2008-01-30 13:31:20 +0100249config GENERIC_LOCKBREAK
250 bool
251 default y
252 depends on SMP && PREEMPT
253
Linus Torvalds1da177e2005-04-16 15:20:36 -0700254config RWSEM_GENERIC_SPINLOCK
255 bool
256 depends on M32R
257 default y
258
259config RWSEM_XCHGADD_ALGORITHM
260 bool
261 default n
262
David Howellsf0d1b0b2006-12-08 02:37:49 -0800263config ARCH_HAS_ILOG2_U32
264 bool
265 default n
266
267config ARCH_HAS_ILOG2_U64
268 bool
269 default n
270
Akinobu Mita6d9f9372006-03-26 01:39:26 -0800271config GENERIC_FIND_NEXT_BIT
272 bool
273 default y
274
275config GENERIC_HWEIGHT
276 bool
277 default y
278
Linus Torvalds1da177e2005-04-16 15:20:36 -0700279config GENERIC_CALIBRATE_DELAY
280 bool
281 default y
282
Ingo Molnarae1e9132008-11-11 09:05:16 +0100283config SCHED_OMIT_FRAME_POINTER
Hirokazu Takata43c09ce2007-05-10 22:22:25 -0700284 bool
285 default y
286
Linus Torvalds1da177e2005-04-16 15:20:36 -0700287config PREEMPT
288 bool "Preemptible Kernel"
289 help
290 This option reduces the latency of the kernel when reacting to
291 real-time or interactive events by allowing a low priority process to
292 be preempted even if it is in kernel mode executing a system call.
293 This allows applications to run more reliably even when the system is
294 under load.
295
296 Say Y here if you are building a kernel for a desktop, embedded
297 or real-time system. Say N if you are unsure.
298
Linus Torvalds1da177e2005-04-16 15:20:36 -0700299config SMP
300 bool "Symmetric multi-processing support"
Jens Axboe7b7426c2008-06-10 20:49:30 +0200301 select USE_GENERIC_SMP_HELPERS
Linus Torvalds1da177e2005-04-16 15:20:36 -0700302 ---help---
303 This enables support for systems with more than one CPU. If you have
304 a system with only one CPU, like most personal computers, say N. If
305 you have a system with more than one CPU, say Y.
306
307 If you say N here, the kernel will run on single and multiprocessor
308 machines, but will use only one CPU of a multiprocessor machine. If
309 you say Y here, the kernel will run on many, but not all,
310 singleprocessor machines. On a singleprocessor machine, the kernel
311 will run faster if you say N here.
312
313 People using multiprocessor machines who say Y here should also say
314 Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
315 Management" code will be disabled if you say Y here.
316
Adrian Bunk03502fa2008-02-03 15:50:21 +0200317 See also the SMP-HOWTO available at
Linus Torvalds1da177e2005-04-16 15:20:36 -0700318 <http://www.linuxdoc.org/docs.html#howto>.
319
320 If you don't know what to do here, say N.
321
322config CHIP_M32700_TS1
323 bool "Workaround code for the M32700 TS1 chip's bug"
324 depends on (CHIP_M32700 && SMP)
325 default n
326
327config NR_CPUS
328 int "Maximum number of CPUs (2-32)"
329 range 2 32
330 depends on SMP
331 default "2"
332 help
333 This allows you to specify the maximum number of CPUs which this
334 kernel will support. The maximum supported value is 32 and the
335 minimum value which makes sense is 2.
336
337 This is purely to save memory - each supported CPU adds
338 approximately eight kilobytes to the kernel image.
339
340# Common NUMA Features
341config NUMA
342 bool "Numa Memory Allocation Support"
Al Viroc5596b22005-08-23 22:45:11 +0100343 depends on SMP && BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700344 default n
345
Yasunori Gotoc80d79d2006-04-10 22:53:53 -0700346config NODES_SHIFT
347 int
348 default "1"
349 depends on NEED_MULTIPLE_NODES
350
Linus Torvalds1da177e2005-04-16 15:20:36 -0700351# turning this on wastes a bunch of space.
352# Summit needs it only when NUMA is on
353config BOOT_IOREMAP
354 bool
355 depends on NUMA
356 default n
357
358endmenu
359
360
361menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
362
363config PCI
364 bool "PCI support"
Al Viroc3a0f772005-08-23 22:45:31 +0100365 depends on BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700366 default n
367 help
368 Find out whether you have a PCI motherboard. PCI is the name of a
369 bus system, i.e. the way the CPU talks to the other stuff inside
370 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
371 VESA. If you have PCI, say Y, otherwise N.
372
Linus Torvalds1da177e2005-04-16 15:20:36 -0700373choice
374 prompt "PCI access mode"
375 depends on PCI
376 default PCI_GOANY
377
378config PCI_GOBIOS
379 bool "BIOS"
380 ---help---
381 On PCI systems, the BIOS can be used to detect the PCI devices and
382 determine their configuration. However, some old PCI motherboards
383 have BIOS bugs and may crash if this is done. Also, some embedded
384 PCI-based systems don't have any BIOS at all. Linux can also try to
385 detect the PCI hardware directly without using the BIOS.
386
387 With this option, you can specify how Linux should detect the PCI
388 devices. If you choose "BIOS", the BIOS will be used, if you choose
389 "Direct", the BIOS won't be used, and if you choose "Any", the
390 kernel will try the direct access method and falls back to the BIOS
391 if that doesn't work. If unsure, go with the default, which is
392 "Any".
393
394config PCI_GODIRECT
395 bool "Direct"
396
397config PCI_GOANY
398 bool "Any"
399
400endchoice
401
402config PCI_BIOS
403 bool
404 depends on PCI && (PCI_GOBIOS || PCI_GOANY)
405 default y
406
407config PCI_DIRECT
408 bool
409 depends on PCI && (PCI_GODIRECT || PCI_GOANY)
410 default y
411
412source "drivers/pci/Kconfig"
413
414config ISA
Adrian Bunk1b20b092008-09-24 14:58:54 +0900415 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700416
417source "drivers/pcmcia/Kconfig"
418
419source "drivers/pci/hotplug/Kconfig"
420
421endmenu
422
423
424menu "Executable file formats"
425
426source "fs/Kconfig.binfmt"
427
428endmenu
429
Sam Ravnborgd5950b42005-07-11 21:03:49 -0700430source "net/Kconfig"
431
Linus Torvalds1da177e2005-04-16 15:20:36 -0700432source "drivers/Kconfig"
433
434source "fs/Kconfig"
435
Linus Torvalds1da177e2005-04-16 15:20:36 -0700436source "arch/m32r/Kconfig.debug"
437
438source "security/Kconfig"
439
440source "crypto/Kconfig"
441
442source "lib/Kconfig"