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