1# 2# For a description of the syntax of this configuration file, 3# see Documentation/kbuild/kconfig-language.txt. 4# 5 6mainmenu "Linux/M32R Kernel Configuration" 7 8config M32R 9 bool 10 default y 11 12config SBUS 13 bool 14 15config UID16 16 bool 17 default n 18 19config GENERIC_ISA_DMA 20 bool 21 default y 22 23config GENERIC_HARDIRQS 24 bool 25 default y 26 27config GENERIC_IRQ_PROBE 28 bool 29 default y 30 31source "init/Kconfig" 32 33 34menu "Processor type and features" 35 36choice 37 prompt "Platform Type" 38 default PLAT_MAPPI 39 40config PLAT_MAPPI 41 bool "Mappi-I" 42 help 43 The Mappi-I is an FPGA board for SOC (System-On-a-Chip) prototyping. 44 You can operate a Linux system on this board by using an M32R 45 softmacro core, which is a fully-synthesizable functional model 46 described in Verilog-HDL. 47 48 The Mappi-I board was the first platform, which had been used 49 to port and develop a Linux system for the M32R processor. 50 Currently, the Mappi-II, an heir to the Mappi-I, is available. 51 52config PLAT_USRV 53 bool "uServer" 54 55config PLAT_M32700UT 56 bool "M32700UT" 57 help 58 The M3T-M32700UT is an evaluation board based on uT-Engine 59 specification. This board has an M32700 (Chaos) evaluation chip. 60 You can say Y for SMP, because the M32700 is a single chip 61 multiprocessor. 62 63config PLAT_OPSPUT 64 bool "OPSPUT" 65 help 66 The OPSPUT is an evaluation board based on uT-Engine 67 specification. This board has a OPSP-REP chip. 68 69config PLAT_OAKS32R 70 bool "OAKS32R" 71 help 72 The OAKS32R is a tiny, inexpensive evaluation board. 73 Please note that if you say Y here and choose chip "M32102", 74 say N for MMU and select a no-MMU version kernel, otherwise 75 a kernel with MMU support will not work, because the M32102 76 is a microcontroller for embedded systems and it has no MMU. 77 78config PLAT_MAPPI2 79 bool "Mappi-II(M3A-ZA36/M3A-ZA52)" 80 81endchoice 82 83choice 84 prompt "Processor family" 85 default CHIP_M32700 86 87config CHIP_M32700 88 bool "M32700 (Chaos)" 89 90config CHIP_M32102 91 bool "M32102" 92 93config CHIP_VDEC2 94 bool "VDEC2" 95 96config CHIP_OPSP 97 bool "OPSP" 98 99endchoice 100 101config MMU 102 bool "Support for memory management hardware" 103 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP 104 default y 105 106config TLB_ENTRIES 107 int "TLB Entries" 108 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP 109 default 32 if CHIP_M32700 || CHIP_OPSP 110 default 16 if CHIP_VDEC2 111 112 113config ISA_M32R 114 bool 115 depends on CHIP_M32102 116 default y 117 118config ISA_M32R2 119 bool 120 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP 121 default y 122 123config ISA_DSP_LEVEL2 124 bool 125 depends on CHIP_M32700 || CHIP_OPSP 126 default y 127 128config ISA_DUAL_ISSUE 129 bool 130 depends on CHIP_M32700 || CHIP_OPSP 131 default y 132 133config BUS_CLOCK 134 int "Bus Clock [Hz] (integer)" 135 default "70000000" if PLAT_MAPPI 136 default "25000000" if PLAT_USRV 137 default "50000000" if PLAT_M32700UT 138 default "50000000" if PLAT_OPSPUT 139 default "33333333" if PLAT_OAKS32R 140 default "20000000" if PLAT_MAPPI2 141 142config TIMER_DIVIDE 143 int "Timer divider (integer)" 144 default "128" 145 146config CPU_LITTLE_ENDIAN 147 bool "Generate little endian code" 148 default n 149 150config MEMORY_START 151 hex "Physical memory start address (hex)" 152 default "08000000" if PLAT_MAPPI || PLAT_MAPPI2 153 default "08000000" if PLAT_USRV 154 default "08000000" if PLAT_M32700UT 155 default "08000000" if PLAT_OPSPUT 156 default "01000000" if PLAT_OAKS32R 157 158config MEMORY_SIZE 159 hex "Physical memory size (hex)" 160 default "04000000" if PLAT_MAPPI || PLAT_MAPPI2 161 default "02000000" if PLAT_USRV 162 default "01000000" if PLAT_M32700UT 163 default "01000000" if PLAT_OPSPUT 164 default "00800000" if PLAT_OAKS32R 165 166config NOHIGHMEM 167 bool 168 default y 169 170config DISCONTIGMEM 171 bool "Internal RAM Support" 172 depends on CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP 173 default y 174 175config IRAM_START 176 hex "Internal memory start address (hex)" 177 default "00f00000" 178 depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP) && DISCONTIGMEM 179 180config IRAM_SIZE 181 hex "Internal memory size (hex)" 182 depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP) && DISCONTIGMEM 183 default "00080000" if CHIP_M32700 184 default "00010000" if CHIP_M32102 || CHIP_OPSP 185 default "00008000" if CHIP_VDEC2 186 187# 188# Define implied options from the CPU selection here 189# 190 191config RWSEM_GENERIC_SPINLOCK 192 bool 193 depends on M32R 194 default y 195 196config RWSEM_XCHGADD_ALGORITHM 197 bool 198 default n 199 200config GENERIC_CALIBRATE_DELAY 201 bool 202 default y 203 204config PREEMPT 205 bool "Preemptible Kernel" 206 help 207 This option reduces the latency of the kernel when reacting to 208 real-time or interactive events by allowing a low priority process to 209 be preempted even if it is in kernel mode executing a system call. 210 This allows applications to run more reliably even when the system is 211 under load. 212 213 Say Y here if you are building a kernel for a desktop, embedded 214 or real-time system. Say N if you are unsure. 215 216config HAVE_DEC_LOCK 217 bool 218 depends on (SMP || PREEMPT) 219 default n 220 221config SMP 222 bool "Symmetric multi-processing support" 223 ---help--- 224 This enables support for systems with more than one CPU. If you have 225 a system with only one CPU, like most personal computers, say N. If 226 you have a system with more than one CPU, say Y. 227 228 If you say N here, the kernel will run on single and multiprocessor 229 machines, but will use only one CPU of a multiprocessor machine. If 230 you say Y here, the kernel will run on many, but not all, 231 singleprocessor machines. On a singleprocessor machine, the kernel 232 will run faster if you say N here. 233 234 People using multiprocessor machines who say Y here should also say 235 Y to "Enhanced Real Time Clock Support", below. The "Advanced Power 236 Management" code will be disabled if you say Y here. 237 238 See also the <file:Documentation/smp.tex>, 239 <file:Documentation/smp.txt> and the SMP-HOWTO available at 240 <http://www.linuxdoc.org/docs.html#howto>. 241 242 If you don't know what to do here, say N. 243 244config CHIP_M32700_TS1 245 bool "Workaround code for the M32700 TS1 chip's bug" 246 depends on (CHIP_M32700 && SMP) 247 default n 248 249config NR_CPUS 250 int "Maximum number of CPUs (2-32)" 251 range 2 32 252 depends on SMP 253 default "2" 254 help 255 This allows you to specify the maximum number of CPUs which this 256 kernel will support. The maximum supported value is 32 and the 257 minimum value which makes sense is 2. 258 259 This is purely to save memory - each supported CPU adds 260 approximately eight kilobytes to the kernel image. 261 262# Common NUMA Features 263config NUMA 264 bool "Numa Memory Allocation Support" 265 depends on SMP 266 default n 267 268# turning this on wastes a bunch of space. 269# Summit needs it only when NUMA is on 270config BOOT_IOREMAP 271 bool 272 depends on NUMA 273 default n 274 275endmenu 276 277 278menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)" 279 280config PCI 281 bool "PCI support" 282 default n 283 help 284 Find out whether you have a PCI motherboard. PCI is the name of a 285 bus system, i.e. the way the CPU talks to the other stuff inside 286 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or 287 VESA. If you have PCI, say Y, otherwise N. 288 289 The PCI-HOWTO, available from 290 <http://www.linuxdoc.org/docs.html#howto>, contains valuable 291 information about which PCI hardware does work under Linux and which 292 doesn't. 293 294choice 295 prompt "PCI access mode" 296 depends on PCI 297 default PCI_GOANY 298 299config PCI_GOBIOS 300 bool "BIOS" 301 ---help--- 302 On PCI systems, the BIOS can be used to detect the PCI devices and 303 determine their configuration. However, some old PCI motherboards 304 have BIOS bugs and may crash if this is done. Also, some embedded 305 PCI-based systems don't have any BIOS at all. Linux can also try to 306 detect the PCI hardware directly without using the BIOS. 307 308 With this option, you can specify how Linux should detect the PCI 309 devices. If you choose "BIOS", the BIOS will be used, if you choose 310 "Direct", the BIOS won't be used, and if you choose "Any", the 311 kernel will try the direct access method and falls back to the BIOS 312 if that doesn't work. If unsure, go with the default, which is 313 "Any". 314 315config PCI_GODIRECT 316 bool "Direct" 317 318config PCI_GOANY 319 bool "Any" 320 321endchoice 322 323config PCI_BIOS 324 bool 325 depends on PCI && (PCI_GOBIOS || PCI_GOANY) 326 default y 327 328config PCI_DIRECT 329 bool 330 depends on PCI && (PCI_GODIRECT || PCI_GOANY) 331 default y 332 333source "drivers/pci/Kconfig" 334 335config ISA 336 bool "ISA support" 337 help 338 Find out whether you have ISA slots on your motherboard. ISA is the 339 name of a bus system, i.e. the way the CPU talks to the other stuff 340 inside your box. If you have ISA, say Y, otherwise N. 341 342source "drivers/pcmcia/Kconfig" 343 344source "drivers/pci/hotplug/Kconfig" 345 346endmenu 347 348 349menu "Executable file formats" 350 351source "fs/Kconfig.binfmt" 352 353endmenu 354 355source "drivers/Kconfig" 356 357source "fs/Kconfig" 358 359source "arch/m32r/oprofile/Kconfig" 360 361source "arch/m32r/Kconfig.debug" 362 363source "security/Kconfig" 364 365source "crypto/Kconfig" 366 367source "lib/Kconfig" 368

