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