2 # For a description of the syntax of this configuration file,
3 # see Documentation/kbuild/kconfig-language.txt.
6 mainmenu "Linux/M32R Kernel Configuration"
13 select INIT_ALL_POSSIBLE
14 select HAVE_KERNEL_GZIP
15 select HAVE_KERNEL_BZIP2
16 select HAVE_KERNEL_LZMA
21 config GENERIC_ISA_DMA
29 config GENERIC_HARDIRQS
33 config GENERIC_IRQ_PROBE
47 config ARCH_USES_GETTIMEOFFSET
52 source "kernel/Kconfig.freezer"
55 menu "Processor type and features"
58 prompt "Platform Type"
64 The Mappi-I is an FPGA board for SOC (System-On-a-Chip) prototyping.
65 You can operate a Linux system on this board by using an M32R
66 softmacro core, which is a fully-synthesizable functional model
67 described in Verilog-HDL.
69 The Mappi-I board was the first platform, which had been used
70 to port and develop a Linux system for the M32R processor.
71 Currently, the Mappi-II, an heir to the Mappi-I, is available.
75 select PLAT_HAS_INT1ICU
79 select PLAT_HAS_INT0ICU
80 select PLAT_HAS_INT1ICU
81 select PLAT_HAS_INT2ICU
83 The M3T-M32700UT is an evaluation board based on uT-Engine
84 specification. This board has an M32700 (Chaos) evaluation chip.
85 You can say Y for SMP, because the M32700 is a single chip
90 select PLAT_HAS_INT0ICU
91 select PLAT_HAS_INT1ICU
92 select PLAT_HAS_INT2ICU
94 The OPSPUT is an evaluation board based on uT-Engine
95 specification. This board has a OPSP-REP chip.
100 The OAKS32R is a tiny, inexpensive evaluation board.
101 Please note that if you say Y here and choose chip "M32102",
102 say N for MMU and select a no-MMU version kernel, otherwise
103 a kernel with MMU support will not work, because the M32102
104 is a microcontroller for embedded systems and it has no MMU.
107 bool "Mappi-II(M3A-ZA36/M3A-ZA52)"
110 bool "Mappi-III(M3A-2170)"
114 select PLAT_HAS_INT1ICU
116 The M3T-M32104UT is an reference board based on uT-Engine
117 specification. This board has a M32104 chip.
122 prompt "Processor family"
126 bool "M32700 (Chaos)"
133 depends on PLAT_M32104UT
144 bool "Support for memory management hardware"
145 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
150 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
151 default 32 if CHIP_M32700 || CHIP_OPSP
152 default 16 if CHIP_VDEC2
157 depends on CHIP_M32102 || CHIP_M32104
162 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
165 config ISA_DSP_LEVEL2
167 depends on CHIP_M32700 || CHIP_OPSP
170 config ISA_DUAL_ISSUE
172 depends on CHIP_M32700 || CHIP_OPSP
175 config PLAT_HAS_INT0ICU
179 config PLAT_HAS_INT1ICU
183 config PLAT_HAS_INT2ICU
188 int "Bus Clock [Hz] (integer)"
189 default "70000000" if PLAT_MAPPI
190 default "25000000" if PLAT_USRV
191 default "50000000" if PLAT_MAPPI3
192 default "50000000" if PLAT_M32700UT
193 default "50000000" if PLAT_OPSPUT
194 default "54000000" if PLAT_M32104UT
195 default "33333333" if PLAT_OAKS32R
196 default "20000000" if PLAT_MAPPI2
199 int "Timer divider (integer)"
202 config CPU_LITTLE_ENDIAN
203 bool "Generate little endian code"
207 hex "Physical memory start address (hex)"
208 default "08000000" if PLAT_MAPPI || PLAT_MAPPI2 || PLAT_MAPPI3
209 default "08000000" if PLAT_USRV
210 default "08000000" if PLAT_M32700UT
211 default "08000000" if PLAT_OPSPUT
212 default "04000000" if PLAT_M32104UT
213 default "01000000" if PLAT_OAKS32R
216 hex "Physical memory size (hex)"
217 default "08000000" if PLAT_MAPPI3
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
222 default "01000000" if PLAT_M32104UT
223 default "00800000" if PLAT_OAKS32R
225 config ARCH_DISCONTIGMEM_ENABLE
226 bool "Internal RAM Support"
227 depends on CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104
233 hex "Internal memory start address (hex)"
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
239 hex "Internal memory size (hex)"
240 depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM
241 default "00080000" if CHIP_M32700
242 default "00010000" if CHIP_M32102 || CHIP_OPSP || CHIP_M32104
243 default "00008000" if CHIP_VDEC2
246 # Define implied options from the CPU selection here
249 config GENERIC_LOCKBREAK
252 depends on SMP && PREEMPT
254 config RWSEM_GENERIC_SPINLOCK
259 config RWSEM_XCHGADD_ALGORITHM
263 config ARCH_HAS_ILOG2_U32
267 config ARCH_HAS_ILOG2_U64
271 config GENERIC_FIND_NEXT_BIT
275 config GENERIC_HWEIGHT
279 config GENERIC_CALIBRATE_DELAY
283 config SCHED_OMIT_FRAME_POINTER
288 bool "Preemptible Kernel"
290 This option reduces the latency of the kernel when reacting to
291 real-time or interactive events by allowing a low priority process to
292 be preempted even if it is in kernel mode executing a system call.
293 This allows applications to run more reliably even when the system is
296 Say Y here if you are building a kernel for a desktop, embedded
297 or real-time system. Say N if you are unsure.
300 bool "Symmetric multi-processing support"
301 select USE_GENERIC_SMP_HELPERS
303 This enables support for systems with more than one CPU. If you have
304 a system with only one CPU, like most personal computers, say N. If
305 you have a system with more than one CPU, say Y.
307 If you say N here, the kernel will run on single and multiprocessor
308 machines, but will use only one CPU of a multiprocessor machine. If
309 you say Y here, the kernel will run on many, but not all,
310 singleprocessor machines. On a singleprocessor machine, the kernel
311 will run faster if you say N here.
313 People using multiprocessor machines who say Y here should also say
314 Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
315 Management" code will be disabled if you say Y here.
317 See also the SMP-HOWTO available at
318 <http://tldp.org/HOWTO/SMP-HOWTO.html>.
320 If you don't know what to do here, say N.
322 config CHIP_M32700_TS1
323 bool "Workaround code for the M32700 TS1 chip's bug"
324 depends on (CHIP_M32700 && SMP)
328 int "Maximum number of CPUs (2-32)"
333 This allows you to specify the maximum number of CPUs which this
334 kernel will support. The maximum supported value is 32 and the
335 minimum value which makes sense is 2.
337 This is purely to save memory - each supported CPU adds
338 approximately eight kilobytes to the kernel image.
340 # Common NUMA Features
342 bool "Numa Memory Allocation Support"
343 depends on SMP && BROKEN
349 depends on NEED_MULTIPLE_NODES
351 # turning this on wastes a bunch of space.
352 # Summit needs it only when NUMA is on
361 menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
368 Find out whether you have a PCI motherboard. PCI is the name of a
369 bus system, i.e. the way the CPU talks to the other stuff inside
370 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
371 VESA. If you have PCI, say Y, otherwise N.
374 prompt "PCI access mode"
381 On PCI systems, the BIOS can be used to detect the PCI devices and
382 determine their configuration. However, some old PCI motherboards
383 have BIOS bugs and may crash if this is done. Also, some embedded
384 PCI-based systems don't have any BIOS at all. Linux can also try to
385 detect the PCI hardware directly without using the BIOS.
387 With this option, you can specify how Linux should detect the PCI
388 devices. If you choose "BIOS", the BIOS will be used, if you choose
389 "Direct", the BIOS won't be used, and if you choose "Any", the
390 kernel will try the direct access method and falls back to the BIOS
391 if that doesn't work. If unsure, go with the default, which is
404 depends on PCI && (PCI_GOBIOS || PCI_GOANY)
409 depends on PCI && (PCI_GODIRECT || PCI_GOANY)
412 source "drivers/pci/Kconfig"
417 source "drivers/pcmcia/Kconfig"
419 source "drivers/pci/hotplug/Kconfig"
424 menu "Executable file formats"
426 source "fs/Kconfig.binfmt"
432 source "drivers/Kconfig"
436 source "arch/m32r/Kconfig.debug"
438 source "security/Kconfig"
440 source "crypto/Kconfig"