| # SPDX-License-Identifier: GPL-2.0 | |
| config M32R | |
| bool | |
| default y | |
| select HAVE_IDE | |
| select HAVE_OPROFILE | |
| select INIT_ALL_POSSIBLE | |
| select HAVE_KERNEL_GZIP | |
| select HAVE_KERNEL_BZIP2 | |
| select HAVE_KERNEL_LZMA | |
| select ARCH_WANT_IPC_PARSE_VERSION | |
| select HAVE_DEBUG_BUGVERBOSE | |
| select VIRT_TO_BUS | |
| select GENERIC_IRQ_PROBE | |
| select GENERIC_IRQ_SHOW | |
| select GENERIC_ATOMIC64 | |
| select ARCH_HAS_DEVMEM_IS_ALLOWED | |
| select ARCH_USES_GETTIMEOFFSET | |
| select MODULES_USE_ELF_RELA | |
| select HAVE_DEBUG_STACKOVERFLOW | |
| select CPU_NO_EFFICIENT_FFS | |
| select DMA_NOOP_OPS | |
| select ARCH_NO_COHERENT_DMA_MMAP if !MMU | |
| config SBUS | |
| bool | |
| config GENERIC_ISA_DMA | |
| bool | |
| default y | |
| config ZONE_DMA | |
| bool | |
| default y | |
| config NO_IOPORT_MAP | |
| def_bool y | |
| config NO_DMA | |
| def_bool n | |
| config HZ | |
| int | |
| default 100 | |
| source "init/Kconfig" | |
| source "kernel/Kconfig.freezer" | |
| menu "Processor type and features" | |
| choice | |
| prompt "Platform Type" | |
| default PLAT_MAPPI | |
| config PLAT_MAPPI | |
| bool "Mappi-I" | |
| help | |
| The Mappi-I is an FPGA board for SOC (System-On-a-Chip) prototyping. | |
| You can operate a Linux system on this board by using an M32R | |
| softmacro core, which is a fully-synthesizable functional model | |
| described in Verilog-HDL. | |
| The Mappi-I board was the first platform, which had been used | |
| to port and develop a Linux system for the M32R processor. | |
| Currently, the Mappi-II, an heir to the Mappi-I, is available. | |
| config PLAT_USRV | |
| bool "uServer" | |
| select PLAT_HAS_INT1ICU | |
| config PLAT_M32700UT | |
| bool "M32700UT" | |
| select PLAT_HAS_INT0ICU | |
| select PLAT_HAS_INT1ICU | |
| select PLAT_HAS_INT2ICU | |
| help | |
| The M3T-M32700UT is an evaluation board based on uT-Engine | |
| specification. This board has an M32700 (Chaos) evaluation chip. | |
| You can say Y for SMP, because the M32700 is a single chip | |
| multiprocessor. | |
| config PLAT_OPSPUT | |
| bool "OPSPUT" | |
| select PLAT_HAS_INT0ICU | |
| select PLAT_HAS_INT1ICU | |
| select PLAT_HAS_INT2ICU | |
| help | |
| The OPSPUT is an evaluation board based on uT-Engine | |
| specification. This board has a OPSP-REP chip. | |
| config PLAT_OAKS32R | |
| bool "OAKS32R" | |
| help | |
| The OAKS32R is a tiny, inexpensive evaluation board. | |
| Please note that if you say Y here and choose chip "M32102", | |
| say N for MMU and select a no-MMU version kernel, otherwise | |
| a kernel with MMU support will not work, because the M32102 | |
| is a microcontroller for embedded systems and it has no MMU. | |
| config PLAT_MAPPI2 | |
| bool "Mappi-II(M3A-ZA36/M3A-ZA52)" | |
| config PLAT_MAPPI3 | |
| bool "Mappi-III(M3A-2170)" | |
| config PLAT_M32104UT | |
| bool "M32104UT" | |
| select PLAT_HAS_INT1ICU | |
| help | |
| The M3T-M32104UT is an reference board based on uT-Engine | |
| specification. This board has a M32104 chip. | |
| endchoice | |
| choice | |
| prompt "Processor family" | |
| default CHIP_M32700 | |
| config CHIP_M32700 | |
| bool "M32700 (Chaos)" | |
| config CHIP_M32102 | |
| bool "M32102" | |
| config CHIP_M32104 | |
| bool "M32104" | |
| depends on PLAT_M32104UT | |
| config CHIP_VDEC2 | |
| bool "VDEC2" | |
| config CHIP_OPSP | |
| bool "OPSP" | |
| endchoice | |
| config MMU | |
| bool "Support for memory management hardware" | |
| depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP | |
| default y | |
| config TLB_ENTRIES | |
| int "TLB Entries" | |
| depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP | |
| default 32 if CHIP_M32700 || CHIP_OPSP | |
| default 16 if CHIP_VDEC2 | |
| config ISA_M32R | |
| bool | |
| depends on CHIP_M32102 || CHIP_M32104 | |
| default y | |
| config ISA_M32R2 | |
| bool | |
| depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP | |
| default y | |
| config ISA_DSP_LEVEL2 | |
| bool | |
| depends on CHIP_M32700 || CHIP_OPSP | |
| default y | |
| config ISA_DUAL_ISSUE | |
| bool | |
| depends on CHIP_M32700 || CHIP_OPSP | |
| default y | |
| config PLAT_HAS_INT0ICU | |
| bool | |
| default n | |
| config PLAT_HAS_INT1ICU | |
| bool | |
| default n | |
| config PLAT_HAS_INT2ICU | |
| bool | |
| default n | |
| config BUS_CLOCK | |
| int "Bus Clock [Hz] (integer)" | |
| default "70000000" if PLAT_MAPPI | |
| default "25000000" if PLAT_USRV | |
| default "50000000" if PLAT_MAPPI3 | |
| default "50000000" if PLAT_M32700UT | |
| default "50000000" if PLAT_OPSPUT | |
| default "54000000" if PLAT_M32104UT | |
| default "33333333" if PLAT_OAKS32R | |
| default "20000000" if PLAT_MAPPI2 | |
| config TIMER_DIVIDE | |
| int "Timer divider (integer)" | |
| default "128" | |
| config CPU_BIG_ENDIAN | |
| bool | |
| default !CPU_LITTLE_ENDIAN | |
| config CPU_LITTLE_ENDIAN | |
| bool "Generate little endian code" | |
| default n | |
| config MEMORY_START | |
| hex "Physical memory start address (hex)" | |
| default "08000000" if PLAT_MAPPI || PLAT_MAPPI2 || PLAT_MAPPI3 | |
| default "08000000" if PLAT_USRV | |
| default "08000000" if PLAT_M32700UT | |
| default "08000000" if PLAT_OPSPUT | |
| default "04000000" if PLAT_M32104UT | |
| default "01000000" if PLAT_OAKS32R | |
| config MEMORY_SIZE | |
| hex "Physical memory size (hex)" | |
| default "08000000" if PLAT_MAPPI3 | |
| default "04000000" if PLAT_MAPPI || PLAT_MAPPI2 | |
| default "02000000" if PLAT_USRV | |
| default "01000000" if PLAT_M32700UT | |
| default "01000000" if PLAT_OPSPUT | |
| default "01000000" if PLAT_M32104UT | |
| default "00800000" if PLAT_OAKS32R | |
| config ARCH_DISCONTIGMEM_ENABLE | |
| bool "Internal RAM Support" | |
| depends on CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104 | |
| default y | |
| source "mm/Kconfig" | |
| config IRAM_START | |
| hex "Internal memory start address (hex)" | |
| default "00f00000" if !CHIP_M32104 | |
| default "00700000" if CHIP_M32104 | |
| depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM | |
| config IRAM_SIZE | |
| hex "Internal memory size (hex)" | |
| depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM | |
| default "00080000" if CHIP_M32700 | |
| default "00010000" if CHIP_M32102 || CHIP_OPSP || CHIP_M32104 | |
| default "00008000" if CHIP_VDEC2 | |
| # | |
| # Define implied options from the CPU selection here | |
| # | |
| config GENERIC_LOCKBREAK | |
| bool | |
| default y | |
| depends on SMP && PREEMPT | |
| config RWSEM_GENERIC_SPINLOCK | |
| bool | |
| depends on M32R | |
| default y | |
| config RWSEM_XCHGADD_ALGORITHM | |
| bool | |
| default n | |
| config ARCH_HAS_ILOG2_U32 | |
| bool | |
| default n | |
| config ARCH_HAS_ILOG2_U64 | |
| bool | |
| default n | |
| config GENERIC_HWEIGHT | |
| bool | |
| default y | |
| config GENERIC_CALIBRATE_DELAY | |
| bool | |
| default y | |
| config SCHED_OMIT_FRAME_POINTER | |
| bool | |
| default y | |
| source "kernel/Kconfig.preempt" | |
| config SMP | |
| bool "Symmetric multi-processing support" | |
| depends on MMU | |
| ---help--- | |
| This enables support for systems with more than one CPU. If you have | |
| a system with only one CPU, say N. If you have a system with more | |
| than one CPU, say Y. | |
| If you say N here, the kernel will run on uni- and multiprocessor | |
| machines, but will use only one CPU of a multiprocessor machine. If | |
| you say Y here, the kernel will run on many, but not all, | |
| uniprocessor machines. On a uniprocessor machine, the kernel | |
| will run faster if you say N here. | |
| People using multiprocessor machines who say Y here should also say | |
| Y to "Enhanced Real Time Clock Support", below. The "Advanced Power | |
| Management" code will be disabled if you say Y here. | |
| See also the SMP-HOWTO available at | |
| <http://tldp.org/HOWTO/SMP-HOWTO.html>. | |
| If you don't know what to do here, say N. | |
| config CHIP_M32700_TS1 | |
| bool "Workaround code for the M32700 TS1 chip's bug" | |
| depends on (CHIP_M32700 && SMP) | |
| default n | |
| config NR_CPUS | |
| int "Maximum number of CPUs (2-32)" | |
| range 2 32 | |
| depends on SMP | |
| default "2" | |
| help | |
| This allows you to specify the maximum number of CPUs which this | |
| kernel will support. The maximum supported value is 32 and the | |
| minimum value which makes sense is 2. | |
| This is purely to save memory - each supported CPU adds | |
| approximately eight kilobytes to the kernel image. | |
| # Common NUMA Features | |
| config NUMA | |
| bool "Numa Memory Allocation Support" | |
| depends on SMP && BROKEN | |
| default n | |
| config NODES_SHIFT | |
| int | |
| default "1" | |
| depends on NEED_MULTIPLE_NODES | |
| endmenu | |
| menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)" | |
| config PCI | |
| bool "PCI support" | |
| depends on BROKEN | |
| default n | |
| help | |
| Find out whether you have a PCI motherboard. PCI is the name of a | |
| bus system, i.e. the way the CPU talks to the other stuff inside | |
| your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or | |
| VESA. If you have PCI, say Y, otherwise N. | |
| choice | |
| prompt "PCI access mode" | |
| depends on PCI | |
| default PCI_GOANY | |
| config PCI_GOBIOS | |
| bool "BIOS" | |
| ---help--- | |
| On PCI systems, the BIOS can be used to detect the PCI devices and | |
| determine their configuration. However, some old PCI motherboards | |
| have BIOS bugs and may crash if this is done. Also, some embedded | |
| PCI-based systems don't have any BIOS at all. Linux can also try to | |
| detect the PCI hardware directly without using the BIOS. | |
| With this option, you can specify how Linux should detect the PCI | |
| devices. If you choose "BIOS", the BIOS will be used, if you choose | |
| "Direct", the BIOS won't be used, and if you choose "Any", the | |
| kernel will try the direct access method and falls back to the BIOS | |
| if that doesn't work. If unsure, go with the default, which is | |
| "Any". | |
| config PCI_GODIRECT | |
| bool "Direct" | |
| config PCI_GOANY | |
| bool "Any" | |
| endchoice | |
| config PCI_BIOS | |
| bool | |
| depends on PCI && (PCI_GOBIOS || PCI_GOANY) | |
| default y | |
| config PCI_DIRECT | |
| bool | |
| depends on PCI && (PCI_GODIRECT || PCI_GOANY) | |
| default y | |
| source "drivers/pci/Kconfig" | |
| config ISA | |
| bool | |
| source "drivers/pcmcia/Kconfig" | |
| endmenu | |
| menu "Executable file formats" | |
| source "fs/Kconfig.binfmt" | |
| endmenu | |
| source "net/Kconfig" | |
| source "drivers/Kconfig" | |
| source "fs/Kconfig" | |
| source "arch/m32r/Kconfig.debug" | |
| source "security/Kconfig" | |
| source "crypto/Kconfig" | |
| source "lib/Kconfig" |