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

