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