blob: 836ac5a963c83140d18dcd762459d19e1fd0c101 [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"
279 ---help---
280 This enables support for systems with more than one CPU. If you have
Robert Graffham4a474152014-01-23 15:55:29 -0800281 a system with only one CPU, say N. If you have a system with more
282 than one CPU, say Y.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700283
Robert Graffham4a474152014-01-23 15:55:29 -0800284 If you say N here, the kernel will run on uni- and multiprocessor
Linus Torvalds1da177e2005-04-16 15:20:36 -0700285 machines, but will use only one CPU of a multiprocessor machine. If
286 you say Y here, the kernel will run on many, but not all,
Robert Graffham4a474152014-01-23 15:55:29 -0800287 uniprocessor machines. On a uniprocessor machine, the kernel
Linus Torvalds1da177e2005-04-16 15:20:36 -0700288 will run faster if you say N here.
289
290 People using multiprocessor machines who say Y here should also say
291 Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
292 Management" code will be disabled if you say Y here.
293
Adrian Bunk03502fa2008-02-03 15:50:21 +0200294 See also the SMP-HOWTO available at
Justin P. Mattock50a23e62010-10-16 10:36:23 -0700295 <http://tldp.org/HOWTO/SMP-HOWTO.html>.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700296
297 If you don't know what to do here, say N.
298
299config CHIP_M32700_TS1
300 bool "Workaround code for the M32700 TS1 chip's bug"
301 depends on (CHIP_M32700 && SMP)
302 default n
303
304config NR_CPUS
305 int "Maximum number of CPUs (2-32)"
306 range 2 32
307 depends on SMP
308 default "2"
309 help
310 This allows you to specify the maximum number of CPUs which this
311 kernel will support. The maximum supported value is 32 and the
312 minimum value which makes sense is 2.
313
314 This is purely to save memory - each supported CPU adds
315 approximately eight kilobytes to the kernel image.
316
317# Common NUMA Features
318config NUMA
319 bool "Numa Memory Allocation Support"
Al Viroc5596b22005-08-23 22:45:11 +0100320 depends on SMP && BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700321 default n
322
Yasunori Gotoc80d79d2006-04-10 22:53:53 -0700323config NODES_SHIFT
324 int
325 default "1"
326 depends on NEED_MULTIPLE_NODES
327
Linus Torvalds1da177e2005-04-16 15:20:36 -0700328endmenu
329
330
331menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
332
333config PCI
334 bool "PCI support"
Al Viroc3a0f772005-08-23 22:45:31 +0100335 depends on BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700336 default n
337 help
338 Find out whether you have a PCI motherboard. PCI is the name of a
339 bus system, i.e. the way the CPU talks to the other stuff inside
340 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
341 VESA. If you have PCI, say Y, otherwise N.
342
Linus Torvalds1da177e2005-04-16 15:20:36 -0700343choice
344 prompt "PCI access mode"
345 depends on PCI
346 default PCI_GOANY
347
348config PCI_GOBIOS
349 bool "BIOS"
350 ---help---
351 On PCI systems, the BIOS can be used to detect the PCI devices and
352 determine their configuration. However, some old PCI motherboards
353 have BIOS bugs and may crash if this is done. Also, some embedded
354 PCI-based systems don't have any BIOS at all. Linux can also try to
355 detect the PCI hardware directly without using the BIOS.
356
357 With this option, you can specify how Linux should detect the PCI
358 devices. If you choose "BIOS", the BIOS will be used, if you choose
359 "Direct", the BIOS won't be used, and if you choose "Any", the
360 kernel will try the direct access method and falls back to the BIOS
361 if that doesn't work. If unsure, go with the default, which is
362 "Any".
363
364config PCI_GODIRECT
365 bool "Direct"
366
367config PCI_GOANY
368 bool "Any"
369
370endchoice
371
372config PCI_BIOS
373 bool
374 depends on PCI && (PCI_GOBIOS || PCI_GOANY)
375 default y
376
377config PCI_DIRECT
378 bool
379 depends on PCI && (PCI_GODIRECT || PCI_GOANY)
380 default y
381
382source "drivers/pci/Kconfig"
383
384config ISA
Adrian Bunk1b20b092008-09-24 14:58:54 +0900385 bool
Linus Torvalds1da177e2005-04-16 15:20:36 -0700386
387source "drivers/pcmcia/Kconfig"
388
389source "drivers/pci/hotplug/Kconfig"
390
391endmenu
392
393
394menu "Executable file formats"
395
396source "fs/Kconfig.binfmt"
397
398endmenu
399
Sam Ravnborgd5950b42005-07-11 21:03:49 -0700400source "net/Kconfig"
401
Linus Torvalds1da177e2005-04-16 15:20:36 -0700402source "drivers/Kconfig"
403
404source "fs/Kconfig"
405
Linus Torvalds1da177e2005-04-16 15:20:36 -0700406source "arch/m32r/Kconfig.debug"
407
408source "security/Kconfig"
409
410source "crypto/Kconfig"
411
412source "lib/Kconfig"