Merge branch 'linus' into perf/urgent
[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
0e155b2c 10 select HAVE_GENERIC_HARDIRQS
0e155b2c 11 select GENERIC_IRQ_PROBE
4bdab7e0 12 select GENERIC_IRQ_SHOW
abcefec3 13 select GENERIC_ATOMIC64
97a1c1e9 14 select ARCH_USES_GETTIMEOFFSET
1da177e4
LT
15
16config SBUS
17 bool
18
1da177e4
LT
19config GENERIC_ISA_DMA
20 bool
21 default y
22
5ac6da66
CL
23config ZONE_DMA
24 bool
25 default y
26
5ea81769
AV
27config NO_IOPORT
28 def_bool y
29
1b0fac45
DW
30config NO_DMA
31 def_bool y
32
bdc80787
PA
33config HZ
34 int
35 default 100
36
1da177e4
LT
37source "init/Kconfig"
38
dc52ddc0
MH
39source "kernel/Kconfig.freezer"
40
1da177e4
LT
41
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"
e070fb74 62 select PLAT_HAS_INT1ICU
1da177e4
LT
63
64config PLAT_M32700UT
65 bool "M32700UT"
e070fb74
HT
66 select PLAT_HAS_INT0ICU
67 select PLAT_HAS_INT1ICU
68 select PLAT_HAS_INT2ICU
1da177e4
LT
69 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"
e070fb74
HT
77 select PLAT_HAS_INT0ICU
78 select PLAT_HAS_INT1ICU
79 select PLAT_HAS_INT2ICU
1da177e4
LT
80 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
23680863
HT
96config PLAT_MAPPI3
97 bool "Mappi-III(M3A-2170)"
98
9287d95e
HT
99config PLAT_M32104UT
100 bool "M32104UT"
e070fb74 101 select PLAT_HAS_INT1ICU
9287d95e
HT
102 help
103 The M3T-M32104UT is an reference board based on uT-Engine
104 specification. This board has a M32104 chip.
105
1da177e4
LT
106endchoice
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
9287d95e
HT
118config CHIP_M32104
119 bool "M32104"
120 depends on PLAT_M32104UT
121
1da177e4
LT
122config 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
9287d95e 144 depends on CHIP_M32102 || CHIP_M32104
1da177e4
LT
145 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
e070fb74
HT
162config 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
1da177e4
LT
174config BUS_CLOCK
175 int "Bus Clock [Hz] (integer)"
176 default "70000000" if PLAT_MAPPI
177 default "25000000" if PLAT_USRV
23680863 178 default "50000000" if PLAT_MAPPI3
1da177e4
LT
179 default "50000000" if PLAT_M32700UT
180 default "50000000" if PLAT_OPSPUT
9287d95e 181 default "54000000" if PLAT_M32104UT
1da177e4
LT
182 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)"
23680863 195 default "08000000" if PLAT_MAPPI || PLAT_MAPPI2 || PLAT_MAPPI3
1da177e4
LT
196 default "08000000" if PLAT_USRV
197 default "08000000" if PLAT_M32700UT
198 default "08000000" if PLAT_OPSPUT
9287d95e 199 default "04000000" if PLAT_M32104UT
1da177e4
LT
200 default "01000000" if PLAT_OAKS32R
201
202config MEMORY_SIZE
203 hex "Physical memory size (hex)"
23680863 204 default "08000000" if PLAT_MAPPI3
1da177e4
LT
205 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
9287d95e 209 default "01000000" if PLAT_M32104UT
1da177e4
LT
210 default "00800000" if PLAT_OAKS32R
211
3f22ab27 212config ARCH_DISCONTIGMEM_ENABLE
1da177e4 213 bool "Internal RAM Support"
9287d95e 214 depends on CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104
1da177e4
LT
215 default y
216
3f22ab27
DH
217source "mm/Kconfig"
218
1da177e4
LT
219config IRAM_START
220 hex "Internal memory start address (hex)"
9287d95e
HT
221 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
1da177e4
LT
224
225config IRAM_SIZE
226 hex "Internal memory size (hex)"
9287d95e 227 depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM
1da177e4 228 default "00080000" if CHIP_M32700
9287d95e 229 default "00010000" if CHIP_M32102 || CHIP_OPSP || CHIP_M32104
1da177e4
LT
230 default "00008000" if CHIP_VDEC2
231
232#
233# Define implied options from the CPU selection here
234#
235
95c354fe
NP
236config GENERIC_LOCKBREAK
237 bool
238 default y
239 depends on SMP && PREEMPT
240
1da177e4
LT
241config RWSEM_GENERIC_SPINLOCK
242 bool
243 depends on M32R
244 default y
245
246config RWSEM_XCHGADD_ALGORITHM
247 bool
248 default n
249
f0d1b0b3
DH
250config ARCH_HAS_ILOG2_U32
251 bool
252 default n
253
254config ARCH_HAS_ILOG2_U64
255 bool
256 default n
257
6d9f937b
AM
258config GENERIC_HWEIGHT
259 bool
260 default y
261
1da177e4
LT
262config GENERIC_CALIBRATE_DELAY
263 bool
264 default y
265
ae1e9130 266config SCHED_OMIT_FRAME_POINTER
43c09ce7
HT
267 bool
268 default y
269
dab16ae1 270source "kernel/Kconfig.preempt"
1da177e4 271
1da177e4
LT
272config SMP
273 bool "Symmetric multi-processing support"
7b7426c8 274 select USE_GENERIC_SMP_HELPERS
1da177e4
LT
275 ---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
03502faa 290 See also the SMP-HOWTO available at
50a23e6e 291 <http://tldp.org/HOWTO/SMP-HOWTO.html>.
1da177e4
LT
292
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"
c5596b26 316 depends on SMP && BROKEN
1da177e4
LT
317 default n
318
c80d79d7
YG
319config NODES_SHIFT
320 int
321 default "1"
322 depends on NEED_MULTIPLE_NODES
323
1da177e4
LT
324endmenu
325
326
327menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
328
329config PCI
330 bool "PCI support"
c3a0f771 331 depends on BROKEN
1da177e4
LT
332 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
1da177e4
LT
339choice
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
1b20b093 381 bool
1da177e4
LT
382
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
d5950b43
SR
396source "net/Kconfig"
397
1da177e4
LT
398source "drivers/Kconfig"
399
400source "fs/Kconfig"
401
1da177e4
LT
402source "arch/m32r/Kconfig.debug"
403
404source "security/Kconfig"
405
406source "crypto/Kconfig"
407
408source "lib/Kconfig"