1# 2# For a description of the syntax of this configuration file, 3# see Documentation/kbuild/kconfig-language.txt. 4# 5config FRV 6 bool 7 default y 8 9config UID16 10 bool 11 default y 12 13config RWSEM_GENERIC_SPINLOCK 14 bool 15 default y 16 17config RWSEM_XCHGADD_ALGORITHM 18 bool 19 20config GENERIC_FIND_NEXT_BIT 21 bool 22 default y 23 24config GENERIC_CALIBRATE_DELAY 25 bool 26 default n 27 28config GENERIC_HARDIRQS 29 bool 30 default n 31 32mainmenu "Fujitsu FR-V Kernel Configuration" 33 34source "init/Kconfig" 35 36 37menu "Fujitsu FR-V system setup" 38 39config MMU 40 bool "MMU support" 41 help 42 This options switches on and off support for the FR-V MMU 43 (effectively switching between vmlinux and uClinux). Not all FR-V 44 CPUs support this. Currently only the FR451 has a sufficiently 45 featured MMU. 46 47config FRV_OUTOFLINE_ATOMIC_OPS 48 bool "Out-of-line the FRV atomic operations" 49 default n 50 help 51 Setting this option causes the FR-V atomic operations to be mostly 52 implemented out-of-line. 53 54 See Documentation/fujitsu/frv/atomic-ops.txt for more information. 55 56config HIGHMEM 57 bool "High memory support" 58 depends on MMU 59 default y 60 help 61 If you wish to use more than 256MB of memory with your MMU based 62 system, you will need to select this option. The kernel can only see 63 the memory between 0xC0000000 and 0xD0000000 directly... everything 64 else must be kmapped. 65 66 The arch is, however, capable of supporting up to 3GB of SDRAM. 67 68config HIGHPTE 69 bool "Allocate page tables in highmem" 70 depends on HIGHMEM 71 default y 72 help 73 The VM uses one page of memory for each page table. For systems 74 with a lot of RAM, this can be wasteful of precious low memory. 75 Setting this option will put user-space page tables in high memory. 76 77choice 78 prompt "uClinux kernel load address" 79 depends on !MMU 80 default UCPAGE_OFFSET_C0000000 81 help 82 This option sets the base address for the uClinux kernel. The kernel 83 will rearrange the SDRAM layout to start at this address, and move 84 itself to start there. It must be greater than 0, and it must be 85 sufficiently less than 0xE0000000 that the SDRAM does not intersect 86 the I/O region. 87 88 The base address must also be aligned such that the SDRAM controller 89 can decode it. For instance, a 512MB SDRAM bank must be 512MB aligned. 90 91config UCPAGE_OFFSET_20000000 92 bool "0x20000000" 93 94config UCPAGE_OFFSET_40000000 95 bool "0x40000000" 96 97config UCPAGE_OFFSET_60000000 98 bool "0x60000000" 99 100config UCPAGE_OFFSET_80000000 101 bool "0x80000000" 102 103config UCPAGE_OFFSET_A0000000 104 bool "0xA0000000" 105 106config UCPAGE_OFFSET_C0000000 107 bool "0xC0000000 (Recommended)" 108 109endchoice 110 111config PROTECT_KERNEL 112 bool "Protect core kernel against userspace" 113 depends on !MMU 114 default y 115 help 116 Selecting this option causes the uClinux kernel to change the 117 permittivity of DAMPR register covering the core kernel image to 118 prevent userspace accessing the underlying memory directly. 119 120choice 121 prompt "CPU Caching mode" 122 default FRV_DEFL_CACHE_WBACK 123 help 124 This option determines the default caching mode for the kernel. 125 126 Write-Back caching mode involves the all reads and writes causing 127 the affected cacheline to be read into the cache first before being 128 operated upon. Memory is not then updated by a write until the cache 129 is filled and a cacheline needs to be displaced from the cache to 130 make room. Only at that point is it written back. 131 132 Write-Behind caching is similar to Write-Back caching, except that a 133 write won't fetch a cacheline into the cache if there isn't already 134 one there; it will write directly to memory instead. 135 136 Write-Through caching only fetches cachelines from memory on a 137 read. Writes always get written directly to memory. If the affected 138 cacheline is also in cache, it will be updated too. 139 140 The final option is to turn of caching entirely. 141 142 Note that not all CPUs support Write-Behind caching. If the CPU on 143 which the kernel is running doesn't, it'll fall back to Write-Back 144 caching. 145 146config FRV_DEFL_CACHE_WBACK 147 bool "Write-Back" 148 149config FRV_DEFL_CACHE_WBEHIND 150 bool "Write-Behind" 151 152config FRV_DEFL_CACHE_WTHRU 153 bool "Write-Through" 154 155config FRV_DEFL_CACHE_DISABLED 156 bool "Disabled" 157 158endchoice 159 160menu "CPU core support" 161 162config CPU_FR401 163 bool "Include FR401 core support" 164 depends on !MMU 165 default y 166 help 167 This enables support for the FR401, FR401A and FR403 CPUs 168 169config CPU_FR405 170 bool "Include FR405 core support" 171 depends on !MMU 172 default y 173 help 174 This enables support for the FR405 CPU 175 176config CPU_FR451 177 bool "Include FR451 core support" 178 default y 179 help 180 This enables support for the FR451 CPU 181 182config CPU_FR451_COMPILE 183 bool "Specifically compile for FR451 core" 184 depends on CPU_FR451 && !CPU_FR401 && !CPU_FR405 && !CPU_FR551 185 default y 186 help 187 This causes appropriate flags to be passed to the compiler to 188 optimise for the FR451 CPU 189 190config CPU_FR551 191 bool "Include FR551 core support" 192 depends on !MMU 193 default y 194 help 195 This enables support for the FR555 CPU 196 197config CPU_FR551_COMPILE 198 bool "Specifically compile for FR551 core" 199 depends on CPU_FR551 && !CPU_FR401 && !CPU_FR405 && !CPU_FR451 200 default y 201 help 202 This causes appropriate flags to be passed to the compiler to 203 optimise for the FR555 CPU 204 205config FRV_L1_CACHE_SHIFT 206 int 207 default "5" if CPU_FR401 || CPU_FR405 || CPU_FR451 208 default "6" if CPU_FR551 209 210endmenu 211 212choice 213 prompt "System support" 214 default MB93091_VDK 215 216config MB93091_VDK 217 bool "MB93091 CPU board with or without motherboard" 218 219config MB93093_PDK 220 bool "MB93093 PDK unit" 221 222endchoice 223 224if MB93091_VDK 225choice 226 prompt "Motherboard support" 227 default MB93090_MB00 228 229config MB93090_MB00 230 bool "Use the MB93090-MB00 motherboard" 231 help 232 Select this option if the MB93091 CPU board is going to be used with 233 a MB93090-MB00 VDK motherboard 234 235config MB93091_NO_MB 236 bool "Use standalone" 237 help 238 Select this option if the MB93091 CPU board is going to be used 239 without a motherboard 240 241endchoice 242endif 243 244choice 245 prompt "GP-Relative data support" 246 default GPREL_DATA_8 247 help 248 This option controls what data, if any, should be placed in the GP 249 relative data sections. Using this means that the compiler can 250 generate accesses to the data using GR16-relative addressing which 251 is faster than absolute instructions and saves space (2 instructions 252 per access). 253 254 However, the GPREL region is limited in size because the immediate 255 value used in the load and store instructions is limited to a 12-bit 256 signed number. 257 258 So if the linker starts complaining that accesses to GPREL data are 259 out of range, try changing this option from the default. 260 261 Note that modules will always be compiled with this feature disabled 262 as the module data will not be in range of the GP base address. 263 264config GPREL_DATA_8 265 bool "Put data objects of up to 8 bytes into GP-REL" 266 267config GPREL_DATA_4 268 bool "Put data objects of up to 4 bytes into GP-REL" 269 270config GPREL_DATA_NONE 271 bool "Don't use GP-REL" 272 273endchoice 274 275config PCI 276 bool "Use PCI" 277 depends on MB93090_MB00 278 default y 279 help 280 Some FR-V systems (such as the MB93090-MB00 VDK) have PCI 281 onboard. If you have one of these boards and you wish to use the PCI 282 facilities, say Y here. 283 284 The PCI-HOWTO, available from 285 <http://www.tldp.org/docs.html#howto>, contains valuable 286 information about which PCI hardware does work under Linux and which 287 doesn't. 288 289config RESERVE_DMA_COHERENT 290 bool "Reserve DMA coherent memory" 291 depends on PCI && !MMU 292 default y 293 help 294 Many PCI drivers require access to uncached memory for DMA device 295 communications (such as is done with some Ethernet buffer rings). If 296 a fully featured MMU is available, this can be done through page 297 table settings, but if not, a region has to be set aside and marked 298 with a special DAMPR register. 299 300 Setting this option causes uClinux to set aside a portion of the 301 available memory for use in this manner. The memory will then be 302 unavailable for normal kernel use. 303 304source "drivers/pci/Kconfig" 305 306config PCMCIA 307 tristate "Use PCMCIA" 308 help 309 Say Y here if you want to attach PCMCIA- or PC-cards to your FR-V 310 board. These are credit-card size devices such as network cards, 311 modems or hard drives often used with laptops computers. There are 312 actually two varieties of these cards: the older 16 bit PCMCIA cards 313 and the newer 32 bit CardBus cards. If you want to use CardBus 314 cards, you need to say Y here and also to "CardBus support" below. 315 316 To use your PC-cards, you will need supporting software from David 317 Hinds pcmcia-cs package (see the file <file:Documentation/Changes> 318 for location). Please also read the PCMCIA-HOWTO, available from 319 <http://www.tldp.org/docs.html#howto>. 320 321 To compile this driver as modules, choose M here: the 322 modules will be called pcmcia_core and ds. 323 324#config MATH_EMULATION 325# bool "Math emulation support (EXPERIMENTAL)" 326# depends on EXPERIMENTAL 327# help 328# At some point in the future, this will cause floating-point math 329# instructions to be emulated by the kernel on machines that lack a 330# floating-point math coprocessor. Thrill-seekers and chronically 331# sleep-deprived psychotic hacker types can say Y now, everyone else 332# should probably wait a while. 333 334menu "Power management options" 335source kernel/power/Kconfig 336endmenu 337 338endmenu 339 340 341menu "Executable formats" 342 343source "fs/Kconfig.binfmt" 344 345endmenu 346 347source "drivers/Kconfig" 348 349source "fs/Kconfig" 350 351menu "Kernel hacking" 352 353config DEBUG_KERNEL 354 bool "Kernel debugging" 355 help 356 Say Y here if you are developing drivers or trying to debug and 357 identify kernel problems. 358 359config EARLY_PRINTK 360 bool "Early printk" 361 depends on EMBEDDED && DEBUG_KERNEL 362 default n 363 help 364 Write kernel log output directly into the VGA buffer or to a serial 365 port. 366 367 This is useful for kernel debugging when your machine crashes very 368 early before the console code is initialized. For normal operation 369 it is not recommended because it looks ugly and doesn't cooperate 370 with klogd/syslogd or the X server. You should normally N here, 371 unless you want to debug such a crash. 372 373config DEBUG_STACKOVERFLOW 374 bool "Check for stack overflows" 375 depends on DEBUG_KERNEL 376 377config DEBUG_SLAB 378 bool "Debug memory allocations" 379 depends on DEBUG_KERNEL 380 help 381 Say Y here to have the kernel do limited verification on memory 382 allocation as well as poisoning memory on free to catch use of freed 383 memory. 384 385config MAGIC_SYSRQ 386 bool "Magic SysRq key" 387 depends on DEBUG_KERNEL 388 help 389 If you say Y here, you will have some control over the system even 390 if the system crashes for example during kernel debugging (e.g., you 391 will be able to flush the buffer cache to disk, reboot the system 392 immediately or dump some status information). This is accomplished 393 by pressing various keys while holding SysRq (Alt+PrintScreen). It 394 also works on a serial console (on PC hardware at least), if you 395 send a BREAK and then within 5 seconds a command keypress. The 396 keys are documented in <file:Documentation/sysrq.txt>. Don't say Y 397 unless you really know what this hack does. 398 399config DEBUG_SPINLOCK 400 bool "Spinlock debugging" 401 depends on DEBUG_KERNEL 402 help 403 Say Y here and build SMP to catch missing spinlock initialization 404 and certain other kinds of spinlock errors commonly made. This is 405 best used in conjunction with the NMI watchdog so that spinlock 406 deadlocks are also debuggable. 407 408config DEBUG_SPINLOCK_SLEEP 409 bool "Sleep-inside-spinlock checking" 410 depends on DEBUG_KERNEL 411 help 412 If you say Y here, various routines which may sleep will become very 413 noisy if they are called with a spinlock held. 414 415config DEBUG_PAGEALLOC 416 bool "Page alloc debugging" 417 depends on DEBUG_KERNEL 418 help 419 Unmap pages from the kernel linear mapping after free_pages(). 420 This results in a large slowdown, but helps to find certain types 421 of memory corruptions. 422 423config DEBUG_HIGHMEM 424 bool "Highmem debugging" 425 depends on DEBUG_KERNEL && HIGHMEM 426 help 427 This options enables addition error checking for high memory systems. 428 Disable for production systems. 429 430config DEBUG_INFO 431 bool "Compile the kernel with debug info" 432 depends on DEBUG_KERNEL 433 help 434 If you say Y here the resulting kernel image will include 435 debugging info resulting in a larger kernel image. 436 Say Y here only if you plan to use gdb to debug the kernel. 437 If you don't debug the kernel, you can say N. 438 439config DEBUG_BUGVERBOSE 440 bool "Verbose BUG() reporting" 441 depends on DEBUG_KERNEL 442 443config FRAME_POINTER 444 bool "Compile the kernel with frame pointers" 445 depends on DEBUG_KERNEL 446 help 447 If you say Y here the resulting kernel image will be slightly larger 448 and slower, but it will give very useful debugging information. 449 If you don't debug the kernel, you can say N, but we may not be able 450 to solve problems without frame pointers. 451 452config GDBSTUB 453 bool "Remote GDB kernel debugging" 454 depends on DEBUG_KERNEL 455 select DEBUG_INFO 456 select FRAME_POINTER 457 help 458 If you say Y here, it will be possible to remotely debug the kernel 459 using gdb. This enlarges your kernel ELF image disk size by several 460 megabytes and requires a machine with more than 16 MB, better 32 MB 461 RAM to avoid excessive linking time. This is only useful for kernel 462 hackers. If unsure, say N. 463 464choice 465 prompt "GDB stub port" 466 default GDBSTUB_UART1 467 depends on GDBSTUB 468 help 469 Select the on-CPU port used for GDB-stub 470 471config GDBSTUB_UART0 472 bool "/dev/ttyS0" 473 474config GDBSTUB_UART1 475 bool "/dev/ttyS1" 476 477endchoice 478 479config GDBSTUB_IMMEDIATE 480 bool "Break into GDB stub immediately" 481 depends on GDBSTUB 482 help 483 If you say Y here, GDB stub will break into the program as soon as 484 possible, leaving the program counter at the beginning of 485 start_kernel() in init/main.c. 486 487config GDB_CONSOLE 488 bool "Console output to GDB" 489 depends on KGDB 490 help 491 If you are using GDB for remote debugging over a serial port and 492 would like kernel messages to be formatted into GDB $O packets so 493 that GDB prints them as program output, say 'Y'. 494 495endmenu 496 497source "security/Kconfig" 498 499source "crypto/Kconfig" 500 501source "lib/Kconfig" 502

