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
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
22 select ARCH_NO_COHERENT_DMA_MMAP if !MMU
27 config GENERIC_ISA_DMA
47 source "kernel/Kconfig.freezer"
50 menu "Processor type and features"
53 prompt "Platform Type"
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.
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.
70 select PLAT_HAS_INT1ICU
74 select PLAT_HAS_INT0ICU
75 select PLAT_HAS_INT1ICU
76 select PLAT_HAS_INT2ICU
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
85 select PLAT_HAS_INT0ICU
86 select PLAT_HAS_INT1ICU
87 select PLAT_HAS_INT2ICU
89 The OPSPUT is an evaluation board based on uT-Engine
90 specification. This board has a OPSP-REP chip.
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.
102 bool "Mappi-II(M3A-ZA36/M3A-ZA52)"
105 bool "Mappi-III(M3A-2170)"
109 select PLAT_HAS_INT1ICU
111 The M3T-M32104UT is an reference board based on uT-Engine
112 specification. This board has a M32104 chip.
117 prompt "Processor family"
121 bool "M32700 (Chaos)"
128 depends on PLAT_M32104UT
139 bool "Support for memory management hardware"
140 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
145 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
146 default 32 if CHIP_M32700 || CHIP_OPSP
147 default 16 if CHIP_VDEC2
152 depends on CHIP_M32102 || CHIP_M32104
157 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP
160 config ISA_DSP_LEVEL2
162 depends on CHIP_M32700 || CHIP_OPSP
165 config ISA_DUAL_ISSUE
167 depends on CHIP_M32700 || CHIP_OPSP
170 config PLAT_HAS_INT0ICU
174 config PLAT_HAS_INT1ICU
178 config PLAT_HAS_INT2ICU
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
194 int "Timer divider (integer)"
197 config CPU_BIG_ENDIAN
198 bool "Generate big endian code"
201 config CPU_LITTLE_ENDIAN
202 bool "Generate little endian code"
206 hex "Physical memory start address (hex)"
207 default "08000000" if PLAT_MAPPI || PLAT_MAPPI2 || PLAT_MAPPI3
208 default "08000000" if PLAT_USRV
209 default "08000000" if PLAT_M32700UT
210 default "08000000" if PLAT_OPSPUT
211 default "04000000" if PLAT_M32104UT
212 default "01000000" if PLAT_OAKS32R
215 hex "Physical memory size (hex)"
216 default "08000000" if PLAT_MAPPI3
217 default "04000000" if PLAT_MAPPI || PLAT_MAPPI2
218 default "02000000" if PLAT_USRV
219 default "01000000" if PLAT_M32700UT
220 default "01000000" if PLAT_OPSPUT
221 default "01000000" if PLAT_M32104UT
222 default "00800000" if PLAT_OAKS32R
224 config ARCH_DISCONTIGMEM_ENABLE
225 bool "Internal RAM Support"
226 depends on CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104
232 hex "Internal memory start address (hex)"
233 default "00f00000" if !CHIP_M32104
234 default "00700000" if CHIP_M32104
235 depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM
238 hex "Internal memory size (hex)"
239 depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM
240 default "00080000" if CHIP_M32700
241 default "00010000" if CHIP_M32102 || CHIP_OPSP || CHIP_M32104
242 default "00008000" if CHIP_VDEC2
245 # Define implied options from the CPU selection here
248 config GENERIC_LOCKBREAK
251 depends on SMP && PREEMPT
253 config RWSEM_GENERIC_SPINLOCK
258 config RWSEM_XCHGADD_ALGORITHM
262 config ARCH_HAS_ILOG2_U32
266 config ARCH_HAS_ILOG2_U64
270 config GENERIC_HWEIGHT
274 config GENERIC_CALIBRATE_DELAY
278 config SCHED_OMIT_FRAME_POINTER
282 source "kernel/Kconfig.preempt"
285 bool "Symmetric multi-processing support"
288 This enables support for systems with more than one CPU. If you have
289 a system with only one CPU, say N. If you have a system with more
292 If you say N here, the kernel will run on uni- and multiprocessor
293 machines, but will use only one CPU of a multiprocessor machine. If
294 you say Y here, the kernel will run on many, but not all,
295 uniprocessor machines. On a uniprocessor machine, the kernel
296 will run faster if you say N here.
298 People using multiprocessor machines who say Y here should also say
299 Y to "Enhanced Real Time Clock Support", below. The "Advanced Power
300 Management" code will be disabled if you say Y here.
302 See also the SMP-HOWTO available at
303 <http://tldp.org/HOWTO/SMP-HOWTO.html>.
305 If you don't know what to do here, say N.
307 config CHIP_M32700_TS1
308 bool "Workaround code for the M32700 TS1 chip's bug"
309 depends on (CHIP_M32700 && SMP)
313 int "Maximum number of CPUs (2-32)"
318 This allows you to specify the maximum number of CPUs which this
319 kernel will support. The maximum supported value is 32 and the
320 minimum value which makes sense is 2.
322 This is purely to save memory - each supported CPU adds
323 approximately eight kilobytes to the kernel image.
325 # Common NUMA Features
327 bool "Numa Memory Allocation Support"
328 depends on SMP && BROKEN
334 depends on NEED_MULTIPLE_NODES
339 menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
346 Find out whether you have a PCI motherboard. PCI is the name of a
347 bus system, i.e. the way the CPU talks to the other stuff inside
348 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or
349 VESA. If you have PCI, say Y, otherwise N.
352 prompt "PCI access mode"
359 On PCI systems, the BIOS can be used to detect the PCI devices and
360 determine their configuration. However, some old PCI motherboards
361 have BIOS bugs and may crash if this is done. Also, some embedded
362 PCI-based systems don't have any BIOS at all. Linux can also try to
363 detect the PCI hardware directly without using the BIOS.
365 With this option, you can specify how Linux should detect the PCI
366 devices. If you choose "BIOS", the BIOS will be used, if you choose
367 "Direct", the BIOS won't be used, and if you choose "Any", the
368 kernel will try the direct access method and falls back to the BIOS
369 if that doesn't work. If unsure, go with the default, which is
382 depends on PCI && (PCI_GOBIOS || PCI_GOANY)
387 depends on PCI && (PCI_GODIRECT || PCI_GOANY)
390 source "drivers/pci/Kconfig"
395 source "drivers/pcmcia/Kconfig"
400 menu "Executable file formats"
402 source "fs/Kconfig.binfmt"
408 source "drivers/Kconfig"
412 source "arch/m32r/Kconfig.debug"
414 source "security/Kconfig"
416 source "crypto/Kconfig"