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