blob: a3dcc3fab4b736660ab3b621d3321c730949f501 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#
2# For a description of the syntax of this configuration file,
3# see Documentation/kbuild/kconfig-language.txt.
4#
5
6mainmenu "Linux/M32R Kernel Configuration"
7
8config M32R
9 bool
10 default y
11
12config SBUS
13 bool
14
Linus Torvalds1da177e2005-04-16 15:20:36 -070015config GENERIC_ISA_DMA
16 bool
17 default y
18
19config GENERIC_HARDIRQS
20 bool
21 default y
22
23config GENERIC_IRQ_PROBE
24 bool
25 default y
26
27source "init/Kconfig"
28
29
30menu "Processor type and features"
31
32choice
33 prompt "Platform Type"
34 default PLAT_MAPPI
35
36config PLAT_MAPPI
37 bool "Mappi-I"
38 help
39 The Mappi-I is an FPGA board for SOC (System-On-a-Chip) prototyping.
40 You can operate a Linux system on this board by using an M32R
41 softmacro core, which is a fully-synthesizable functional model
42 described in Verilog-HDL.
43
44 The Mappi-I board was the first platform, which had been used
45 to port and develop a Linux system for the M32R processor.
46 Currently, the Mappi-II, an heir to the Mappi-I, is available.
47
48config PLAT_USRV
49 bool "uServer"
50
51config PLAT_M32700UT
52 bool "M32700UT"
53 help
54 The M3T-M32700UT is an evaluation board based on uT-Engine
55 specification. This board has an M32700 (Chaos) evaluation chip.
56 You can say Y for SMP, because the M32700 is a single chip
57 multiprocessor.
58
59config PLAT_OPSPUT
60 bool "OPSPUT"
61 help
62 The OPSPUT is an evaluation board based on uT-Engine
63 specification. This board has a OPSP-REP chip.
64
65config PLAT_OAKS32R
66 bool "OAKS32R"
67 help
68 The OAKS32R is a tiny, inexpensive evaluation board.
69 Please note that if you say Y here and choose chip "M32102",
70 say N for MMU and select a no-MMU version kernel, otherwise
71 a kernel with MMU support will not work, because the M32102
72 is a microcontroller for embedded systems and it has no MMU.
73
74config PLAT_MAPPI2
75 bool "Mappi-II(M3A-ZA36/M3A-ZA52)"
76
Hirokazu Takata23680862005-06-21 17:16:10 -070077config PLAT_MAPPI3
78 bool "Mappi-III(M3A-2170)"
79
Hirokazu Takata9287d952006-01-06 00:18:41 -080080config PLAT_M32104UT
81 bool "M32104UT"
82 help
83 The M3T-M32104UT is an reference board based on uT-Engine
84 specification. This board has a M32104 chip.
85
Linus Torvalds1da177e2005-04-16 15:20:36 -070086endchoice
87
88choice
89 prompt "Processor family"
90 default CHIP_M32700
91
92config CHIP_M32700
93 bool "M32700 (Chaos)"
94
95config CHIP_M32102
96 bool "M32102"
97
Hirokazu Takata9287d952006-01-06 00:18:41 -080098config CHIP_M32104
99 bool "M32104"
100 depends on PLAT_M32104UT
101
Linus Torvalds1da177e2005-04-16 15:20:36 -0700102config CHIP_VDEC2
103 bool "VDEC2"
104
105config CHIP_OPSP
106 bool "OPSP"
107
108endchoice
109
110config MMU
111 bool "Support for memory management hardware"
112 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
113 default y
114
115config TLB_ENTRIES
116 int "TLB Entries"
117 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
118 default 32 if CHIP_M32700 || CHIP_OPSP
119 default 16 if CHIP_VDEC2
120
121
122config ISA_M32R
123 bool
Hirokazu Takata9287d952006-01-06 00:18:41 -0800124 depends on CHIP_M32102 || CHIP_M32104
Linus Torvalds1da177e2005-04-16 15:20:36 -0700125 default y
126
127config ISA_M32R2
128 bool
129 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
130 default y
131
132config ISA_DSP_LEVEL2
133 bool
134 depends on CHIP_M32700 || CHIP_OPSP
135 default y
136
137config ISA_DUAL_ISSUE
138 bool
139 depends on CHIP_M32700 || CHIP_OPSP
140 default y
141
142config BUS_CLOCK
143 int "Bus Clock [Hz] (integer)"
144 default "70000000" if PLAT_MAPPI
145 default "25000000" if PLAT_USRV
Hirokazu Takata23680862005-06-21 17:16:10 -0700146 default "50000000" if PLAT_MAPPI3
Linus Torvalds1da177e2005-04-16 15:20:36 -0700147 default "50000000" if PLAT_M32700UT
148 default "50000000" if PLAT_OPSPUT
Hirokazu Takata9287d952006-01-06 00:18:41 -0800149 default "54000000" if PLAT_M32104UT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700150 default "33333333" if PLAT_OAKS32R
151 default "20000000" if PLAT_MAPPI2
152
153config TIMER_DIVIDE
154 int "Timer divider (integer)"
155 default "128"
156
157config CPU_LITTLE_ENDIAN
158 bool "Generate little endian code"
159 default n
160
161config MEMORY_START
162 hex "Physical memory start address (hex)"
Hirokazu Takata23680862005-06-21 17:16:10 -0700163 default "08000000" if PLAT_MAPPI || PLAT_MAPPI2 || PLAT_MAPPI3
Linus Torvalds1da177e2005-04-16 15:20:36 -0700164 default "08000000" if PLAT_USRV
165 default "08000000" if PLAT_M32700UT
166 default "08000000" if PLAT_OPSPUT
Hirokazu Takata9287d952006-01-06 00:18:41 -0800167 default "04000000" if PLAT_M32104UT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700168 default "01000000" if PLAT_OAKS32R
169
170config MEMORY_SIZE
171 hex "Physical memory size (hex)"
Hirokazu Takata23680862005-06-21 17:16:10 -0700172 default "08000000" if PLAT_MAPPI3
Linus Torvalds1da177e2005-04-16 15:20:36 -0700173 default "04000000" if PLAT_MAPPI || PLAT_MAPPI2
174 default "02000000" if PLAT_USRV
175 default "01000000" if PLAT_M32700UT
176 default "01000000" if PLAT_OPSPUT
Hirokazu Takata9287d952006-01-06 00:18:41 -0800177 default "01000000" if PLAT_M32104UT
Linus Torvalds1da177e2005-04-16 15:20:36 -0700178 default "00800000" if PLAT_OAKS32R
179
180config NOHIGHMEM
181 bool
182 default y
183
Dave Hansen3f22ab22005-06-23 00:07:43 -0700184config ARCH_DISCONTIGMEM_ENABLE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700185 bool "Internal RAM Support"
Hirokazu Takata9287d952006-01-06 00:18:41 -0800186 depends on CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104
Linus Torvalds1da177e2005-04-16 15:20:36 -0700187 default y
188
Dave Hansen3f22ab22005-06-23 00:07:43 -0700189source "mm/Kconfig"
190
Linus Torvalds1da177e2005-04-16 15:20:36 -0700191config IRAM_START
192 hex "Internal memory start address (hex)"
Hirokazu Takata9287d952006-01-06 00:18:41 -0800193 default "00f00000" if !CHIP_M32104
194 default "00700000" if CHIP_M32104
195 depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -0700196
197config IRAM_SIZE
198 hex "Internal memory size (hex)"
Hirokazu Takata9287d952006-01-06 00:18:41 -0800199 depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM
Linus Torvalds1da177e2005-04-16 15:20:36 -0700200 default "00080000" if CHIP_M32700
Hirokazu Takata9287d952006-01-06 00:18:41 -0800201 default "00010000" if CHIP_M32102 || CHIP_OPSP || CHIP_M32104
Linus Torvalds1da177e2005-04-16 15:20:36 -0700202 default "00008000" if CHIP_VDEC2
203
204#
205# Define implied options from the CPU selection here
206#
207
208config RWSEM_GENERIC_SPINLOCK
209 bool
210 depends on M32R
211 default y
212
213config RWSEM_XCHGADD_ALGORITHM
214 bool
215 default n
216
217config GENERIC_CALIBRATE_DELAY
218 bool
219 default y
220
221config PREEMPT
222 bool "Preemptible Kernel"
223 help
224 This option reduces the latency of the kernel when reacting to
225 real-time or interactive events by allowing a low priority process to
226 be preempted even if it is in kernel mode executing a system call.
227 This allows applications to run more reliably even when the system is
228 under load.
229
230 Say Y here if you are building a kernel for a desktop, embedded
231 or real-time system. Say N if you are unsure.
232
Linus Torvalds1da177e2005-04-16 15:20:36 -0700233config SMP
234 bool "Symmetric multi-processing support"
235 ---help---
236 This enables support for systems with more than one CPU. If you have
237 a system with only one CPU, like most personal computers, say N. If
238 you have a system with more than one CPU, say Y.
239
240 If you say N here, the kernel will run on single and multiprocessor
241 machines, but will use only one CPU of a multiprocessor machine. If
242 you say Y here, the kernel will run on many, but not all,
243 singleprocessor machines. On a singleprocessor machine, the kernel
244 will run faster if you say N here.
245
246 People using multiprocessor machines who say Y here should also say
247 Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
248 Management" code will be disabled if you say Y here.
249
Arthur Othieno12c62c22005-09-10 00:26:22 -0700250 See also the <file:Documentation/smp.txt>,
251 and the SMP-HOWTO available at
Linus Torvalds1da177e2005-04-16 15:20:36 -0700252 <http://www.linuxdoc.org/docs.html#howto>.
253
254 If you don't know what to do here, say N.
255
256config CHIP_M32700_TS1
257 bool "Workaround code for the M32700 TS1 chip's bug"
258 depends on (CHIP_M32700 && SMP)
259 default n
260
261config NR_CPUS
262 int "Maximum number of CPUs (2-32)"
263 range 2 32
264 depends on SMP
265 default "2"
266 help
267 This allows you to specify the maximum number of CPUs which this
268 kernel will support. The maximum supported value is 32 and the
269 minimum value which makes sense is 2.
270
271 This is purely to save memory - each supported CPU adds
272 approximately eight kilobytes to the kernel image.
273
274# Common NUMA Features
275config NUMA
276 bool "Numa Memory Allocation Support"
Al Viroc5596b22005-08-23 22:45:11 +0100277 depends on SMP && BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700278 default n
279
280# turning this on wastes a bunch of space.
281# Summit needs it only when NUMA is on
282config BOOT_IOREMAP
283 bool
284 depends on NUMA
285 default n
286
287endmenu
288
289
290menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
291
292config PCI
293 bool "PCI support"
Al Viroc3a0f772005-08-23 22:45:31 +0100294 depends on BROKEN
Linus Torvalds1da177e2005-04-16 15:20:36 -0700295 default n
296 help
297 Find out whether you have a PCI motherboard. PCI is the name of a
298 bus system, i.e. the way the CPU talks to the other stuff inside
299 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
300 VESA. If you have PCI, say Y, otherwise N.
301
302 The PCI-HOWTO, available from
303 <http://www.linuxdoc.org/docs.html#howto>, contains valuable
304 information about which PCI hardware does work under Linux and which
305 doesn't.
306
307choice
308 prompt "PCI access mode"
309 depends on PCI
310 default PCI_GOANY
311
312config PCI_GOBIOS
313 bool "BIOS"
314 ---help---
315 On PCI systems, the BIOS can be used to detect the PCI devices and
316 determine their configuration. However, some old PCI motherboards
317 have BIOS bugs and may crash if this is done. Also, some embedded
318 PCI-based systems don't have any BIOS at all. Linux can also try to
319 detect the PCI hardware directly without using the BIOS.
320
321 With this option, you can specify how Linux should detect the PCI
322 devices. If you choose "BIOS", the BIOS will be used, if you choose
323 "Direct", the BIOS won't be used, and if you choose "Any", the
324 kernel will try the direct access method and falls back to the BIOS
325 if that doesn't work. If unsure, go with the default, which is
326 "Any".
327
328config PCI_GODIRECT
329 bool "Direct"
330
331config PCI_GOANY
332 bool "Any"
333
334endchoice
335
336config PCI_BIOS
337 bool
338 depends on PCI && (PCI_GOBIOS || PCI_GOANY)
339 default y
340
341config PCI_DIRECT
342 bool
343 depends on PCI && (PCI_GODIRECT || PCI_GOANY)
344 default y
345
346source "drivers/pci/Kconfig"
347
348config ISA
349 bool "ISA support"
350 help
351 Find out whether you have ISA slots on your motherboard. ISA is the
352 name of a bus system, i.e. the way the CPU talks to the other stuff
353 inside your box. If you have ISA, say Y, otherwise N.
354
355source "drivers/pcmcia/Kconfig"
356
357source "drivers/pci/hotplug/Kconfig"
358
359endmenu
360
361
362menu "Executable file formats"
363
364source "fs/Kconfig.binfmt"
365
366endmenu
367
Sam Ravnborgd5950b42005-07-11 21:03:49 -0700368source "net/Kconfig"
369
Linus Torvalds1da177e2005-04-16 15:20:36 -0700370source "drivers/Kconfig"
371
372source "fs/Kconfig"
373
374source "arch/m32r/oprofile/Kconfig"
375
376source "arch/m32r/Kconfig.debug"
377
378source "security/Kconfig"
379
380source "crypto/Kconfig"
381
382source "lib/Kconfig"