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