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