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