]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blob - arch/m32r/Kconfig
[PATCH] sort the devres mess out
[mirror_ubuntu-artful-kernel.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 PREEMPT
245 bool "Preemptible Kernel"
246 help
247 This option reduces the latency of the kernel when reacting to
248 real-time or interactive events by allowing a low priority process to
249 be preempted even if it is in kernel mode executing a system call.
250 This allows applications to run more reliably even when the system is
251 under load.
252
253 Say Y here if you are building a kernel for a desktop, embedded
254 or real-time system. Say N if you are unsure.
255
256 config SMP
257 bool "Symmetric multi-processing support"
258 ---help---
259 This enables support for systems with more than one CPU. If you have
260 a system with only one CPU, like most personal computers, say N. If
261 you have a system with more than one CPU, say Y.
262
263 If you say N here, the kernel will run on single and multiprocessor
264 machines, but will use only one CPU of a multiprocessor machine. If
265 you say Y here, the kernel will run on many, but not all,
266 singleprocessor machines. On a singleprocessor machine, the kernel
267 will run faster if you say N here.
268
269 People using multiprocessor machines who say Y here should also say
270 Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
271 Management" code will be disabled if you say Y here.
272
273 See also the <file:Documentation/smp.txt>,
274 and the SMP-HOWTO available at
275 <http://www.linuxdoc.org/docs.html#howto>.
276
277 If you don't know what to do here, say N.
278
279 config CHIP_M32700_TS1
280 bool "Workaround code for the M32700 TS1 chip's bug"
281 depends on (CHIP_M32700 && SMP)
282 default n
283
284 config NR_CPUS
285 int "Maximum number of CPUs (2-32)"
286 range 2 32
287 depends on SMP
288 default "2"
289 help
290 This allows you to specify the maximum number of CPUs which this
291 kernel will support. The maximum supported value is 32 and the
292 minimum value which makes sense is 2.
293
294 This is purely to save memory - each supported CPU adds
295 approximately eight kilobytes to the kernel image.
296
297 # Common NUMA Features
298 config NUMA
299 bool "Numa Memory Allocation Support"
300 depends on SMP && BROKEN
301 default n
302
303 config NODES_SHIFT
304 int
305 default "1"
306 depends on NEED_MULTIPLE_NODES
307
308 # turning this on wastes a bunch of space.
309 # Summit needs it only when NUMA is on
310 config BOOT_IOREMAP
311 bool
312 depends on NUMA
313 default n
314
315 endmenu
316
317
318 menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
319
320 config PCI
321 bool "PCI support"
322 depends on BROKEN
323 default n
324 help
325 Find out whether you have a PCI motherboard. PCI is the name of a
326 bus system, i.e. the way the CPU talks to the other stuff inside
327 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
328 VESA. If you have PCI, say Y, otherwise N.
329
330 The PCI-HOWTO, available from
331 <http://www.linuxdoc.org/docs.html#howto>, contains valuable
332 information about which PCI hardware does work under Linux and which
333 doesn't.
334
335 choice
336 prompt "PCI access mode"
337 depends on PCI
338 default PCI_GOANY
339
340 config PCI_GOBIOS
341 bool "BIOS"
342 ---help---
343 On PCI systems, the BIOS can be used to detect the PCI devices and
344 determine their configuration. However, some old PCI motherboards
345 have BIOS bugs and may crash if this is done. Also, some embedded
346 PCI-based systems don't have any BIOS at all. Linux can also try to
347 detect the PCI hardware directly without using the BIOS.
348
349 With this option, you can specify how Linux should detect the PCI
350 devices. If you choose "BIOS", the BIOS will be used, if you choose
351 "Direct", the BIOS won't be used, and if you choose "Any", the
352 kernel will try the direct access method and falls back to the BIOS
353 if that doesn't work. If unsure, go with the default, which is
354 "Any".
355
356 config PCI_GODIRECT
357 bool "Direct"
358
359 config PCI_GOANY
360 bool "Any"
361
362 endchoice
363
364 config PCI_BIOS
365 bool
366 depends on PCI && (PCI_GOBIOS || PCI_GOANY)
367 default y
368
369 config PCI_DIRECT
370 bool
371 depends on PCI && (PCI_GODIRECT || PCI_GOANY)
372 default y
373
374 source "drivers/pci/Kconfig"
375
376 config ISA
377 bool "ISA support"
378 help
379 Find out whether you have ISA slots on your motherboard. ISA is the
380 name of a bus system, i.e. the way the CPU talks to the other stuff
381 inside your box. If you have ISA, say Y, otherwise N.
382
383 source "drivers/pcmcia/Kconfig"
384
385 source "drivers/pci/hotplug/Kconfig"
386
387 endmenu
388
389
390 menu "Executable file formats"
391
392 source "fs/Kconfig.binfmt"
393
394 endmenu
395
396 source "net/Kconfig"
397
398 source "drivers/Kconfig"
399
400 source "fs/Kconfig"
401
402 source "arch/m32r/oprofile/Kconfig"
403
404 source "arch/m32r/Kconfig.debug"
405
406 source "security/Kconfig"
407
408 source "crypto/Kconfig"
409
410 source "lib/Kconfig"