kbuild: migrate all arch to the kconfig mainmenu upgrade
[GitHub/mt8127/android_kernel_alcatel_ttab.git] / arch / m32r / Kconfig
CommitLineData
1da177e4
LT
1config M32R
2 bool
3 default y
ec7748b5 4 select HAVE_IDE
42d4b839 5 select HAVE_OPROFILE
98a79d6a 6 select INIT_ALL_POSSIBLE
337214e8
HT
7 select HAVE_KERNEL_GZIP
8 select HAVE_KERNEL_BZIP2
9 select HAVE_KERNEL_LZMA
1da177e4
LT
10
11config SBUS
12 bool
13
1da177e4
LT
14config GENERIC_ISA_DMA
15 bool
16 default y
17
5ac6da66
CL
18config ZONE_DMA
19 bool
20 default y
21
1da177e4
LT
22config GENERIC_HARDIRQS
23 bool
24 default y
25
26config GENERIC_IRQ_PROBE
27 bool
28 default y
29
5ea81769
AV
30config NO_IOPORT
31 def_bool y
32
1b0fac45
DW
33config NO_DMA
34 def_bool y
35
bdc80787
PA
36config HZ
37 int
38 default 100
39
95ad759c
JS
40config GENERIC_TIME
41 def_bool y
42
43config ARCH_USES_GETTIMEOFFSET
44 def_bool y
45
1da177e4
LT
46source "init/Kconfig"
47
dc52ddc0
MH
48source "kernel/Kconfig.freezer"
49
1da177e4
LT
50
51menu "Processor type and features"
52
53choice
54 prompt "Platform Type"
55 default PLAT_MAPPI
56
57config PLAT_MAPPI
58 bool "Mappi-I"
59 help
60 The Mappi-I is an FPGA board for SOC (System-On-a-Chip) prototyping.
61 You can operate a Linux system on this board by using an M32R
62 softmacro core, which is a fully-synthesizable functional model
63 described in Verilog-HDL.
64
65 The Mappi-I board was the first platform, which had been used
66 to port and develop a Linux system for the M32R processor.
67 Currently, the Mappi-II, an heir to the Mappi-I, is available.
68
69config PLAT_USRV
70 bool "uServer"
e070fb74 71 select PLAT_HAS_INT1ICU
1da177e4
LT
72
73config PLAT_M32700UT
74 bool "M32700UT"
e070fb74
HT
75 select PLAT_HAS_INT0ICU
76 select PLAT_HAS_INT1ICU
77 select PLAT_HAS_INT2ICU
1da177e4
LT
78 help
79 The M3T-M32700UT is an evaluation board based on uT-Engine
80 specification. This board has an M32700 (Chaos) evaluation chip.
81 You can say Y for SMP, because the M32700 is a single chip
82 multiprocessor.
83
84config PLAT_OPSPUT
85 bool "OPSPUT"
e070fb74
HT
86 select PLAT_HAS_INT0ICU
87 select PLAT_HAS_INT1ICU
88 select PLAT_HAS_INT2ICU
1da177e4
LT
89 help
90 The OPSPUT is an evaluation board based on uT-Engine
91 specification. This board has a OPSP-REP chip.
92
93config PLAT_OAKS32R
94 bool "OAKS32R"
95 help
96 The OAKS32R is a tiny, inexpensive evaluation board.
97 Please note that if you say Y here and choose chip "M32102",
98 say N for MMU and select a no-MMU version kernel, otherwise
99 a kernel with MMU support will not work, because the M32102
100 is a microcontroller for embedded systems and it has no MMU.
101
102config PLAT_MAPPI2
103 bool "Mappi-II(M3A-ZA36/M3A-ZA52)"
104
23680863
HT
105config PLAT_MAPPI3
106 bool "Mappi-III(M3A-2170)"
107
9287d95e
HT
108config PLAT_M32104UT
109 bool "M32104UT"
e070fb74 110 select PLAT_HAS_INT1ICU
9287d95e
HT
111 help
112 The M3T-M32104UT is an reference board based on uT-Engine
113 specification. This board has a M32104 chip.
114
1da177e4
LT
115endchoice
116
117choice
118 prompt "Processor family"
119 default CHIP_M32700
120
121config CHIP_M32700
122 bool "M32700 (Chaos)"
123
124config CHIP_M32102
125 bool "M32102"
126
9287d95e
HT
127config CHIP_M32104
128 bool "M32104"
129 depends on PLAT_M32104UT
130
1da177e4
LT
131config CHIP_VDEC2
132 bool "VDEC2"
133
134config CHIP_OPSP
135 bool "OPSP"
136
137endchoice
138
139config MMU
140 bool "Support for memory management hardware"
141 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
142 default y
143
144config TLB_ENTRIES
145 int "TLB Entries"
146 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
147 default 32 if CHIP_M32700 || CHIP_OPSP
148 default 16 if CHIP_VDEC2
149
150
151config ISA_M32R
152 bool
9287d95e 153 depends on CHIP_M32102 || CHIP_M32104
1da177e4
LT
154 default y
155
156config ISA_M32R2
157 bool
158 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
159 default y
160
161config ISA_DSP_LEVEL2
162 bool
163 depends on CHIP_M32700 || CHIP_OPSP
164 default y
165
166config ISA_DUAL_ISSUE
167 bool
168 depends on CHIP_M32700 || CHIP_OPSP
169 default y
170
e070fb74
HT
171config PLAT_HAS_INT0ICU
172 bool
173 default n
174
175config PLAT_HAS_INT1ICU
176 bool
177 default n
178
179config PLAT_HAS_INT2ICU
180 bool
181 default n
182
1da177e4
LT
183config BUS_CLOCK
184 int "Bus Clock [Hz] (integer)"
185 default "70000000" if PLAT_MAPPI
186 default "25000000" if PLAT_USRV
23680863 187 default "50000000" if PLAT_MAPPI3
1da177e4
LT
188 default "50000000" if PLAT_M32700UT
189 default "50000000" if PLAT_OPSPUT
9287d95e 190 default "54000000" if PLAT_M32104UT
1da177e4
LT
191 default "33333333" if PLAT_OAKS32R
192 default "20000000" if PLAT_MAPPI2
193
194config TIMER_DIVIDE
195 int "Timer divider (integer)"
196 default "128"
197
198config CPU_LITTLE_ENDIAN
199 bool "Generate little endian code"
200 default n
201
202config MEMORY_START
203 hex "Physical memory start address (hex)"
23680863 204 default "08000000" if PLAT_MAPPI || PLAT_MAPPI2 || PLAT_MAPPI3
1da177e4
LT
205 default "08000000" if PLAT_USRV
206 default "08000000" if PLAT_M32700UT
207 default "08000000" if PLAT_OPSPUT
9287d95e 208 default "04000000" if PLAT_M32104UT
1da177e4
LT
209 default "01000000" if PLAT_OAKS32R
210
211config MEMORY_SIZE
212 hex "Physical memory size (hex)"
23680863 213 default "08000000" if PLAT_MAPPI3
1da177e4
LT
214 default "04000000" if PLAT_MAPPI || PLAT_MAPPI2
215 default "02000000" if PLAT_USRV
216 default "01000000" if PLAT_M32700UT
217 default "01000000" if PLAT_OPSPUT
9287d95e 218 default "01000000" if PLAT_M32104UT
1da177e4
LT
219 default "00800000" if PLAT_OAKS32R
220
3f22ab27 221config ARCH_DISCONTIGMEM_ENABLE
1da177e4 222 bool "Internal RAM Support"
9287d95e 223 depends on CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104
1da177e4
LT
224 default y
225
3f22ab27
DH
226source "mm/Kconfig"
227
1da177e4
LT
228config IRAM_START
229 hex "Internal memory start address (hex)"
9287d95e
HT
230 default "00f00000" if !CHIP_M32104
231 default "00700000" if CHIP_M32104
232 depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM
1da177e4
LT
233
234config IRAM_SIZE
235 hex "Internal memory size (hex)"
9287d95e 236 depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM
1da177e4 237 default "00080000" if CHIP_M32700
9287d95e 238 default "00010000" if CHIP_M32102 || CHIP_OPSP || CHIP_M32104
1da177e4
LT
239 default "00008000" if CHIP_VDEC2
240
241#
242# Define implied options from the CPU selection here
243#
244
95c354fe
NP
245config GENERIC_LOCKBREAK
246 bool
247 default y
248 depends on SMP && PREEMPT
249
1da177e4
LT
250config RWSEM_GENERIC_SPINLOCK
251 bool
252 depends on M32R
253 default y
254
255config RWSEM_XCHGADD_ALGORITHM
256 bool
257 default n
258
f0d1b0b3
DH
259config ARCH_HAS_ILOG2_U32
260 bool
261 default n
262
263config ARCH_HAS_ILOG2_U64
264 bool
265 default n
266
6d9f937b
AM
267config GENERIC_FIND_NEXT_BIT
268 bool
269 default y
270
271config GENERIC_HWEIGHT
272 bool
273 default y
274
1da177e4
LT
275config GENERIC_CALIBRATE_DELAY
276 bool
277 default y
278
ae1e9130 279config SCHED_OMIT_FRAME_POINTER
43c09ce7
HT
280 bool
281 default y
282
1da177e4
LT
283config PREEMPT
284 bool "Preemptible Kernel"
285 help
286 This option reduces the latency of the kernel when reacting to
287 real-time or interactive events by allowing a low priority process to
288 be preempted even if it is in kernel mode executing a system call.
289 This allows applications to run more reliably even when the system is
290 under load.
291
292 Say Y here if you are building a kernel for a desktop, embedded
293 or real-time system. Say N if you are unsure.
294
1da177e4
LT
295config SMP
296 bool "Symmetric multi-processing support"
7b7426c8 297 select USE_GENERIC_SMP_HELPERS
1da177e4
LT
298 ---help---
299 This enables support for systems with more than one CPU. If you have
300 a system with only one CPU, like most personal computers, say N. If
301 you have a system with more than one CPU, say Y.
302
303 If you say N here, the kernel will run on single and multiprocessor
304 machines, but will use only one CPU of a multiprocessor machine. If
305 you say Y here, the kernel will run on many, but not all,
306 singleprocessor machines. On a singleprocessor machine, the kernel
307 will run faster if you say N here.
308
309 People using multiprocessor machines who say Y here should also say
310 Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
311 Management" code will be disabled if you say Y here.
312
03502faa 313 See also the SMP-HOWTO available at
1da177e4
LT
314 <http://www.linuxdoc.org/docs.html#howto>.
315
316 If you don't know what to do here, say N.
317
318config CHIP_M32700_TS1
319 bool "Workaround code for the M32700 TS1 chip's bug"
320 depends on (CHIP_M32700 && SMP)
321 default n
322
323config NR_CPUS
324 int "Maximum number of CPUs (2-32)"
325 range 2 32
326 depends on SMP
327 default "2"
328 help
329 This allows you to specify the maximum number of CPUs which this
330 kernel will support. The maximum supported value is 32 and the
331 minimum value which makes sense is 2.
332
333 This is purely to save memory - each supported CPU adds
334 approximately eight kilobytes to the kernel image.
335
336# Common NUMA Features
337config NUMA
338 bool "Numa Memory Allocation Support"
c5596b26 339 depends on SMP && BROKEN
1da177e4
LT
340 default n
341
c80d79d7
YG
342config NODES_SHIFT
343 int
344 default "1"
345 depends on NEED_MULTIPLE_NODES
346
1da177e4
LT
347# turning this on wastes a bunch of space.
348# Summit needs it only when NUMA is on
349config BOOT_IOREMAP
350 bool
351 depends on NUMA
352 default n
353
354endmenu
355
356
357menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
358
359config PCI
360 bool "PCI support"
c3a0f771 361 depends on BROKEN
1da177e4
LT
362 default n
363 help
364 Find out whether you have a PCI motherboard. PCI is the name of a
365 bus system, i.e. the way the CPU talks to the other stuff inside
366 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
367 VESA. If you have PCI, say Y, otherwise N.
368
1da177e4
LT
369choice
370 prompt "PCI access mode"
371 depends on PCI
372 default PCI_GOANY
373
374config PCI_GOBIOS
375 bool "BIOS"
376 ---help---
377 On PCI systems, the BIOS can be used to detect the PCI devices and
378 determine their configuration. However, some old PCI motherboards
379 have BIOS bugs and may crash if this is done. Also, some embedded
380 PCI-based systems don't have any BIOS at all. Linux can also try to
381 detect the PCI hardware directly without using the BIOS.
382
383 With this option, you can specify how Linux should detect the PCI
384 devices. If you choose "BIOS", the BIOS will be used, if you choose
385 "Direct", the BIOS won't be used, and if you choose "Any", the
386 kernel will try the direct access method and falls back to the BIOS
387 if that doesn't work. If unsure, go with the default, which is
388 "Any".
389
390config PCI_GODIRECT
391 bool "Direct"
392
393config PCI_GOANY
394 bool "Any"
395
396endchoice
397
398config PCI_BIOS
399 bool
400 depends on PCI && (PCI_GOBIOS || PCI_GOANY)
401 default y
402
403config PCI_DIRECT
404 bool
405 depends on PCI && (PCI_GODIRECT || PCI_GOANY)
406 default y
407
408source "drivers/pci/Kconfig"
409
410config ISA
1b20b093 411 bool
1da177e4
LT
412
413source "drivers/pcmcia/Kconfig"
414
415source "drivers/pci/hotplug/Kconfig"
416
417endmenu
418
419
420menu "Executable file formats"
421
422source "fs/Kconfig.binfmt"
423
424endmenu
425
d5950b43
SR
426source "net/Kconfig"
427
1da177e4
LT
428source "drivers/Kconfig"
429
430source "fs/Kconfig"
431
1da177e4
LT
432source "arch/m32r/Kconfig.debug"
433
434source "security/Kconfig"
435
436source "crypto/Kconfig"
437
438source "lib/Kconfig"