blob: 42ca8a39798dc6907cf80b21a3f18c0709301c43 [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
Linus Torvalds1da177e2005-04-16 15:20:36 -070084endchoice
85
86choice
87 prompt "Processor family"
88 default CHIP_M32700
89
90config CHIP_M32700
91 bool "M32700 (Chaos)"
92
93config CHIP_M32102
94 bool "M32102"
95
96config CHIP_VDEC2
97 bool "VDEC2"
98
99config CHIP_OPSP
100 bool "OPSP"
101
102endchoice
103
104config MMU
105 bool "Support for memory management hardware"
106 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
107 default y
108
109config TLB_ENTRIES
110 int "TLB Entries"
111 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
112 default 32 if CHIP_M32700 || CHIP_OPSP
113 default 16 if CHIP_VDEC2
114
115
116config ISA_M32R
117 bool
118 depends on CHIP_M32102
119 default y
120
121config ISA_M32R2
122 bool
123 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
124 default y
125
126config ISA_DSP_LEVEL2
127 bool
128 depends on CHIP_M32700 || CHIP_OPSP
129 default y
130
131config ISA_DUAL_ISSUE
132 bool
133 depends on CHIP_M32700 || CHIP_OPSP
134 default y
135
136config BUS_CLOCK
137 int "Bus Clock [Hz] (integer)"
138 default "70000000" if PLAT_MAPPI
139 default "25000000" if PLAT_USRV
Hirokazu Takata23680862005-06-21 17:16:10 -0700140 default "50000000" if PLAT_MAPPI3
Linus Torvalds1da177e2005-04-16 15:20:36 -0700141 default "50000000" if PLAT_M32700UT
142 default "50000000" if PLAT_OPSPUT
143 default "33333333" if PLAT_OAKS32R
144 default "20000000" if PLAT_MAPPI2
145
146config TIMER_DIVIDE
147 int "Timer divider (integer)"
148 default "128"
149
150config CPU_LITTLE_ENDIAN
151 bool "Generate little endian code"
152 default n
153
154config MEMORY_START
155 hex "Physical memory start address (hex)"
Hirokazu Takata23680862005-06-21 17:16:10 -0700156 default "08000000" if PLAT_MAPPI || PLAT_MAPPI2 || PLAT_MAPPI3
Linus Torvalds1da177e2005-04-16 15:20:36 -0700157 default "08000000" if PLAT_USRV
158 default "08000000" if PLAT_M32700UT
159 default "08000000" if PLAT_OPSPUT
160 default "01000000" if PLAT_OAKS32R
161
162config MEMORY_SIZE
163 hex "Physical memory size (hex)"
Hirokazu Takata23680862005-06-21 17:16:10 -0700164 default "08000000" if PLAT_MAPPI3
Linus Torvalds1da177e2005-04-16 15:20:36 -0700165 default "04000000" if PLAT_MAPPI || PLAT_MAPPI2
166 default "02000000" if PLAT_USRV
167 default "01000000" if PLAT_M32700UT
168 default "01000000" if PLAT_OPSPUT
169 default "00800000" if PLAT_OAKS32R
170
171config NOHIGHMEM
172 bool
173 default y
174
Dave Hansen3f22ab22005-06-23 00:07:43 -0700175config ARCH_DISCONTIGMEM_ENABLE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700176 bool "Internal RAM Support"
177 depends on CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP
178 default y
179
Dave Hansen3f22ab22005-06-23 00:07:43 -0700180source "mm/Kconfig"
181
Linus Torvalds1da177e2005-04-16 15:20:36 -0700182config IRAM_START
183 hex "Internal memory start address (hex)"
184 default "00f00000"
185 depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP) && DISCONTIGMEM
186
187config IRAM_SIZE
188 hex "Internal memory size (hex)"
189 depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP) && DISCONTIGMEM
190 default "00080000" if CHIP_M32700
191 default "00010000" if CHIP_M32102 || CHIP_OPSP
192 default "00008000" if CHIP_VDEC2
193
194#
195# Define implied options from the CPU selection here
196#
197
198config RWSEM_GENERIC_SPINLOCK
199 bool
200 depends on M32R
201 default y
202
203config RWSEM_XCHGADD_ALGORITHM
204 bool
205 default n
206
207config GENERIC_CALIBRATE_DELAY
208 bool
209 default y
210
211config PREEMPT
212 bool "Preemptible Kernel"
213 help
214 This option reduces the latency of the kernel when reacting to
215 real-time or interactive events by allowing a low priority process to
216 be preempted even if it is in kernel mode executing a system call.
217 This allows applications to run more reliably even when the system is
218 under load.
219
220 Say Y here if you are building a kernel for a desktop, embedded
221 or real-time system. Say N if you are unsure.
222
223config HAVE_DEC_LOCK
224 bool
225 depends on (SMP || PREEMPT)
226 default n
227
228config SMP
229 bool "Symmetric multi-processing support"
230 ---help---
231 This enables support for systems with more than one CPU. If you have
232 a system with only one CPU, like most personal computers, say N. If
233 you have a system with more than one CPU, say Y.
234
235 If you say N here, the kernel will run on single and multiprocessor
236 machines, but will use only one CPU of a multiprocessor machine. If
237 you say Y here, the kernel will run on many, but not all,
238 singleprocessor machines. On a singleprocessor machine, the kernel
239 will run faster if you say N here.
240
241 People using multiprocessor machines who say Y here should also say
242 Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
243 Management" code will be disabled if you say Y here.
244
245 See also the <file:Documentation/smp.tex>,
246 <file:Documentation/smp.txt> and the SMP-HOWTO available at
247 <http://www.linuxdoc.org/docs.html#howto>.
248
249 If you don't know what to do here, say N.
250
251config CHIP_M32700_TS1
252 bool "Workaround code for the M32700 TS1 chip's bug"
253 depends on (CHIP_M32700 && SMP)
254 default n
255
256config NR_CPUS
257 int "Maximum number of CPUs (2-32)"
258 range 2 32
259 depends on SMP
260 default "2"
261 help
262 This allows you to specify the maximum number of CPUs which this
263 kernel will support. The maximum supported value is 32 and the
264 minimum value which makes sense is 2.
265
266 This is purely to save memory - each supported CPU adds
267 approximately eight kilobytes to the kernel image.
268
269# Common NUMA Features
270config NUMA
271 bool "Numa Memory Allocation Support"
272 depends on SMP
273 default n
274
275# turning this on wastes a bunch of space.
276# Summit needs it only when NUMA is on
277config BOOT_IOREMAP
278 bool
279 depends on NUMA
280 default n
281
282endmenu
283
284
285menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
286
287config PCI
288 bool "PCI support"
289 default n
290 help
291 Find out whether you have a PCI motherboard. PCI is the name of a
292 bus system, i.e. the way the CPU talks to the other stuff inside
293 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
294 VESA. If you have PCI, say Y, otherwise N.
295
296 The PCI-HOWTO, available from
297 <http://www.linuxdoc.org/docs.html#howto>, contains valuable
298 information about which PCI hardware does work under Linux and which
299 doesn't.
300
301choice
302 prompt "PCI access mode"
303 depends on PCI
304 default PCI_GOANY
305
306config PCI_GOBIOS
307 bool "BIOS"
308 ---help---
309 On PCI systems, the BIOS can be used to detect the PCI devices and
310 determine their configuration. However, some old PCI motherboards
311 have BIOS bugs and may crash if this is done. Also, some embedded
312 PCI-based systems don't have any BIOS at all. Linux can also try to
313 detect the PCI hardware directly without using the BIOS.
314
315 With this option, you can specify how Linux should detect the PCI
316 devices. If you choose "BIOS", the BIOS will be used, if you choose
317 "Direct", the BIOS won't be used, and if you choose "Any", the
318 kernel will try the direct access method and falls back to the BIOS
319 if that doesn't work. If unsure, go with the default, which is
320 "Any".
321
322config PCI_GODIRECT
323 bool "Direct"
324
325config PCI_GOANY
326 bool "Any"
327
328endchoice
329
330config PCI_BIOS
331 bool
332 depends on PCI && (PCI_GOBIOS || PCI_GOANY)
333 default y
334
335config PCI_DIRECT
336 bool
337 depends on PCI && (PCI_GODIRECT || PCI_GOANY)
338 default y
339
340source "drivers/pci/Kconfig"
341
342config ISA
343 bool "ISA support"
344 help
345 Find out whether you have ISA slots on your motherboard. ISA is the
346 name of a bus system, i.e. the way the CPU talks to the other stuff
347 inside your box. If you have ISA, say Y, otherwise N.
348
349source "drivers/pcmcia/Kconfig"
350
351source "drivers/pci/hotplug/Kconfig"
352
353endmenu
354
355
356menu "Executable file formats"
357
358source "fs/Kconfig.binfmt"
359
360endmenu
361
362source "drivers/Kconfig"
363
364source "fs/Kconfig"
365
366source "arch/m32r/oprofile/Kconfig"
367
368source "arch/m32r/Kconfig.debug"
369
370source "security/Kconfig"
371
372source "crypto/Kconfig"
373
374source "lib/Kconfig"