kbuild: migrate all arch to the kconfig mainmenu upgrade
[GitHub/mt8127/android_kernel_alcatel_ttab.git] / arch / m32r / Kconfig
1 config M32R
2 bool
3 default y
4 select HAVE_IDE
5 select HAVE_OPROFILE
6 select INIT_ALL_POSSIBLE
7 select HAVE_KERNEL_GZIP
8 select HAVE_KERNEL_BZIP2
9 select HAVE_KERNEL_LZMA
10
11 config SBUS
12 bool
13
14 config GENERIC_ISA_DMA
15 bool
16 default y
17
18 config ZONE_DMA
19 bool
20 default y
21
22 config GENERIC_HARDIRQS
23 bool
24 default y
25
26 config GENERIC_IRQ_PROBE
27 bool
28 default y
29
30 config NO_IOPORT
31 def_bool y
32
33 config NO_DMA
34 def_bool y
35
36 config HZ
37 int
38 default 100
39
40 config GENERIC_TIME
41 def_bool y
42
43 config ARCH_USES_GETTIMEOFFSET
44 def_bool y
45
46 source "init/Kconfig"
47
48 source "kernel/Kconfig.freezer"
49
50
51 menu "Processor type and features"
52
53 choice
54 prompt "Platform Type"
55 default PLAT_MAPPI
56
57 config 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
69 config PLAT_USRV
70 bool "uServer"
71 select PLAT_HAS_INT1ICU
72
73 config PLAT_M32700UT
74 bool "M32700UT"
75 select PLAT_HAS_INT0ICU
76 select PLAT_HAS_INT1ICU
77 select PLAT_HAS_INT2ICU
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
84 config PLAT_OPSPUT
85 bool "OPSPUT"
86 select PLAT_HAS_INT0ICU
87 select PLAT_HAS_INT1ICU
88 select PLAT_HAS_INT2ICU
89 help
90 The OPSPUT is an evaluation board based on uT-Engine
91 specification. This board has a OPSP-REP chip.
92
93 config 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
102 config PLAT_MAPPI2
103 bool "Mappi-II(M3A-ZA36/M3A-ZA52)"
104
105 config PLAT_MAPPI3
106 bool "Mappi-III(M3A-2170)"
107
108 config PLAT_M32104UT
109 bool "M32104UT"
110 select PLAT_HAS_INT1ICU
111 help
112 The M3T-M32104UT is an reference board based on uT-Engine
113 specification. This board has a M32104 chip.
114
115 endchoice
116
117 choice
118 prompt "Processor family"
119 default CHIP_M32700
120
121 config CHIP_M32700
122 bool "M32700 (Chaos)"
123
124 config CHIP_M32102
125 bool "M32102"
126
127 config CHIP_M32104
128 bool "M32104"
129 depends on PLAT_M32104UT
130
131 config CHIP_VDEC2
132 bool "VDEC2"
133
134 config CHIP_OPSP
135 bool "OPSP"
136
137 endchoice
138
139 config MMU
140 bool "Support for memory management hardware"
141 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
142 default y
143
144 config 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
151 config ISA_M32R
152 bool
153 depends on CHIP_M32102 || CHIP_M32104
154 default y
155
156 config ISA_M32R2
157 bool
158 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
159 default y
160
161 config ISA_DSP_LEVEL2
162 bool
163 depends on CHIP_M32700 || CHIP_OPSP
164 default y
165
166 config ISA_DUAL_ISSUE
167 bool
168 depends on CHIP_M32700 || CHIP_OPSP
169 default y
170
171 config PLAT_HAS_INT0ICU
172 bool
173 default n
174
175 config PLAT_HAS_INT1ICU
176 bool
177 default n
178
179 config PLAT_HAS_INT2ICU
180 bool
181 default n
182
183 config BUS_CLOCK
184 int "Bus Clock [Hz] (integer)"
185 default "70000000" if PLAT_MAPPI
186 default "25000000" if PLAT_USRV
187 default "50000000" if PLAT_MAPPI3
188 default "50000000" if PLAT_M32700UT
189 default "50000000" if PLAT_OPSPUT
190 default "54000000" if PLAT_M32104UT
191 default "33333333" if PLAT_OAKS32R
192 default "20000000" if PLAT_MAPPI2
193
194 config TIMER_DIVIDE
195 int "Timer divider (integer)"
196 default "128"
197
198 config CPU_LITTLE_ENDIAN
199 bool "Generate little endian code"
200 default n
201
202 config MEMORY_START
203 hex "Physical memory start address (hex)"
204 default "08000000" if PLAT_MAPPI || PLAT_MAPPI2 || PLAT_MAPPI3
205 default "08000000" if PLAT_USRV
206 default "08000000" if PLAT_M32700UT
207 default "08000000" if PLAT_OPSPUT
208 default "04000000" if PLAT_M32104UT
209 default "01000000" if PLAT_OAKS32R
210
211 config MEMORY_SIZE
212 hex "Physical memory size (hex)"
213 default "08000000" if PLAT_MAPPI3
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
218 default "01000000" if PLAT_M32104UT
219 default "00800000" if PLAT_OAKS32R
220
221 config ARCH_DISCONTIGMEM_ENABLE
222 bool "Internal RAM Support"
223 depends on CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104
224 default y
225
226 source "mm/Kconfig"
227
228 config IRAM_START
229 hex "Internal memory start address (hex)"
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
233
234 config IRAM_SIZE
235 hex "Internal memory size (hex)"
236 depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM
237 default "00080000" if CHIP_M32700
238 default "00010000" if CHIP_M32102 || CHIP_OPSP || CHIP_M32104
239 default "00008000" if CHIP_VDEC2
240
241 #
242 # Define implied options from the CPU selection here
243 #
244
245 config GENERIC_LOCKBREAK
246 bool
247 default y
248 depends on SMP && PREEMPT
249
250 config RWSEM_GENERIC_SPINLOCK
251 bool
252 depends on M32R
253 default y
254
255 config RWSEM_XCHGADD_ALGORITHM
256 bool
257 default n
258
259 config ARCH_HAS_ILOG2_U32
260 bool
261 default n
262
263 config ARCH_HAS_ILOG2_U64
264 bool
265 default n
266
267 config GENERIC_FIND_NEXT_BIT
268 bool
269 default y
270
271 config GENERIC_HWEIGHT
272 bool
273 default y
274
275 config GENERIC_CALIBRATE_DELAY
276 bool
277 default y
278
279 config SCHED_OMIT_FRAME_POINTER
280 bool
281 default y
282
283 config 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
295 config SMP
296 bool "Symmetric multi-processing support"
297 select USE_GENERIC_SMP_HELPERS
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
313 See also the SMP-HOWTO available at
314 <http://www.linuxdoc.org/docs.html#howto>.
315
316 If you don't know what to do here, say N.
317
318 config CHIP_M32700_TS1
319 bool "Workaround code for the M32700 TS1 chip's bug"
320 depends on (CHIP_M32700 && SMP)
321 default n
322
323 config 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
337 config NUMA
338 bool "Numa Memory Allocation Support"
339 depends on SMP && BROKEN
340 default n
341
342 config NODES_SHIFT
343 int
344 default "1"
345 depends on NEED_MULTIPLE_NODES
346
347 # turning this on wastes a bunch of space.
348 # Summit needs it only when NUMA is on
349 config BOOT_IOREMAP
350 bool
351 depends on NUMA
352 default n
353
354 endmenu
355
356
357 menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
358
359 config PCI
360 bool "PCI support"
361 depends on BROKEN
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
369 choice
370 prompt "PCI access mode"
371 depends on PCI
372 default PCI_GOANY
373
374 config 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
390 config PCI_GODIRECT
391 bool "Direct"
392
393 config PCI_GOANY
394 bool "Any"
395
396 endchoice
397
398 config PCI_BIOS
399 bool
400 depends on PCI && (PCI_GOBIOS || PCI_GOANY)
401 default y
402
403 config PCI_DIRECT
404 bool
405 depends on PCI && (PCI_GODIRECT || PCI_GOANY)
406 default y
407
408 source "drivers/pci/Kconfig"
409
410 config ISA
411 bool
412
413 source "drivers/pcmcia/Kconfig"
414
415 source "drivers/pci/hotplug/Kconfig"
416
417 endmenu
418
419
420 menu "Executable file formats"
421
422 source "fs/Kconfig.binfmt"
423
424 endmenu
425
426 source "net/Kconfig"
427
428 source "drivers/Kconfig"
429
430 source "fs/Kconfig"
431
432 source "arch/m32r/Kconfig.debug"
433
434 source "security/Kconfig"
435
436 source "crypto/Kconfig"
437
438 source "lib/Kconfig"