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 GENERIC_IRQ_PROBE 14 select GENERIC_IRQ_SHOW 15 select GENERIC_ATOMIC64 16 select ARCH_USES_GETTIMEOFFSET 17 select MODULES_USE_ELF_RELA 18 19config SBUS 20 bool 21 22config GENERIC_ISA_DMA 23 bool 24 default y 25 26config ZONE_DMA 27 bool 28 default y 29 30config NO_IOPORT 31 def_bool y 32 33config NO_DMA 34 def_bool y 35 36config HZ 37 int 38 default 100 39 40source "init/Kconfig" 41 42source "kernel/Kconfig.freezer" 43 44 45menu "Processor type and features" 46 47choice 48 prompt "Platform Type" 49 default PLAT_MAPPI 50 51config PLAT_MAPPI 52 bool "Mappi-I" 53 help 54 The Mappi-I is an FPGA board for SOC (System-On-a-Chip) prototyping. 55 You can operate a Linux system on this board by using an M32R 56 softmacro core, which is a fully-synthesizable functional model 57 described in Verilog-HDL. 58 59 The Mappi-I board was the first platform, which had been used 60 to port and develop a Linux system for the M32R processor. 61 Currently, the Mappi-II, an heir to the Mappi-I, is available. 62 63config PLAT_USRV 64 bool "uServer" 65 select PLAT_HAS_INT1ICU 66 67config PLAT_M32700UT 68 bool "M32700UT" 69 select PLAT_HAS_INT0ICU 70 select PLAT_HAS_INT1ICU 71 select PLAT_HAS_INT2ICU 72 help 73 The M3T-M32700UT is an evaluation board based on uT-Engine 74 specification. This board has an M32700 (Chaos) evaluation chip. 75 You can say Y for SMP, because the M32700 is a single chip 76 multiprocessor. 77 78config PLAT_OPSPUT 79 bool "OPSPUT" 80 select PLAT_HAS_INT0ICU 81 select PLAT_HAS_INT1ICU 82 select PLAT_HAS_INT2ICU 83 help 84 The OPSPUT is an evaluation board based on uT-Engine 85 specification. This board has a OPSP-REP chip. 86 87config PLAT_OAKS32R 88 bool "OAKS32R" 89 help 90 The OAKS32R is a tiny, inexpensive evaluation board. 91 Please note that if you say Y here and choose chip "M32102", 92 say N for MMU and select a no-MMU version kernel, otherwise 93 a kernel with MMU support will not work, because the M32102 94 is a microcontroller for embedded systems and it has no MMU. 95 96config PLAT_MAPPI2 97 bool "Mappi-II(M3A-ZA36/M3A-ZA52)" 98 99config PLAT_MAPPI3 100 bool "Mappi-III(M3A-2170)" 101 102config PLAT_M32104UT 103 bool "M32104UT" 104 select PLAT_HAS_INT1ICU 105 help 106 The M3T-M32104UT is an reference board based on uT-Engine 107 specification. This board has a M32104 chip. 108 109endchoice 110 111choice 112 prompt "Processor family" 113 default CHIP_M32700 114 115config CHIP_M32700 116 bool "M32700 (Chaos)" 117 118config CHIP_M32102 119 bool "M32102" 120 121config CHIP_M32104 122 bool "M32104" 123 depends on PLAT_M32104UT 124 125config CHIP_VDEC2 126 bool "VDEC2" 127 128config CHIP_OPSP 129 bool "OPSP" 130 131endchoice 132 133config MMU 134 bool "Support for memory management hardware" 135 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP 136 default y 137 138config TLB_ENTRIES 139 int "TLB Entries" 140 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP 141 default 32 if CHIP_M32700 || CHIP_OPSP 142 default 16 if CHIP_VDEC2 143 144 145config ISA_M32R 146 bool 147 depends on CHIP_M32102 || CHIP_M32104 148 default y 149 150config ISA_M32R2 151 bool 152 depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP 153 default y 154 155config ISA_DSP_LEVEL2 156 bool 157 depends on CHIP_M32700 || CHIP_OPSP 158 default y 159 160config ISA_DUAL_ISSUE 161 bool 162 depends on CHIP_M32700 || CHIP_OPSP 163 default y 164 165config PLAT_HAS_INT0ICU 166 bool 167 default n 168 169config PLAT_HAS_INT1ICU 170 bool 171 default n 172 173config PLAT_HAS_INT2ICU 174 bool 175 default n 176 177config BUS_CLOCK 178 int "Bus Clock [Hz] (integer)" 179 default "70000000" if PLAT_MAPPI 180 default "25000000" if PLAT_USRV 181 default "50000000" if PLAT_MAPPI3 182 default "50000000" if PLAT_M32700UT 183 default "50000000" if PLAT_OPSPUT 184 default "54000000" if PLAT_M32104UT 185 default "33333333" if PLAT_OAKS32R 186 default "20000000" if PLAT_MAPPI2 187 188config TIMER_DIVIDE 189 int "Timer divider (integer)" 190 default "128" 191 192config CPU_LITTLE_ENDIAN 193 bool "Generate little endian code" 194 default n 195 196config MEMORY_START 197 hex "Physical memory start address (hex)" 198 default "08000000" if PLAT_MAPPI || PLAT_MAPPI2 || PLAT_MAPPI3 199 default "08000000" if PLAT_USRV 200 default "08000000" if PLAT_M32700UT 201 default "08000000" if PLAT_OPSPUT 202 default "04000000" if PLAT_M32104UT 203 default "01000000" if PLAT_OAKS32R 204 205config MEMORY_SIZE 206 hex "Physical memory size (hex)" 207 default "08000000" if PLAT_MAPPI3 208 default "04000000" if PLAT_MAPPI || PLAT_MAPPI2 209 default "02000000" if PLAT_USRV 210 default "01000000" if PLAT_M32700UT 211 default "01000000" if PLAT_OPSPUT 212 default "01000000" if PLAT_M32104UT 213 default "00800000" if PLAT_OAKS32R 214 215config ARCH_DISCONTIGMEM_ENABLE 216 bool "Internal RAM Support" 217 depends on CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104 218 default y 219 220source "mm/Kconfig" 221 222config IRAM_START 223 hex "Internal memory start address (hex)" 224 default "00f00000" if !CHIP_M32104 225 default "00700000" if CHIP_M32104 226 depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM 227 228config IRAM_SIZE 229 hex "Internal memory size (hex)" 230 depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM 231 default "00080000" if CHIP_M32700 232 default "00010000" if CHIP_M32102 || CHIP_OPSP || CHIP_M32104 233 default "00008000" if CHIP_VDEC2 234 235# 236# Define implied options from the CPU selection here 237# 238 239config GENERIC_LOCKBREAK 240 bool 241 default y 242 depends on SMP && PREEMPT 243 244config RWSEM_GENERIC_SPINLOCK 245 bool 246 depends on M32R 247 default y 248 249config RWSEM_XCHGADD_ALGORITHM 250 bool 251 default n 252 253config ARCH_HAS_ILOG2_U32 254 bool 255 default n 256 257config ARCH_HAS_ILOG2_U64 258 bool 259 default n 260 261config GENERIC_HWEIGHT 262 bool 263 default y 264 265config GENERIC_CALIBRATE_DELAY 266 bool 267 default y 268 269config SCHED_OMIT_FRAME_POINTER 270 bool 271 default y 272 273source "kernel/Kconfig.preempt" 274 275config SMP 276 bool "Symmetric multi-processing support" 277 select USE_GENERIC_SMP_HELPERS 278 ---help--- 279 This enables support for systems with more than one CPU. If you have 280 a system with only one CPU, like most personal computers, say N. If 281 you have a system with more than one CPU, say Y. 282 283 If you say N here, the kernel will run on single 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 singleprocessor machines. On a singleprocessor 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

