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