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