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 HAVE_GENERIC_HARDIRQS 13 select VIRT_TO_BUS 14 select GENERIC_IRQ_PROBE 15 select GENERIC_IRQ_SHOW 16 select GENERIC_ATOMIC64 17 select ARCH_USES_GETTIMEOFFSET 18 select MODULES_USE_ELF_RELA 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 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 select USE_GENERIC_SMP_HELPERS 279 ---help--- 280 This enables support for systems with more than one CPU. If you have 281 a system with only one CPU, like most personal computers, say N. If 282 you have a system with more than one CPU, say Y. 283 284 If you say N here, the kernel will run on single and multiprocessor 285 machines, but will use only one CPU of a multiprocessor machine. If 286 you say Y here, the kernel will run on many, but not all, 287 singleprocessor machines. On a singleprocessor machine, the kernel 288 will run faster if you say N here. 289 290 People using multiprocessor machines who say Y here should also say 291 Y to "Enhanced Real Time Clock Support", below. The "Advanced Power 292 Management" code will be disabled if you say Y here. 293 294 See also the SMP-HOWTO available at 295 <http://tldp.org/HOWTO/SMP-HOWTO.html>. 296 297 If you don't know what to do here, say N. 298 299config CHIP_M32700_TS1 300 bool "Workaround code for the M32700 TS1 chip's bug" 301 depends on (CHIP_M32700 && SMP) 302 default n 303 304config NR_CPUS 305 int "Maximum number of CPUs (2-32)" 306 range 2 32 307 depends on SMP 308 default "2" 309 help 310 This allows you to specify the maximum number of CPUs which this 311 kernel will support. The maximum supported value is 32 and the 312 minimum value which makes sense is 2. 313 314 This is purely to save memory - each supported CPU adds 315 approximately eight kilobytes to the kernel image. 316 317# Common NUMA Features 318config NUMA 319 bool "Numa Memory Allocation Support" 320 depends on SMP && BROKEN 321 default n 322 323config NODES_SHIFT 324 int 325 default "1" 326 depends on NEED_MULTIPLE_NODES 327 328endmenu 329 330 331menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)" 332 333config PCI 334 bool "PCI support" 335 depends on BROKEN 336 default n 337 help 338 Find out whether you have a PCI motherboard. PCI is the name of a 339 bus system, i.e. the way the CPU talks to the other stuff inside 340 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or 341 VESA. If you have PCI, say Y, otherwise N. 342 343choice 344 prompt "PCI access mode" 345 depends on PCI 346 default PCI_GOANY 347 348config PCI_GOBIOS 349 bool "BIOS" 350 ---help--- 351 On PCI systems, the BIOS can be used to detect the PCI devices and 352 determine their configuration. However, some old PCI motherboards 353 have BIOS bugs and may crash if this is done. Also, some embedded 354 PCI-based systems don't have any BIOS at all. Linux can also try to 355 detect the PCI hardware directly without using the BIOS. 356 357 With this option, you can specify how Linux should detect the PCI 358 devices. If you choose "BIOS", the BIOS will be used, if you choose 359 "Direct", the BIOS won't be used, and if you choose "Any", the 360 kernel will try the direct access method and falls back to the BIOS 361 if that doesn't work. If unsure, go with the default, which is 362 "Any". 363 364config PCI_GODIRECT 365 bool "Direct" 366 367config PCI_GOANY 368 bool "Any" 369 370endchoice 371 372config PCI_BIOS 373 bool 374 depends on PCI && (PCI_GOBIOS || PCI_GOANY) 375 default y 376 377config PCI_DIRECT 378 bool 379 depends on PCI && (PCI_GODIRECT || PCI_GOANY) 380 default y 381 382source "drivers/pci/Kconfig" 383 384config ISA 385 bool 386 387source "drivers/pcmcia/Kconfig" 388 389source "drivers/pci/hotplug/Kconfig" 390 391endmenu 392 393 394menu "Executable file formats" 395 396source "fs/Kconfig.binfmt" 397 398endmenu 399 400source "net/Kconfig" 401 402source "drivers/Kconfig" 403 404source "fs/Kconfig" 405 406source "arch/m32r/Kconfig.debug" 407 408source "security/Kconfig" 409 410source "crypto/Kconfig" 411 412source "lib/Kconfig" 413