|  | # | 
|  | # For a description of the syntax of this configuration file, | 
|  | # see Documentation/kbuild/kconfig-language.txt. | 
|  | # | 
|  |  | 
|  | mainmenu "Linux/M32R Kernel Configuration" | 
|  |  | 
|  | config M32R | 
|  | bool | 
|  | default y | 
|  |  | 
|  | config SBUS | 
|  | bool | 
|  |  | 
|  | config GENERIC_ISA_DMA | 
|  | bool | 
|  | default y | 
|  |  | 
|  | config GENERIC_HARDIRQS | 
|  | bool | 
|  | default y | 
|  |  | 
|  | config GENERIC_IRQ_PROBE | 
|  | bool | 
|  | default y | 
|  |  | 
|  | source "init/Kconfig" | 
|  |  | 
|  |  | 
|  | 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" | 
|  |  | 
|  | config PLAT_M32700UT | 
|  | bool "M32700UT" | 
|  | 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" | 
|  | 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" | 
|  | 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 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_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 NOHIGHMEM | 
|  | bool | 
|  | default y | 
|  |  | 
|  | 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 RWSEM_GENERIC_SPINLOCK | 
|  | bool | 
|  | depends on M32R | 
|  | default y | 
|  |  | 
|  | config RWSEM_XCHGADD_ALGORITHM | 
|  | bool | 
|  | default n | 
|  |  | 
|  | config GENERIC_FIND_NEXT_BIT | 
|  | bool | 
|  | default y | 
|  |  | 
|  | config GENERIC_HWEIGHT | 
|  | bool | 
|  | default y | 
|  |  | 
|  | config GENERIC_CALIBRATE_DELAY | 
|  | bool | 
|  | default y | 
|  |  | 
|  | config PREEMPT | 
|  | bool "Preemptible Kernel" | 
|  | help | 
|  | This option reduces the latency of the kernel when reacting to | 
|  | real-time or interactive events by allowing a low priority process to | 
|  | be preempted even if it is in kernel mode executing a system call. | 
|  | This allows applications to run more reliably even when the system is | 
|  | under load. | 
|  |  | 
|  | Say Y here if you are building a kernel for a desktop, embedded | 
|  | or real-time system.  Say N if you are unsure. | 
|  |  | 
|  | config SMP | 
|  | bool "Symmetric multi-processing support" | 
|  | ---help--- | 
|  | This enables support for systems with more than one CPU. If you have | 
|  | a system with only one CPU, like most personal computers, say N. If | 
|  | you have a system with more than one CPU, say Y. | 
|  |  | 
|  | If you say N here, the kernel will run on single 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, | 
|  | singleprocessor machines. On a singleprocessor 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 <file:Documentation/smp.txt>, | 
|  | and the SMP-HOWTO available at | 
|  | <http://www.linuxdoc.org/docs.html#howto>. | 
|  |  | 
|  | 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 | 
|  |  | 
|  | # turning this on wastes a bunch of space. | 
|  | # Summit needs it only when NUMA is on | 
|  | config BOOT_IOREMAP | 
|  | bool | 
|  | depends on NUMA | 
|  | default n | 
|  |  | 
|  | 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. | 
|  |  | 
|  | The PCI-HOWTO, available from | 
|  | <http://www.linuxdoc.org/docs.html#howto>, contains valuable | 
|  | information about which PCI hardware does work under Linux and which | 
|  | doesn't. | 
|  |  | 
|  | 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 "ISA support" | 
|  | help | 
|  | Find out whether you have ISA slots on your motherboard.  ISA is the | 
|  | name of a bus system, i.e. the way the CPU talks to the other stuff | 
|  | inside your box.  If you have ISA, say Y, otherwise N. | 
|  |  | 
|  | source "drivers/pcmcia/Kconfig" | 
|  |  | 
|  | source "drivers/pci/hotplug/Kconfig" | 
|  |  | 
|  | endmenu | 
|  |  | 
|  |  | 
|  | menu "Executable file formats" | 
|  |  | 
|  | source "fs/Kconfig.binfmt" | 
|  |  | 
|  | endmenu | 
|  |  | 
|  | source "net/Kconfig" | 
|  |  | 
|  | source "drivers/Kconfig" | 
|  |  | 
|  | source "fs/Kconfig" | 
|  |  | 
|  | source "arch/m32r/oprofile/Kconfig" | 
|  |  | 
|  | source "arch/m32r/Kconfig.debug" | 
|  |  | 
|  | source "security/Kconfig" | 
|  |  | 
|  | source "crypto/Kconfig" | 
|  |  | 
|  | source "lib/Kconfig" |