blob: ad45b822e68cdf16ba57556f66e4900910265494 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001config M32R
2 bool
3 default y
Sam Ravnborgec7748b2008-02-09 10:46:40 +01004 select HAVE_IDE
Mathieu Desnoyers42d4b832008-02-02 15:10:34 -05005 select HAVE_OPROFILE
Rusty Russell98a79d62008-12-13 21:19:41 +10306 select INIT_ALL_POSSIBLE
Hirokazu Takata337214e2009-10-15 09:21:56 +09007 select HAVE_KERNEL_GZIP
8 select HAVE_KERNEL_BZIP2
9 select HAVE_KERNEL_LZMA
Thomas Gleixner0e155b22011-01-19 19:17:10 +010010 select HAVE_GENERIC_HARDIRQS
11 select GENERIC_HARDIRQS_NO_DEPRECATED
12 select GENERIC_IRQ_PROBE
Thomas Gleixner4bdab7e2011-03-24 19:24:55 +010013 select GENERIC_IRQ_SHOW
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
Al Viro5ea81762007-02-11 15:41:31 +000026config NO_IOPORT
27 def_bool y
28
Dan Williams1b0fac42007-07-15 23:40:26 -070029config NO_DMA
30 def_bool y
31
H. Peter Anvinbdc80782008-02-08 04:21:26 -080032config HZ
33 int
34 default 100
35
john stultz95ad7592009-09-21 17:04:04 -070036config ARCH_USES_GETTIMEOFFSET
37 def_bool y
38
Linus Torvalds1da177e2005-04-16 15:20:36 -070039source "init/Kconfig"
40
Matt Helsleydc52ddc2008-10-18 20:27:21 -070041source "kernel/Kconfig.freezer"
42
Linus Torvalds1da177e2005-04-16 15:20:36 -070043
44menu "Processor type and features"
45
46choice
47 prompt "Platform Type"
48 default PLAT_MAPPI
49
50config PLAT_MAPPI
51 bool "Mappi-I"
52 help
53 The Mappi-I is an FPGA board for SOC (System-On-a-Chip) prototyping.
54 You can operate a Linux system on this board by using an M32R
55 softmacro core, which is a fully-synthesizable functional model
56 described in Verilog-HDL.
57
58 The Mappi-I board was the first platform, which had been used
59 to port and develop a Linux system for the M32R processor.
60 Currently, the Mappi-II, an heir to the Mappi-I, is available.
61
62config PLAT_USRV
63 bool "uServer"
Hirokazu Takatae070fb742007-08-17 17:22:15 +090064 select PLAT_HAS_INT1ICU
Linus Torvalds1da177e2005-04-16 15:20:36 -070065
66config PLAT_M32700UT
67 bool "M32700UT"
Hirokazu Takatae070fb742007-08-17 17:22:15 +090068 select PLAT_HAS_INT0ICU
69 select PLAT_HAS_INT1ICU
70 select PLAT_HAS_INT2ICU
Linus Torvalds1da177e2005-04-16 15:20:36 -070071 help
72 The M3T-M32700UT is an evaluation board based on uT-Engine
73 specification. This board has an M32700 (Chaos) evaluation chip.
74 You can say Y for SMP, because the M32700 is a single chip
75 multiprocessor.
76
77config PLAT_OPSPUT
78 bool "OPSPUT"
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 OPSPUT is an evaluation board based on uT-Engine
84 specification. This board has a OPSP-REP chip.
85
86config PLAT_OAKS32R
87 bool "OAKS32R"
88 help
89 The OAKS32R is a tiny, inexpensive evaluation board.
90 Please note that if you say Y here and choose chip "M32102",
91 say N for MMU and select a no-MMU version kernel, otherwise
92 a kernel with MMU support will not work, because the M32102
93 is a microcontroller for embedded systems and it has no MMU.
94
95config PLAT_MAPPI2
96 bool "Mappi-II(M3A-ZA36/M3A-ZA52)"
97
Hirokazu Takata23680862005-06-21 17:16:10 -070098config PLAT_MAPPI3
99 bool "Mappi-III(M3A-2170)"
100
Hirokazu Takata9287d952006-01-06 00:18:41 -0800101config PLAT_M32104UT
102 bool "M32104UT"
Hirokazu Takatae070fb742007-08-17 17:22:15 +0900103 select PLAT_HAS_INT1ICU
Hirokazu Takata9287d952006-01-06 00:18:41 -0800104 help
105 The M3T-M32104UT is an reference board based on uT-Engine
106 specification. This board has a M32104 chip.
107
Linus Torvalds1da177e2005-04-16 15:20:36 -0700108endchoice
109
110choice
111 prompt "Processor family"
112 default CHIP_M32700
113
114config CHIP_M32700
115 bool "M32700 (Chaos)"
116
117config CHIP_M32102
118 bool "M32102"
119
Hirokazu Takata9287d952006-01-06 00:18:41 -0800120config CHIP_M32104
121 bool "M32104"
122 depends on PLAT_M32104UT
123
Linus Torvalds1da177e2005-04-16 15:20:36 -0700124config CHIP_VDEC2
125 bool "VDEC2"
126
127config CHIP_OPSP
128 bool "OPSP"
129
130endchoice
131
132config MMU
133 bool "Support for memory management hardware"
134 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
135 default y
136
137config TLB_ENTRIES
138 int "TLB Entries"
139 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
140 default 32 if CHIP_M32700 || CHIP_OPSP
141 default 16 if CHIP_VDEC2
142
143
144config ISA_M32R
145 bool
Hirokazu Takata9287d952006-01-06 00:18:41 -0800146 depends on CHIP_M32102 || CHIP_M32104
Linus Torvalds1da177e2005-04-16 15:20:36 -0700147 default y
148
149config ISA_M32R2
150 bool
151 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
152 default y
153
154config ISA_DSP_LEVEL2
155 bool
156 depends on CHIP_M32700 || CHIP_OPSP
157 default y
158
159config ISA_DUAL_ISSUE
160 bool
161 depends on CHIP_M32700 || CHIP_OPSP
162 default y
163
Hirokazu Takatae070fb742007-08-17 17:22:15 +0900164config PLAT_HAS_INT0ICU
165 bool
166 default n
167
168config PLAT_HAS_INT1ICU
169 bool
170 default n
171
172config PLAT_HAS_INT2ICU
173 bool
174 default n
175
Linus Torvalds1da177e2005-04-16 15:20:36 -0700176config BUS_CLOCK
177 int "Bus Clock [Hz] (integer)"
178 default "70000000" if PLAT_MAPPI
179 default "25000000" if PLAT_USRV
Hirokazu Takata23680862005-06-21 17:16:10 -0700180 default "50000000" if PLAT_MAPPI3
Linus Torvalds1da177e2005-04-16 15:20:36 -0700181 default "50000000" if PLAT_M32700UT
182 default "50000000" if PLAT_OPSPUT
Hirokazu Takata9287d952006-01-06 00:18:41 -0800183 default "54000000" if PLAT_M32104UT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700184 default "33333333" if PLAT_OAKS32R
185 default "20000000" if PLAT_MAPPI2
186
187config TIMER_DIVIDE
188 int "Timer divider (integer)"
189 default "128"
190
191config CPU_LITTLE_ENDIAN
192 bool "Generate little endian code"
193 default n
194
195config MEMORY_START
196 hex "Physical memory start address (hex)"
Hirokazu Takata23680862005-06-21 17:16:10 -0700197 default "08000000" if PLAT_MAPPI || PLAT_MAPPI2 || PLAT_MAPPI3
Linus Torvalds1da177e2005-04-16 15:20:36 -0700198 default "08000000" if PLAT_USRV
199 default "08000000" if PLAT_M32700UT
200 default "08000000" if PLAT_OPSPUT
Hirokazu Takata9287d952006-01-06 00:18:41 -0800201 default "04000000" if PLAT_M32104UT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700202 default "01000000" if PLAT_OAKS32R
203
204config MEMORY_SIZE
205 hex "Physical memory size (hex)"
Hirokazu Takata23680862005-06-21 17:16:10 -0700206 default "08000000" if PLAT_MAPPI3
Linus Torvalds1da177e2005-04-16 15:20:36 -0700207 default "04000000" if PLAT_MAPPI || PLAT_MAPPI2
208 default "02000000" if PLAT_USRV
209 default "01000000" if PLAT_M32700UT
210 default "01000000" if PLAT_OPSPUT
Hirokazu Takata9287d952006-01-06 00:18:41 -0800211 default "01000000" if PLAT_M32104UT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700212 default "00800000" if PLAT_OAKS32R
213
Dave Hansen3f22ab22005-06-23 00:07:43 -0700214config ARCH_DISCONTIGMEM_ENABLE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700215 bool "Internal RAM Support"
Hirokazu Takata9287d952006-01-06 00:18:41 -0800216 depends on CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104
Linus Torvalds1da177e2005-04-16 15:20:36 -0700217 default y
218
Dave Hansen3f22ab22005-06-23 00:07:43 -0700219source "mm/Kconfig"
220
Linus Torvalds1da177e2005-04-16 15:20:36 -0700221config IRAM_START
222 hex "Internal memory start address (hex)"
Hirokazu Takata9287d952006-01-06 00:18:41 -0800223 default "00f00000" if !CHIP_M32104
224 default "00700000" if CHIP_M32104
225 depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -0700226
227config IRAM_SIZE
228 hex "Internal memory size (hex)"
Hirokazu Takata9287d952006-01-06 00:18:41 -0800229 depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -0700230 default "00080000" if CHIP_M32700
Hirokazu Takata9287d952006-01-06 00:18:41 -0800231 default "00010000" if CHIP_M32102 || CHIP_OPSP || CHIP_M32104
Linus Torvalds1da177e2005-04-16 15:20:36 -0700232 default "00008000" if CHIP_VDEC2
233
234#
235# Define implied options from the CPU selection here
236#
237
Nick Piggin95c354f2008-01-30 13:31:20 +0100238config GENERIC_LOCKBREAK
239 bool
240 default y
241 depends on SMP && PREEMPT
242
Linus Torvalds1da177e2005-04-16 15:20:36 -0700243config RWSEM_GENERIC_SPINLOCK
244 bool
245 depends on M32R
246 default y
247
248config RWSEM_XCHGADD_ALGORITHM
249 bool
250 default n
251
David Howellsf0d1b0b2006-12-08 02:37:49 -0800252config ARCH_HAS_ILOG2_U32
253 bool
254 default n
255
256config ARCH_HAS_ILOG2_U64
257 bool
258 default n
259
Akinobu Mita6d9f9372006-03-26 01:39:26 -0800260config GENERIC_FIND_NEXT_BIT
261 bool
262 default y
263
264config GENERIC_HWEIGHT
265 bool
266 default y
267
Linus Torvalds1da177e2005-04-16 15:20:36 -0700268config GENERIC_CALIBRATE_DELAY
269 bool
270 default y
271
Ingo Molnarae1e9132008-11-11 09:05:16 +0100272config SCHED_OMIT_FRAME_POINTER
Hirokazu Takata43c09ce2007-05-10 22:22:25 -0700273 bool
274 default y
275
Linus Torvalds1da177e2005-04-16 15:20:36 -0700276config PREEMPT
277 bool "Preemptible Kernel"
278 help
279 This option reduces the latency of the kernel when reacting to
280 real-time or interactive events by allowing a low priority process to
281 be preempted even if it is in kernel mode executing a system call.
282 This allows applications to run more reliably even when the system is
283 under load.
284
285 Say Y here if you are building a kernel for a desktop, embedded
286 or real-time system. Say N if you are unsure.
287
Linus Torvalds1da177e2005-04-16 15:20:36 -0700288config SMP
289 bool "Symmetric multi-processing support"
Jens Axboe7b7426c2008-06-10 20:49:30 +0200290 select USE_GENERIC_SMP_HELPERS
Linus Torvalds1da177e2005-04-16 15:20:36 -0700291 ---help---
292 This enables support for systems with more than one CPU. If you have
293 a system with only one CPU, like most personal computers, say N. If
294 you have a system with more than one CPU, say Y.
295
296 If you say N here, the kernel will run on single and multiprocessor
297 machines, but will use only one CPU of a multiprocessor machine. If
298 you say Y here, the kernel will run on many, but not all,
299 singleprocessor machines. On a singleprocessor machine, the kernel
300 will run faster if you say N here.
301
302 People using multiprocessor machines who say Y here should also say
303 Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
304 Management" code will be disabled if you say Y here.
305
Adrian Bunk03502fa2008-02-03 15:50:21 +0200306 See also the SMP-HOWTO available at
Justin P. Mattock50a23e62010-10-16 10:36:23 -0700307 <http://tldp.org/HOWTO/SMP-HOWTO.html>.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700308
309 If you don't know what to do here, say N.
310
311config CHIP_M32700_TS1
312 bool "Workaround code for the M32700 TS1 chip's bug"
313 depends on (CHIP_M32700 && SMP)
314 default n
315
316config NR_CPUS
317 int "Maximum number of CPUs (2-32)"
318 range 2 32
319 depends on SMP
320 default "2"
321 help
322 This allows you to specify the maximum number of CPUs which this
323 kernel will support. The maximum supported value is 32 and the
324 minimum value which makes sense is 2.
325
326 This is purely to save memory - each supported CPU adds
327 approximately eight kilobytes to the kernel image.
328
329# Common NUMA Features
330config NUMA
331 bool "Numa Memory Allocation Support"
Al Viroc5596b22005-08-23 22:45:11 +0100332 depends on SMP && BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700333 default n
334
Yasunori Gotoc80d79d2006-04-10 22:53:53 -0700335config NODES_SHIFT
336 int
337 default "1"
338 depends on NEED_MULTIPLE_NODES
339
Linus Torvalds1da177e2005-04-16 15:20:36 -0700340# turning this on wastes a bunch of space.
341# Summit needs it only when NUMA is on
342config BOOT_IOREMAP
343 bool
344 depends on NUMA
345 default n
346
347endmenu
348
349
350menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
351
352config PCI
353 bool "PCI support"
Al Viroc3a0f772005-08-23 22:45:31 +0100354 depends on BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700355 default n
356 help
357 Find out whether you have a PCI motherboard. PCI is the name of a
358 bus system, i.e. the way the CPU talks to the other stuff inside
359 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
360 VESA. If you have PCI, say Y, otherwise N.
361
Linus Torvalds1da177e2005-04-16 15:20:36 -0700362choice
363 prompt "PCI access mode"
364 depends on PCI
365 default PCI_GOANY
366
367config PCI_GOBIOS
368 bool "BIOS"
369 ---help---
370 On PCI systems, the BIOS can be used to detect the PCI devices and
371 determine their configuration. However, some old PCI motherboards
372 have BIOS bugs and may crash if this is done. Also, some embedded
373 PCI-based systems don't have any BIOS at all. Linux can also try to
374 detect the PCI hardware directly without using the BIOS.
375
376 With this option, you can specify how Linux should detect the PCI
377 devices. If you choose "BIOS", the BIOS will be used, if you choose
378 "Direct", the BIOS won't be used, and if you choose "Any", the
379 kernel will try the direct access method and falls back to the BIOS
380 if that doesn't work. If unsure, go with the default, which is
381 "Any".
382
383config PCI_GODIRECT
384 bool "Direct"
385
386config PCI_GOANY
387 bool "Any"
388
389endchoice
390
391config PCI_BIOS
392 bool
393 depends on PCI && (PCI_GOBIOS || PCI_GOANY)
394 default y
395
396config PCI_DIRECT
397 bool
398 depends on PCI && (PCI_GODIRECT || PCI_GOANY)
399 default y
400
401source "drivers/pci/Kconfig"
402
403config ISA
Adrian Bunk1b20b092008-09-24 14:58:54 +0900404 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700405
406source "drivers/pcmcia/Kconfig"
407
408source "drivers/pci/hotplug/Kconfig"
409
410endmenu
411
412
413menu "Executable file formats"
414
415source "fs/Kconfig.binfmt"
416
417endmenu
418
Sam Ravnborgd5950b42005-07-11 21:03:49 -0700419source "net/Kconfig"
420
Linus Torvalds1da177e2005-04-16 15:20:36 -0700421source "drivers/Kconfig"
422
423source "fs/Kconfig"
424
Linus Torvalds1da177e2005-04-16 15:20:36 -0700425source "arch/m32r/Kconfig.debug"
426
427source "security/Kconfig"
428
429source "crypto/Kconfig"
430
431source "lib/Kconfig"