blob: 2841c0a3fd3bb201a4bed53d823858b32a0a009b [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
Will Deaconc1d7e012012-07-30 14:42:46 -070010 select ARCH_WANT_IPC_PARSE_VERSION
Catalin Marinas9b2a60c2012-10-08 16:28:13 -070011 select HAVE_DEBUG_BUGVERBOSE
Stephen Rothwell4febd952013-03-07 15:48:16 +110012 select VIRT_TO_BUS
Thomas Gleixner0e155b22011-01-19 19:17:10 +010013 select GENERIC_IRQ_PROBE
Thomas Gleixner4bdab7e2011-03-24 19:24:55 +010014 select GENERIC_IRQ_SHOW
Steven Rostedtabcefec2011-10-13 10:40:16 -040015 select GENERIC_ATOMIC64
Dan Williams21266be2015-11-19 18:19:29 -080016 select ARCH_HAS_DEVMEM_IS_ALLOWED
Anna-Maria Gleixner97a1c1e2012-05-18 16:45:48 +000017 select ARCH_USES_GETTIMEOFFSET
David Howells786d35d2012-09-28 14:31:03 +093018 select MODULES_USE_ELF_RELA
Dave Hansend1a1dc02013-07-01 13:04:42 -070019 select HAVE_DEBUG_STACKOVERFLOW
Linus Torvalds1da177e2005-04-16 15:20:36 -070020
21config SBUS
22 bool
23
Linus Torvalds1da177e2005-04-16 15:20:36 -070024config GENERIC_ISA_DMA
25 bool
26 default y
27
Christoph Lameter5ac6da62007-02-10 01:43:14 -080028config ZONE_DMA
29 bool
30 default y
31
Uwe Kleine-Königce816fa2014-04-07 15:39:19 -070032config NO_IOPORT_MAP
Al Viro5ea81762007-02-11 15:41:31 +000033 def_bool y
34
Dan Williams1b0fac42007-07-15 23:40:26 -070035config NO_DMA
36 def_bool y
37
H. Peter Anvinbdc80782008-02-08 04:21:26 -080038config HZ
39 int
40 default 100
41
Linus Torvalds1da177e2005-04-16 15:20:36 -070042source "init/Kconfig"
43
Matt Helsleydc52ddc2008-10-18 20:27:21 -070044source "kernel/Kconfig.freezer"
45
Linus Torvalds1da177e2005-04-16 15:20:36 -070046
47menu "Processor type and features"
48
49choice
50 prompt "Platform Type"
51 default PLAT_MAPPI
52
53config PLAT_MAPPI
54 bool "Mappi-I"
55 help
56 The Mappi-I is an FPGA board for SOC (System-On-a-Chip) prototyping.
57 You can operate a Linux system on this board by using an M32R
58 softmacro core, which is a fully-synthesizable functional model
59 described in Verilog-HDL.
60
61 The Mappi-I board was the first platform, which had been used
62 to port and develop a Linux system for the M32R processor.
63 Currently, the Mappi-II, an heir to the Mappi-I, is available.
64
65config PLAT_USRV
66 bool "uServer"
Hirokazu Takatae070fb742007-08-17 17:22:15 +090067 select PLAT_HAS_INT1ICU
Linus Torvalds1da177e2005-04-16 15:20:36 -070068
69config PLAT_M32700UT
70 bool "M32700UT"
Hirokazu Takatae070fb742007-08-17 17:22:15 +090071 select PLAT_HAS_INT0ICU
72 select PLAT_HAS_INT1ICU
73 select PLAT_HAS_INT2ICU
Linus Torvalds1da177e2005-04-16 15:20:36 -070074 help
75 The M3T-M32700UT is an evaluation board based on uT-Engine
76 specification. This board has an M32700 (Chaos) evaluation chip.
77 You can say Y for SMP, because the M32700 is a single chip
78 multiprocessor.
79
80config PLAT_OPSPUT
81 bool "OPSPUT"
Hirokazu Takatae070fb742007-08-17 17:22:15 +090082 select PLAT_HAS_INT0ICU
83 select PLAT_HAS_INT1ICU
84 select PLAT_HAS_INT2ICU
Linus Torvalds1da177e2005-04-16 15:20:36 -070085 help
86 The OPSPUT is an evaluation board based on uT-Engine
87 specification. This board has a OPSP-REP chip.
88
89config PLAT_OAKS32R
90 bool "OAKS32R"
91 help
92 The OAKS32R is a tiny, inexpensive evaluation board.
93 Please note that if you say Y here and choose chip "M32102",
94 say N for MMU and select a no-MMU version kernel, otherwise
95 a kernel with MMU support will not work, because the M32102
96 is a microcontroller for embedded systems and it has no MMU.
97
98config PLAT_MAPPI2
99 bool "Mappi-II(M3A-ZA36/M3A-ZA52)"
100
Hirokazu Takata23680862005-06-21 17:16:10 -0700101config PLAT_MAPPI3
102 bool "Mappi-III(M3A-2170)"
103
Hirokazu Takata9287d952006-01-06 00:18:41 -0800104config PLAT_M32104UT
105 bool "M32104UT"
Hirokazu Takatae070fb742007-08-17 17:22:15 +0900106 select PLAT_HAS_INT1ICU
Hirokazu Takata9287d952006-01-06 00:18:41 -0800107 help
108 The M3T-M32104UT is an reference board based on uT-Engine
109 specification. This board has a M32104 chip.
110
Linus Torvalds1da177e2005-04-16 15:20:36 -0700111endchoice
112
113choice
114 prompt "Processor family"
115 default CHIP_M32700
116
117config CHIP_M32700
118 bool "M32700 (Chaos)"
119
120config CHIP_M32102
121 bool "M32102"
122
Hirokazu Takata9287d952006-01-06 00:18:41 -0800123config CHIP_M32104
124 bool "M32104"
125 depends on PLAT_M32104UT
126
Linus Torvalds1da177e2005-04-16 15:20:36 -0700127config CHIP_VDEC2
128 bool "VDEC2"
129
130config CHIP_OPSP
131 bool "OPSP"
132
133endchoice
134
135config MMU
136 bool "Support for memory management hardware"
137 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
138 default y
139
140config TLB_ENTRIES
141 int "TLB Entries"
142 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
143 default 32 if CHIP_M32700 || CHIP_OPSP
144 default 16 if CHIP_VDEC2
145
146
147config ISA_M32R
148 bool
Hirokazu Takata9287d952006-01-06 00:18:41 -0800149 depends on CHIP_M32102 || CHIP_M32104
Linus Torvalds1da177e2005-04-16 15:20:36 -0700150 default y
151
152config ISA_M32R2
153 bool
154 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
155 default y
156
157config ISA_DSP_LEVEL2
158 bool
159 depends on CHIP_M32700 || CHIP_OPSP
160 default y
161
162config ISA_DUAL_ISSUE
163 bool
164 depends on CHIP_M32700 || CHIP_OPSP
165 default y
166
Hirokazu Takatae070fb742007-08-17 17:22:15 +0900167config PLAT_HAS_INT0ICU
168 bool
169 default n
170
171config PLAT_HAS_INT1ICU
172 bool
173 default n
174
175config PLAT_HAS_INT2ICU
176 bool
177 default n
178
Linus Torvalds1da177e2005-04-16 15:20:36 -0700179config BUS_CLOCK
180 int "Bus Clock [Hz] (integer)"
181 default "70000000" if PLAT_MAPPI
182 default "25000000" if PLAT_USRV
Hirokazu Takata23680862005-06-21 17:16:10 -0700183 default "50000000" if PLAT_MAPPI3
Linus Torvalds1da177e2005-04-16 15:20:36 -0700184 default "50000000" if PLAT_M32700UT
185 default "50000000" if PLAT_OPSPUT
Hirokazu Takata9287d952006-01-06 00:18:41 -0800186 default "54000000" if PLAT_M32104UT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700187 default "33333333" if PLAT_OAKS32R
188 default "20000000" if PLAT_MAPPI2
189
190config TIMER_DIVIDE
191 int "Timer divider (integer)"
192 default "128"
193
194config CPU_LITTLE_ENDIAN
195 bool "Generate little endian code"
196 default n
197
198config MEMORY_START
199 hex "Physical memory start address (hex)"
Hirokazu Takata23680862005-06-21 17:16:10 -0700200 default "08000000" if PLAT_MAPPI || PLAT_MAPPI2 || PLAT_MAPPI3
Linus Torvalds1da177e2005-04-16 15:20:36 -0700201 default "08000000" if PLAT_USRV
202 default "08000000" if PLAT_M32700UT
203 default "08000000" if PLAT_OPSPUT
Hirokazu Takata9287d952006-01-06 00:18:41 -0800204 default "04000000" if PLAT_M32104UT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700205 default "01000000" if PLAT_OAKS32R
206
207config MEMORY_SIZE
208 hex "Physical memory size (hex)"
Hirokazu Takata23680862005-06-21 17:16:10 -0700209 default "08000000" if PLAT_MAPPI3
Linus Torvalds1da177e2005-04-16 15:20:36 -0700210 default "04000000" if PLAT_MAPPI || PLAT_MAPPI2
211 default "02000000" if PLAT_USRV
212 default "01000000" if PLAT_M32700UT
213 default "01000000" if PLAT_OPSPUT
Hirokazu Takata9287d952006-01-06 00:18:41 -0800214 default "01000000" if PLAT_M32104UT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700215 default "00800000" if PLAT_OAKS32R
216
Dave Hansen3f22ab22005-06-23 00:07:43 -0700217config ARCH_DISCONTIGMEM_ENABLE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700218 bool "Internal RAM Support"
Hirokazu Takata9287d952006-01-06 00:18:41 -0800219 depends on CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104
Linus Torvalds1da177e2005-04-16 15:20:36 -0700220 default y
221
Dave Hansen3f22ab22005-06-23 00:07:43 -0700222source "mm/Kconfig"
223
Linus Torvalds1da177e2005-04-16 15:20:36 -0700224config IRAM_START
225 hex "Internal memory start address (hex)"
Hirokazu Takata9287d952006-01-06 00:18:41 -0800226 default "00f00000" if !CHIP_M32104
227 default "00700000" if CHIP_M32104
228 depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -0700229
230config IRAM_SIZE
231 hex "Internal memory size (hex)"
Hirokazu Takata9287d952006-01-06 00:18:41 -0800232 depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -0700233 default "00080000" if CHIP_M32700
Hirokazu Takata9287d952006-01-06 00:18:41 -0800234 default "00010000" if CHIP_M32102 || CHIP_OPSP || CHIP_M32104
Linus Torvalds1da177e2005-04-16 15:20:36 -0700235 default "00008000" if CHIP_VDEC2
236
237#
238# Define implied options from the CPU selection here
239#
240
Nick Piggin95c354f2008-01-30 13:31:20 +0100241config GENERIC_LOCKBREAK
242 bool
243 default y
244 depends on SMP && PREEMPT
245
Linus Torvalds1da177e2005-04-16 15:20:36 -0700246config RWSEM_GENERIC_SPINLOCK
247 bool
248 depends on M32R
249 default y
250
251config RWSEM_XCHGADD_ALGORITHM
252 bool
253 default n
254
David Howellsf0d1b0b2006-12-08 02:37:49 -0800255config ARCH_HAS_ILOG2_U32
256 bool
257 default n
258
259config ARCH_HAS_ILOG2_U64
260 bool
261 default n
262
Akinobu Mita6d9f9372006-03-26 01:39:26 -0800263config GENERIC_HWEIGHT
264 bool
265 default y
266
Linus Torvalds1da177e2005-04-16 15:20:36 -0700267config GENERIC_CALIBRATE_DELAY
268 bool
269 default y
270
Ingo Molnarae1e9132008-11-11 09:05:16 +0100271config SCHED_OMIT_FRAME_POINTER
Hirokazu Takata43c09ce2007-05-10 22:22:25 -0700272 bool
273 default y
274
Frederic Weisbeckerdab16ae2011-07-05 16:29:40 +0200275source "kernel/Kconfig.preempt"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700276
Linus Torvalds1da177e2005-04-16 15:20:36 -0700277config SMP
278 bool "Symmetric multi-processing support"
Sudip Mukherjeeaf1ddcb2016-02-05 15:36:10 -0800279 depends on MMU
Linus Torvalds1da177e2005-04-16 15:20:36 -0700280 ---help---
281 This enables support for systems with more than one CPU. If you have
Robert Graffham4a474152014-01-23 15:55:29 -0800282 a system with only one CPU, say N. If you have a system with more
283 than one CPU, say Y.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700284
Robert Graffham4a474152014-01-23 15:55:29 -0800285 If you say N here, the kernel will run on uni- and multiprocessor
Linus Torvalds1da177e2005-04-16 15:20:36 -0700286 machines, but will use only one CPU of a multiprocessor machine. If
287 you say Y here, the kernel will run on many, but not all,
Robert Graffham4a474152014-01-23 15:55:29 -0800288 uniprocessor machines. On a uniprocessor machine, the kernel
Linus Torvalds1da177e2005-04-16 15:20:36 -0700289 will run faster if you say N here.
290
291 People using multiprocessor machines who say Y here should also say
292 Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
293 Management" code will be disabled if you say Y here.
294
Adrian Bunk03502fa2008-02-03 15:50:21 +0200295 See also the SMP-HOWTO available at
Justin P. Mattock50a23e62010-10-16 10:36:23 -0700296 <http://tldp.org/HOWTO/SMP-HOWTO.html>.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700297
298 If you don't know what to do here, say N.
299
300config CHIP_M32700_TS1
301 bool "Workaround code for the M32700 TS1 chip's bug"
302 depends on (CHIP_M32700 && SMP)
303 default n
304
305config NR_CPUS
306 int "Maximum number of CPUs (2-32)"
307 range 2 32
308 depends on SMP
309 default "2"
310 help
311 This allows you to specify the maximum number of CPUs which this
312 kernel will support. The maximum supported value is 32 and the
313 minimum value which makes sense is 2.
314
315 This is purely to save memory - each supported CPU adds
316 approximately eight kilobytes to the kernel image.
317
318# Common NUMA Features
319config NUMA
320 bool "Numa Memory Allocation Support"
Al Viroc5596b22005-08-23 22:45:11 +0100321 depends on SMP && BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700322 default n
323
Yasunori Gotoc80d79d2006-04-10 22:53:53 -0700324config NODES_SHIFT
325 int
326 default "1"
327 depends on NEED_MULTIPLE_NODES
328
Linus Torvalds1da177e2005-04-16 15:20:36 -0700329endmenu
330
331
332menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
333
334config PCI
335 bool "PCI support"
Al Viroc3a0f772005-08-23 22:45:31 +0100336 depends on BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700337 default n
338 help
339 Find out whether you have a PCI motherboard. PCI is the name of a
340 bus system, i.e. the way the CPU talks to the other stuff inside
341 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
342 VESA. If you have PCI, say Y, otherwise N.
343
Linus Torvalds1da177e2005-04-16 15:20:36 -0700344choice
345 prompt "PCI access mode"
346 depends on PCI
347 default PCI_GOANY
348
349config PCI_GOBIOS
350 bool "BIOS"
351 ---help---
352 On PCI systems, the BIOS can be used to detect the PCI devices and
353 determine their configuration. However, some old PCI motherboards
354 have BIOS bugs and may crash if this is done. Also, some embedded
355 PCI-based systems don't have any BIOS at all. Linux can also try to
356 detect the PCI hardware directly without using the BIOS.
357
358 With this option, you can specify how Linux should detect the PCI
359 devices. If you choose "BIOS", the BIOS will be used, if you choose
360 "Direct", the BIOS won't be used, and if you choose "Any", the
361 kernel will try the direct access method and falls back to the BIOS
362 if that doesn't work. If unsure, go with the default, which is
363 "Any".
364
365config PCI_GODIRECT
366 bool "Direct"
367
368config PCI_GOANY
369 bool "Any"
370
371endchoice
372
373config PCI_BIOS
374 bool
375 depends on PCI && (PCI_GOBIOS || PCI_GOANY)
376 default y
377
378config PCI_DIRECT
379 bool
380 depends on PCI && (PCI_GODIRECT || PCI_GOANY)
381 default y
382
383source "drivers/pci/Kconfig"
384
385config ISA
Adrian Bunk1b20b092008-09-24 14:58:54 +0900386 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700387
388source "drivers/pcmcia/Kconfig"
389
390source "drivers/pci/hotplug/Kconfig"
391
392endmenu
393
394
395menu "Executable file formats"
396
397source "fs/Kconfig.binfmt"
398
399endmenu
400
Sam Ravnborgd5950b42005-07-11 21:03:49 -0700401source "net/Kconfig"
402
Linus Torvalds1da177e2005-04-16 15:20:36 -0700403source "drivers/Kconfig"
404
405source "fs/Kconfig"
406
Linus Torvalds1da177e2005-04-16 15:20:36 -0700407source "arch/m32r/Kconfig.debug"
408
409source "security/Kconfig"
410
411source "crypto/Kconfig"
412
413source "lib/Kconfig"