blob: b638d5bfa14d0aa34cc546b179a284f9d3a5cbb6 [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
Thomas Gleixner0e155b22011-01-19 19:17:10 +010011 select GENERIC_IRQ_PROBE
Thomas Gleixner4bdab7e2011-03-24 19:24:55 +010012 select GENERIC_IRQ_SHOW
Steven Rostedtabcefec2011-10-13 10:40:16 -040013 select GENERIC_ATOMIC64
Anna-Maria Gleixner97a1c1e2012-05-18 16:45:48 +000014 select ARCH_USES_GETTIMEOFFSET
Linus Torvalds1da177e2005-04-16 15:20:36 -070015
16config SBUS
17 bool
18
Linus Torvalds1da177e2005-04-16 15:20:36 -070019config GENERIC_ISA_DMA
20 bool
21 default y
22
Christoph Lameter5ac6da62007-02-10 01:43:14 -080023config ZONE_DMA
24 bool
25 default y
26
Al Viro5ea81762007-02-11 15:41:31 +000027config NO_IOPORT
28 def_bool y
29
Dan Williams1b0fac42007-07-15 23:40:26 -070030config NO_DMA
31 def_bool y
32
H. Peter Anvinbdc80782008-02-08 04:21:26 -080033config HZ
34 int
35 default 100
36
Linus Torvalds1da177e2005-04-16 15:20:36 -070037source "init/Kconfig"
38
Matt Helsleydc52ddc2008-10-18 20:27:21 -070039source "kernel/Kconfig.freezer"
40
Linus Torvalds1da177e2005-04-16 15:20:36 -070041
42menu "Processor type and features"
43
44choice
45 prompt "Platform Type"
46 default PLAT_MAPPI
47
48config PLAT_MAPPI
49 bool "Mappi-I"
50 help
51 The Mappi-I is an FPGA board for SOC (System-On-a-Chip) prototyping.
52 You can operate a Linux system on this board by using an M32R
53 softmacro core, which is a fully-synthesizable functional model
54 described in Verilog-HDL.
55
56 The Mappi-I board was the first platform, which had been used
57 to port and develop a Linux system for the M32R processor.
58 Currently, the Mappi-II, an heir to the Mappi-I, is available.
59
60config PLAT_USRV
61 bool "uServer"
Hirokazu Takatae070fb742007-08-17 17:22:15 +090062 select PLAT_HAS_INT1ICU
Linus Torvalds1da177e2005-04-16 15:20:36 -070063
64config PLAT_M32700UT
65 bool "M32700UT"
Hirokazu Takatae070fb742007-08-17 17:22:15 +090066 select PLAT_HAS_INT0ICU
67 select PLAT_HAS_INT1ICU
68 select PLAT_HAS_INT2ICU
Linus Torvalds1da177e2005-04-16 15:20:36 -070069 help
70 The M3T-M32700UT is an evaluation board based on uT-Engine
71 specification. This board has an M32700 (Chaos) evaluation chip.
72 You can say Y for SMP, because the M32700 is a single chip
73 multiprocessor.
74
75config PLAT_OPSPUT
76 bool "OPSPUT"
Hirokazu Takatae070fb742007-08-17 17:22:15 +090077 select PLAT_HAS_INT0ICU
78 select PLAT_HAS_INT1ICU
79 select PLAT_HAS_INT2ICU
Linus Torvalds1da177e2005-04-16 15:20:36 -070080 help
81 The OPSPUT is an evaluation board based on uT-Engine
82 specification. This board has a OPSP-REP chip.
83
84config PLAT_OAKS32R
85 bool "OAKS32R"
86 help
87 The OAKS32R is a tiny, inexpensive evaluation board.
88 Please note that if you say Y here and choose chip "M32102",
89 say N for MMU and select a no-MMU version kernel, otherwise
90 a kernel with MMU support will not work, because the M32102
91 is a microcontroller for embedded systems and it has no MMU.
92
93config PLAT_MAPPI2
94 bool "Mappi-II(M3A-ZA36/M3A-ZA52)"
95
Hirokazu Takata23680862005-06-21 17:16:10 -070096config PLAT_MAPPI3
97 bool "Mappi-III(M3A-2170)"
98
Hirokazu Takata9287d952006-01-06 00:18:41 -080099config PLAT_M32104UT
100 bool "M32104UT"
Hirokazu Takatae070fb742007-08-17 17:22:15 +0900101 select PLAT_HAS_INT1ICU
Hirokazu Takata9287d952006-01-06 00:18:41 -0800102 help
103 The M3T-M32104UT is an reference board based on uT-Engine
104 specification. This board has a M32104 chip.
105
Linus Torvalds1da177e2005-04-16 15:20:36 -0700106endchoice
107
108choice
109 prompt "Processor family"
110 default CHIP_M32700
111
112config CHIP_M32700
113 bool "M32700 (Chaos)"
114
115config CHIP_M32102
116 bool "M32102"
117
Hirokazu Takata9287d952006-01-06 00:18:41 -0800118config CHIP_M32104
119 bool "M32104"
120 depends on PLAT_M32104UT
121
Linus Torvalds1da177e2005-04-16 15:20:36 -0700122config CHIP_VDEC2
123 bool "VDEC2"
124
125config CHIP_OPSP
126 bool "OPSP"
127
128endchoice
129
130config MMU
131 bool "Support for memory management hardware"
132 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
133 default y
134
135config TLB_ENTRIES
136 int "TLB Entries"
137 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
138 default 32 if CHIP_M32700 || CHIP_OPSP
139 default 16 if CHIP_VDEC2
140
141
142config ISA_M32R
143 bool
Hirokazu Takata9287d952006-01-06 00:18:41 -0800144 depends on CHIP_M32102 || CHIP_M32104
Linus Torvalds1da177e2005-04-16 15:20:36 -0700145 default y
146
147config ISA_M32R2
148 bool
149 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
150 default y
151
152config ISA_DSP_LEVEL2
153 bool
154 depends on CHIP_M32700 || CHIP_OPSP
155 default y
156
157config ISA_DUAL_ISSUE
158 bool
159 depends on CHIP_M32700 || CHIP_OPSP
160 default y
161
Hirokazu Takatae070fb742007-08-17 17:22:15 +0900162config PLAT_HAS_INT0ICU
163 bool
164 default n
165
166config PLAT_HAS_INT1ICU
167 bool
168 default n
169
170config PLAT_HAS_INT2ICU
171 bool
172 default n
173
Linus Torvalds1da177e2005-04-16 15:20:36 -0700174config BUS_CLOCK
175 int "Bus Clock [Hz] (integer)"
176 default "70000000" if PLAT_MAPPI
177 default "25000000" if PLAT_USRV
Hirokazu Takata23680862005-06-21 17:16:10 -0700178 default "50000000" if PLAT_MAPPI3
Linus Torvalds1da177e2005-04-16 15:20:36 -0700179 default "50000000" if PLAT_M32700UT
180 default "50000000" if PLAT_OPSPUT
Hirokazu Takata9287d952006-01-06 00:18:41 -0800181 default "54000000" if PLAT_M32104UT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700182 default "33333333" if PLAT_OAKS32R
183 default "20000000" if PLAT_MAPPI2
184
185config TIMER_DIVIDE
186 int "Timer divider (integer)"
187 default "128"
188
189config CPU_LITTLE_ENDIAN
190 bool "Generate little endian code"
191 default n
192
193config MEMORY_START
194 hex "Physical memory start address (hex)"
Hirokazu Takata23680862005-06-21 17:16:10 -0700195 default "08000000" if PLAT_MAPPI || PLAT_MAPPI2 || PLAT_MAPPI3
Linus Torvalds1da177e2005-04-16 15:20:36 -0700196 default "08000000" if PLAT_USRV
197 default "08000000" if PLAT_M32700UT
198 default "08000000" if PLAT_OPSPUT
Hirokazu Takata9287d952006-01-06 00:18:41 -0800199 default "04000000" if PLAT_M32104UT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700200 default "01000000" if PLAT_OAKS32R
201
202config MEMORY_SIZE
203 hex "Physical memory size (hex)"
Hirokazu Takata23680862005-06-21 17:16:10 -0700204 default "08000000" if PLAT_MAPPI3
Linus Torvalds1da177e2005-04-16 15:20:36 -0700205 default "04000000" if PLAT_MAPPI || PLAT_MAPPI2
206 default "02000000" if PLAT_USRV
207 default "01000000" if PLAT_M32700UT
208 default "01000000" if PLAT_OPSPUT
Hirokazu Takata9287d952006-01-06 00:18:41 -0800209 default "01000000" if PLAT_M32104UT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700210 default "00800000" if PLAT_OAKS32R
211
Dave Hansen3f22ab22005-06-23 00:07:43 -0700212config ARCH_DISCONTIGMEM_ENABLE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700213 bool "Internal RAM Support"
Hirokazu Takata9287d952006-01-06 00:18:41 -0800214 depends on CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104
Linus Torvalds1da177e2005-04-16 15:20:36 -0700215 default y
216
Dave Hansen3f22ab22005-06-23 00:07:43 -0700217source "mm/Kconfig"
218
Linus Torvalds1da177e2005-04-16 15:20:36 -0700219config IRAM_START
220 hex "Internal memory start address (hex)"
Hirokazu Takata9287d952006-01-06 00:18:41 -0800221 default "00f00000" if !CHIP_M32104
222 default "00700000" if CHIP_M32104
223 depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -0700224
225config IRAM_SIZE
226 hex "Internal memory size (hex)"
Hirokazu Takata9287d952006-01-06 00:18:41 -0800227 depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -0700228 default "00080000" if CHIP_M32700
Hirokazu Takata9287d952006-01-06 00:18:41 -0800229 default "00010000" if CHIP_M32102 || CHIP_OPSP || CHIP_M32104
Linus Torvalds1da177e2005-04-16 15:20:36 -0700230 default "00008000" if CHIP_VDEC2
231
232#
233# Define implied options from the CPU selection here
234#
235
Nick Piggin95c354f2008-01-30 13:31:20 +0100236config GENERIC_LOCKBREAK
237 bool
238 default y
239 depends on SMP && PREEMPT
240
Linus Torvalds1da177e2005-04-16 15:20:36 -0700241config RWSEM_GENERIC_SPINLOCK
242 bool
243 depends on M32R
244 default y
245
246config RWSEM_XCHGADD_ALGORITHM
247 bool
248 default n
249
David Howellsf0d1b0b2006-12-08 02:37:49 -0800250config ARCH_HAS_ILOG2_U32
251 bool
252 default n
253
254config ARCH_HAS_ILOG2_U64
255 bool
256 default n
257
Akinobu Mita6d9f9372006-03-26 01:39:26 -0800258config GENERIC_HWEIGHT
259 bool
260 default y
261
Linus Torvalds1da177e2005-04-16 15:20:36 -0700262config GENERIC_CALIBRATE_DELAY
263 bool
264 default y
265
Ingo Molnarae1e9132008-11-11 09:05:16 +0100266config SCHED_OMIT_FRAME_POINTER
Hirokazu Takata43c09ce2007-05-10 22:22:25 -0700267 bool
268 default y
269
Frederic Weisbeckerdab16ae2011-07-05 16:29:40 +0200270source "kernel/Kconfig.preempt"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700271
Linus Torvalds1da177e2005-04-16 15:20:36 -0700272config SMP
273 bool "Symmetric multi-processing support"
Jens Axboe7b7426c2008-06-10 20:49:30 +0200274 select USE_GENERIC_SMP_HELPERS
Linus Torvalds1da177e2005-04-16 15:20:36 -0700275 ---help---
276 This enables support for systems with more than one CPU. If you have
277 a system with only one CPU, like most personal computers, say N. If
278 you have a system with more than one CPU, say Y.
279
280 If you say N here, the kernel will run on single and multiprocessor
281 machines, but will use only one CPU of a multiprocessor machine. If
282 you say Y here, the kernel will run on many, but not all,
283 singleprocessor machines. On a singleprocessor machine, the kernel
284 will run faster if you say N here.
285
286 People using multiprocessor machines who say Y here should also say
287 Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
288 Management" code will be disabled if you say Y here.
289
Adrian Bunk03502fa2008-02-03 15:50:21 +0200290 See also the SMP-HOWTO available at
Justin P. Mattock50a23e62010-10-16 10:36:23 -0700291 <http://tldp.org/HOWTO/SMP-HOWTO.html>.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700292
293 If you don't know what to do here, say N.
294
295config CHIP_M32700_TS1
296 bool "Workaround code for the M32700 TS1 chip's bug"
297 depends on (CHIP_M32700 && SMP)
298 default n
299
300config NR_CPUS
301 int "Maximum number of CPUs (2-32)"
302 range 2 32
303 depends on SMP
304 default "2"
305 help
306 This allows you to specify the maximum number of CPUs which this
307 kernel will support. The maximum supported value is 32 and the
308 minimum value which makes sense is 2.
309
310 This is purely to save memory - each supported CPU adds
311 approximately eight kilobytes to the kernel image.
312
313# Common NUMA Features
314config NUMA
315 bool "Numa Memory Allocation Support"
Al Viroc5596b22005-08-23 22:45:11 +0100316 depends on SMP && BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700317 default n
318
Yasunori Gotoc80d79d2006-04-10 22:53:53 -0700319config NODES_SHIFT
320 int
321 default "1"
322 depends on NEED_MULTIPLE_NODES
323
Linus Torvalds1da177e2005-04-16 15:20:36 -0700324endmenu
325
326
327menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
328
329config PCI
330 bool "PCI support"
Al Viroc3a0f772005-08-23 22:45:31 +0100331 depends on BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700332 default n
333 help
334 Find out whether you have a PCI motherboard. PCI is the name of a
335 bus system, i.e. the way the CPU talks to the other stuff inside
336 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
337 VESA. If you have PCI, say Y, otherwise N.
338
Linus Torvalds1da177e2005-04-16 15:20:36 -0700339choice
340 prompt "PCI access mode"
341 depends on PCI
342 default PCI_GOANY
343
344config PCI_GOBIOS
345 bool "BIOS"
346 ---help---
347 On PCI systems, the BIOS can be used to detect the PCI devices and
348 determine their configuration. However, some old PCI motherboards
349 have BIOS bugs and may crash if this is done. Also, some embedded
350 PCI-based systems don't have any BIOS at all. Linux can also try to
351 detect the PCI hardware directly without using the BIOS.
352
353 With this option, you can specify how Linux should detect the PCI
354 devices. If you choose "BIOS", the BIOS will be used, if you choose
355 "Direct", the BIOS won't be used, and if you choose "Any", the
356 kernel will try the direct access method and falls back to the BIOS
357 if that doesn't work. If unsure, go with the default, which is
358 "Any".
359
360config PCI_GODIRECT
361 bool "Direct"
362
363config PCI_GOANY
364 bool "Any"
365
366endchoice
367
368config PCI_BIOS
369 bool
370 depends on PCI && (PCI_GOBIOS || PCI_GOANY)
371 default y
372
373config PCI_DIRECT
374 bool
375 depends on PCI && (PCI_GODIRECT || PCI_GOANY)
376 default y
377
378source "drivers/pci/Kconfig"
379
380config ISA
Adrian Bunk1b20b092008-09-24 14:58:54 +0900381 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700382
383source "drivers/pcmcia/Kconfig"
384
385source "drivers/pci/hotplug/Kconfig"
386
387endmenu
388
389
390menu "Executable file formats"
391
392source "fs/Kconfig.binfmt"
393
394endmenu
395
Sam Ravnborgd5950b42005-07-11 21:03:49 -0700396source "net/Kconfig"
397
Linus Torvalds1da177e2005-04-16 15:20:36 -0700398source "drivers/Kconfig"
399
400source "fs/Kconfig"
401
Linus Torvalds1da177e2005-04-16 15:20:36 -0700402source "arch/m32r/Kconfig.debug"
403
404source "security/Kconfig"
405
406source "crypto/Kconfig"
407
408source "lib/Kconfig"