2 # For a description of the syntax of this configuration file,
3 # see Documentation/kbuild/kconfig-language.txt.
6 mainmenu "Linux/M32R Kernel Configuration"
15 config GENERIC_ISA_DMA
23 config GENERIC_HARDIRQS
27 config GENERIC_IRQ_PROBE
37 menu "Processor type and features"
40 prompt "Platform Type"
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.
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.
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
69 The OPSPUT is an evaluation board based on uT-Engine
70 specification. This board has a OPSP-REP chip.
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.
82 bool "Mappi-II(M3A-ZA36/M3A-ZA52)"
85 bool "Mappi-III(M3A-2170)"
90 The M3T-M32104UT is an reference board based on uT-Engine
91 specification. This board has a M32104 chip.
96 prompt "Processor family"
100 bool "M32700 (Chaos)"
107 depends on PLAT_M32104UT
118 bool "Support for memory management hardware"
119 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
124 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
125 default 32 if CHIP_M32700 || CHIP_OPSP
126 default 16 if CHIP_VDEC2
131 depends on CHIP_M32102 || CHIP_M32104
136 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
139 config ISA_DSP_LEVEL2
141 depends on CHIP_M32700 || CHIP_OPSP
144 config ISA_DUAL_ISSUE
146 depends on CHIP_M32700 || CHIP_OPSP
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
161 int "Timer divider (integer)"
164 config CPU_LITTLE_ENDIAN
165 bool "Generate little endian code"
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
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
191 config ARCH_DISCONTIGMEM_ENABLE
192 bool "Internal RAM Support"
193 depends on CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104
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
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
212 # Define implied options from the CPU selection here
215 config RWSEM_GENERIC_SPINLOCK
220 config RWSEM_XCHGADD_ALGORITHM
224 config ARCH_HAS_ILOG2_U32
228 config ARCH_HAS_ILOG2_U64
232 config GENERIC_FIND_NEXT_BIT
236 config GENERIC_HWEIGHT
240 config GENERIC_CALIBRATE_DELAY
245 bool "Preemptible Kernel"
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
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.
257 bool "Symmetric multi-processing support"
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.
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.
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.
273 See also the <file:Documentation/smp.txt>,
274 and the SMP-HOWTO available at
275 <http://www.linuxdoc.org/docs.html#howto>.
277 If you don't know what to do here, say N.
279 config CHIP_M32700_TS1
280 bool "Workaround code for the M32700 TS1 chip's bug"
281 depends on (CHIP_M32700 && SMP)
285 int "Maximum number of CPUs (2-32)"
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.
294 This is purely to save memory - each supported CPU adds
295 approximately eight kilobytes to the kernel image.
297 # Common NUMA Features
299 bool "Numa Memory Allocation Support"
300 depends on SMP && BROKEN
306 depends on NEED_MULTIPLE_NODES
308 # turning this on wastes a bunch of space.
309 # Summit needs it only when NUMA is on
318 menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
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.
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
336 prompt "PCI access mode"
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.
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
366 depends on PCI && (PCI_GOBIOS || PCI_GOANY)
371 depends on PCI && (PCI_GODIRECT || PCI_GOANY)
374 source "drivers/pci/Kconfig"
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.
383 source "drivers/pcmcia/Kconfig"
385 source "drivers/pci/hotplug/Kconfig"
390 menu "Executable file formats"
392 source "fs/Kconfig.binfmt"
398 source "drivers/Kconfig"
402 source "arch/m32r/oprofile/Kconfig"
404 source "arch/m32r/Kconfig.debug"
406 source "security/Kconfig"
408 source "crypto/Kconfig"