1# For a description of the syntax of this configuration file, 2# see Documentation/kbuild/kconfig-language.txt. 3# 4 5mainmenu "Linux/PowerPC Kernel Configuration" 6 7config PPC64 8 bool "64-bit kernel" 9 default n 10 help 11 This option selects whether a 32-bit or a 64-bit kernel 12 will be built. 13 14config PPC32 15 bool 16 default y if !PPC64 17 18config 64BIT 19 bool 20 default y if PPC64 21 22config PPC_MERGE 23 def_bool y 24 25config MMU 26 bool 27 default y 28 29config UID16 30 bool 31 32config GENERIC_HARDIRQS 33 bool 34 default y 35 36config RWSEM_GENERIC_SPINLOCK 37 bool 38 39config RWSEM_XCHGADD_ALGORITHM 40 bool 41 default y 42 43config GENERIC_CALIBRATE_DELAY 44 bool 45 default y 46 47config PPC 48 bool 49 default y 50 51config EARLY_PRINTK 52 bool 53 default y if PPC64 54 55config COMPAT 56 bool 57 default y if PPC64 58 59config SYSVIPC_COMPAT 60 bool 61 depends on COMPAT && SYSVIPC 62 default y 63 64# All PPC32s use generic nvram driver through ppc_md 65config GENERIC_NVRAM 66 bool 67 default y if PPC32 68 69config SCHED_NO_NO_OMIT_FRAME_POINTER 70 bool 71 default y 72 73config ARCH_MAY_HAVE_PC_FDC 74 bool 75 default y 76 77menu "Processor support" 78choice 79 prompt "Processor Type" 80 depends on PPC32 81 default 6xx 82 83config 6xx 84 bool "6xx/7xx/74xx" 85 select PPC_FPU 86 help 87 There are four families of PowerPC chips supported. The more common 88 types (601, 603, 604, 740, 750, 7400), the Motorola embedded 89 versions (821, 823, 850, 855, 860, 52xx, 82xx, 83xx), the AMCC 90 embedded versions (403 and 405) and the high end 64 bit Power 91 processors (POWER 3, POWER4, and IBM PPC970 also known as G5). 92 93 Unless you are building a kernel for one of the embedded processor 94 systems, 64 bit IBM RS/6000 or an Apple G5, choose 6xx. 95 Note that the kernel runs in 32-bit mode even on 64-bit chips. 96 97config PPC_52xx 98 bool "Freescale 52xx" 99 100config PPC_82xx 101 bool "Freescale 82xx" 102 103config PPC_83xx 104 bool "Freescale 83xx" 105 106config 40x 107 bool "AMCC 40x" 108 109config 44x 110 bool "AMCC 44x" 111 112config 8xx 113 bool "Freescale 8xx" 114 115config E200 116 bool "Freescale e200" 117 118config E500 119 bool "Freescale e500" 120endchoice 121 122config POWER4_ONLY 123 bool "Optimize for POWER4" 124 depends on PPC64 125 default n 126 ---help--- 127 Cause the compiler to optimize for POWER4/POWER5/PPC970 processors. 128 The resulting binary will not work on POWER3 or RS64 processors 129 when compiled with binutils 2.15 or later. 130 131config POWER3 132 bool 133 depends on PPC64 134 default y if !POWER4_ONLY 135 136config POWER4 137 depends on PPC64 138 def_bool y 139 140config PPC_FPU 141 bool 142 default y if PPC64 143 144config BOOKE 145 bool 146 depends on E200 || E500 147 default y 148 149config FSL_BOOKE 150 bool 151 depends on E200 || E500 152 default y 153 154config PTE_64BIT 155 bool 156 depends on 44x || E500 157 default y if 44x 158 default y if E500 && PHYS_64BIT 159 160config PHYS_64BIT 161 bool 'Large physical address support' if E500 162 depends on 44x || E500 163 default y if 44x 164 ---help--- 165 This option enables kernel support for larger than 32-bit physical 166 addresses. This features is not be available on all e500 cores. 167 168 If in doubt, say N here. 169 170config ALTIVEC 171 bool "AltiVec Support" 172 depends on 6xx || POWER4 173 ---help--- 174 This option enables kernel support for the Altivec extensions to the 175 PowerPC processor. The kernel currently supports saving and restoring 176 altivec registers, and turning on the 'altivec enable' bit so user 177 processes can execute altivec instructions. 178 179 This option is only usefully if you have a processor that supports 180 altivec (G4, otherwise known as 74xx series), but does not have 181 any affect on a non-altivec cpu (it does, however add code to the 182 kernel). 183 184 If in doubt, say Y here. 185 186config SPE 187 bool "SPE Support" 188 depends on E200 || E500 189 ---help--- 190 This option enables kernel support for the Signal Processing 191 Extensions (SPE) to the PowerPC processor. The kernel currently 192 supports saving and restoring SPE registers, and turning on the 193 'spe enable' bit so user processes can execute SPE instructions. 194 195 This option is only useful if you have a processor that supports 196 SPE (e500, otherwise known as 85xx series), but does not have any 197 effect on a non-spe cpu (it does, however add code to the kernel). 198 199 If in doubt, say Y here. 200 201config PPC_STD_MMU 202 bool 203 depends on 6xx || POWER3 || POWER4 || PPC64 204 default y 205 206config PPC_STD_MMU_32 207 def_bool y 208 depends on PPC_STD_MMU && PPC32 209 210config SMP 211 depends on PPC_STD_MMU 212 bool "Symmetric multi-processing support" 213 ---help--- 214 This enables support for systems with more than one CPU. If you have 215 a system with only one CPU, say N. If you have a system with more 216 than one CPU, say Y. Note that the kernel does not currently 217 support SMP machines with 603/603e/603ev or PPC750 ("G3") processors 218 since they have inadequate hardware support for multiprocessor 219 operation. 220 221 If you say N here, the kernel will run on single and multiprocessor 222 machines, but will use only one CPU of a multiprocessor machine. If 223 you say Y here, the kernel will run on single-processor machines. 224 On a single-processor machine, the kernel will run faster if you say 225 N here. 226 227 If you don't know what to do here, say N. 228 229config NR_CPUS 230 int "Maximum number of CPUs (2-128)" 231 range 2 128 232 depends on SMP 233 default "32" if PPC64 234 default "4" 235 236config NOT_COHERENT_CACHE 237 bool 238 depends on 4xx || 8xx || E200 239 default y 240endmenu 241 242source "init/Kconfig" 243 244menu "Platform support" 245 depends on PPC64 || 6xx 246 247choice 248 prompt "Machine type" 249 default PPC_MULTIPLATFORM 250 251config PPC_MULTIPLATFORM 252 bool "Generic desktop/server/laptop" 253 help 254 Select this option if configuring for an IBM pSeries or 255 RS/6000 machine, an Apple machine, or a PReP, CHRP, 256 Maple or Cell-based machine. 257 258config PPC_ISERIES 259 bool "IBM Legacy iSeries" 260 depends on PPC64 261 262config EMBEDDED6xx 263 bool "Embedded 6xx/7xx/7xxx-based board" 264 depends on PPC32 && BROKEN 265 266config APUS 267 bool "Amiga-APUS" 268 depends on PPC32 && BROKEN 269 help 270 Select APUS if configuring for a PowerUP Amiga. 271 More information is available at: 272 <http://linux-apus.sourceforge.net/>. 273endchoice 274 275config PPC_PSERIES 276 depends on PPC_MULTIPLATFORM && PPC64 277 bool " IBM pSeries & new (POWER5-based) iSeries" 278 select PPC_I8259 279 select PPC_RTAS 280 select RTAS_ERROR_LOGGING 281 default y 282 283config PPC_CHRP 284 bool " Common Hardware Reference Platform (CHRP) based machines" 285 depends on PPC_MULTIPLATFORM && PPC32 286 select PPC_I8259 287 select PPC_INDIRECT_PCI 288 select PPC_RTAS 289 select PPC_MPC106 290 default y 291 292config PPC_PMAC 293 bool " Apple PowerMac based machines" 294 depends on PPC_MULTIPLATFORM 295 select PPC_INDIRECT_PCI if PPC32 296 select PPC_MPC106 if PPC32 297 default y 298 299config PPC_PMAC64 300 bool 301 depends on PPC_PMAC && POWER4 302 select U3_DART 303 select GENERIC_TBSYNC 304 default y 305 306config PPC_PREP 307 bool " PowerPC Reference Platform (PReP) based machines" 308 depends on PPC_MULTIPLATFORM && PPC32 && BROKEN 309 select PPC_I8259 310 select PPC_INDIRECT_PCI 311 default y 312 313config PPC_MAPLE 314 depends on PPC_MULTIPLATFORM && PPC64 315 bool " Maple 970FX Evaluation Board" 316 select U3_DART 317 select MPIC_BROKEN_U3 318 select GENERIC_TBSYNC 319 default n 320 help 321 This option enables support for the Maple 970FX Evaluation Board. 322 For more informations, refer to <http://www.970eval.com> 323 324config PPC_CELL 325 bool " Cell Broadband Processor Architecture" 326 depends on PPC_MULTIPLATFORM && PPC64 327 select PPC_RTAS 328 select MMIO_NVRAM 329 330config PPC_OF 331 bool 332 depends on PPC_MULTIPLATFORM # for now 333 default y 334 335config XICS 336 depends on PPC_PSERIES 337 bool 338 default y 339 340config U3_DART 341 bool 342 depends on PPC_MULTIPLATFORM && PPC64 343 default n 344 345config MPIC 346 depends on PPC_PSERIES || PPC_PMAC || PPC_MAPLE || PPC_CHRP 347 bool 348 default y 349 350config PPC_RTAS 351 bool 352 default n 353 354config RTAS_ERROR_LOGGING 355 bool 356 depends on PPC_RTAS 357 default n 358 359config RTAS_PROC 360 bool "Proc interface to RTAS" 361 depends on PPC_RTAS 362 default y 363 364config RTAS_FLASH 365 tristate "Firmware flash interface" 366 depends on PPC64 && RTAS_PROC 367 368config MMIO_NVRAM 369 bool 370 default n 371 372config MPIC_BROKEN_U3 373 bool 374 depends on PPC_MAPLE 375 default y 376 377config CELL_IIC 378 depends on PPC_CELL 379 bool 380 default y 381 382config IBMVIO 383 depends on PPC_PSERIES || PPC_ISERIES 384 bool 385 default y 386 387config PPC_MPC106 388 bool 389 default n 390 391config GENERIC_TBSYNC 392 bool 393 default y if CONFIG_PPC32 && CONFIG_SMP 394 default n 395 396source "drivers/cpufreq/Kconfig" 397 398config CPU_FREQ_PMAC 399 bool "Support for Apple PowerBooks" 400 depends on CPU_FREQ && ADB_PMU && PPC32 401 select CPU_FREQ_TABLE 402 help 403 This adds support for frequency switching on Apple PowerBooks, 404 this currently includes some models of iBook & Titanium 405 PowerBook. 406 407config CPU_FREQ_PMAC64 408 bool "Support for some Apple G5s" 409 depends on CPU_FREQ && PMAC_SMU && PPC64 410 select CPU_FREQ_TABLE 411 help 412 This adds support for frequency switching on Apple iMac G5, 413 and some of the more recent desktop G5 machines as well. 414 415config PPC601_SYNC_FIX 416 bool "Workarounds for PPC601 bugs" 417 depends on 6xx && (PPC_PREP || PPC_PMAC) 418 help 419 Some versions of the PPC601 (the first PowerPC chip) have bugs which 420 mean that extra synchronization instructions are required near 421 certain instructions, typically those that make major changes to the 422 CPU state. These extra instructions reduce performance slightly. 423 If you say N here, these extra instructions will not be included, 424 resulting in a kernel which will run faster but may not run at all 425 on some systems with the PPC601 chip. 426 427 If in doubt, say Y here. 428 429config TAU 430 bool "Thermal Management Support" 431 depends on 6xx 432 help 433 G3 and G4 processors have an on-chip temperature sensor called the 434 'Thermal Assist Unit (TAU)', which, in theory, can measure the on-die 435 temperature within 2-4 degrees Celsius. This option shows the current 436 on-die temperature in /proc/cpuinfo if the cpu supports it. 437 438 Unfortunately, on some chip revisions, this sensor is very inaccurate 439 and in some cases, does not work at all, so don't assume the cpu 440 temp is actually what /proc/cpuinfo says it is. 441 442config TAU_INT 443 bool "Interrupt driven TAU driver (DANGEROUS)" 444 depends on TAU 445 ---help--- 446 The TAU supports an interrupt driven mode which causes an interrupt 447 whenever the temperature goes out of range. This is the fastest way 448 to get notified the temp has exceeded a range. With this option off, 449 a timer is used to re-check the temperature periodically. 450 451 However, on some cpus it appears that the TAU interrupt hardware 452 is buggy and can cause a situation which would lead unexplained hard 453 lockups. 454 455 Unless you are extending the TAU driver, or enjoy kernel/hardware 456 debugging, leave this option off. 457 458config TAU_AVERAGE 459 bool "Average high and low temp" 460 depends on TAU 461 ---help--- 462 The TAU hardware can compare the temperature to an upper and lower 463 bound. The default behavior is to show both the upper and lower 464 bound in /proc/cpuinfo. If the range is large, the temperature is 465 either changing a lot, or the TAU hardware is broken (likely on some 466 G4's). If the range is small (around 4 degrees), the temperature is 467 relatively stable. If you say Y here, a single temperature value, 468 halfway between the upper and lower bounds, will be reported in 469 /proc/cpuinfo. 470 471 If in doubt, say N here. 472endmenu 473 474source arch/powerpc/platforms/embedded6xx/Kconfig 475source arch/powerpc/platforms/4xx/Kconfig 476source arch/powerpc/platforms/85xx/Kconfig 477source arch/powerpc/platforms/8xx/Kconfig 478 479menu "Kernel options" 480 481config HIGHMEM 482 bool "High memory support" 483 depends on PPC32 484 485source kernel/Kconfig.hz 486source kernel/Kconfig.preempt 487source "fs/Kconfig.binfmt" 488 489# We optimistically allocate largepages from the VM, so make the limit 490# large enough (16MB). This badly named config option is actually 491# max order + 1 492config FORCE_MAX_ZONEORDER 493 int 494 depends on PPC64 495 default "9" if PPC_64K_PAGES 496 default "13" 497 498config MATH_EMULATION 499 bool "Math emulation" 500 depends on 4xx || 8xx || E200 || E500 501 ---help--- 502 Some PowerPC chips designed for embedded applications do not have 503 a floating-point unit and therefore do not implement the 504 floating-point instructions in the PowerPC instruction set. If you 505 say Y here, the kernel will include code to emulate a floating-point 506 unit, which will allow programs that use floating-point 507 instructions to run. 508 509config IOMMU_VMERGE 510 bool "Enable IOMMU virtual merging (EXPERIMENTAL)" 511 depends on EXPERIMENTAL && PPC64 512 default n 513 help 514 Cause IO segments sent to a device for DMA to be merged virtually 515 by the IOMMU when they happen to have been allocated contiguously. 516 This doesn't add pressure to the IOMMU allocator. However, some 517 drivers don't support getting large merged segments coming back 518 from *_map_sg(). Say Y if you know the drivers you are using are 519 properly handling this case. 520 521config HOTPLUG_CPU 522 bool "Support for enabling/disabling CPUs" 523 depends on SMP && HOTPLUG && EXPERIMENTAL && (PPC_PSERIES || PPC_PMAC) 524 ---help--- 525 Say Y here to be able to disable and re-enable individual 526 CPUs at runtime on SMP machines. 527 528 Say N if you are unsure. 529 530config KEXEC 531 bool "kexec system call (EXPERIMENTAL)" 532 depends on PPC_MULTIPLATFORM && EXPERIMENTAL 533 help 534 kexec is a system call that implements the ability to shutdown your 535 current kernel, and to start another kernel. It is like a reboot 536 but it is indepedent of the system firmware. And like a reboot 537 you can start any kernel with it, not just Linux. 538 539 The name comes from the similiarity to the exec system call. 540 541 It is an ongoing process to be certain the hardware in a machine 542 is properly shutdown, so do not be surprised if this code does not 543 initially work for you. It may help to enable device hotplugging 544 support. As of this writing the exact hardware interface is 545 strongly in flux, so no good recommendation can be made. 546 547config EMBEDDEDBOOT 548 bool 549 depends on 8xx || 8260 550 default y 551 552config PC_KEYBOARD 553 bool "PC PS/2 style Keyboard" 554 depends on 4xx || CPM2 555 556config PPCBUG_NVRAM 557 bool "Enable reading PPCBUG NVRAM during boot" if PPLUS || LOPEC 558 default y if PPC_PREP 559 560config IRQ_ALL_CPUS 561 bool "Distribute interrupts on all CPUs by default" 562 depends on SMP && !MV64360 563 help 564 This option gives the kernel permission to distribute IRQs across 565 multiple CPUs. Saying N here will route all IRQs to the first 566 CPU. Generally saying Y is safe, although some problems have been 567 reported with SMP Power Macintoshes with this option enabled. 568 569source "arch/powerpc/platforms/pseries/Kconfig" 570 571config NUMA 572 bool "NUMA support" 573 depends on PPC64 574 default y if SMP && PPC_PSERIES 575 576config ARCH_SELECT_MEMORY_MODEL 577 def_bool y 578 depends on PPC64 579 580config ARCH_FLATMEM_ENABLE 581 def_bool y 582 depends on PPC64 && !NUMA 583 584config ARCH_SPARSEMEM_ENABLE 585 def_bool y 586 587config ARCH_SPARSEMEM_DEFAULT 588 def_bool y 589 depends on SMP && PPC_PSERIES 590 591source "mm/Kconfig" 592 593config HAVE_ARCH_EARLY_PFN_TO_NID 594 def_bool y 595 depends on NEED_MULTIPLE_NODES 596 597config ARCH_MEMORY_PROBE 598 def_bool y 599 depends on MEMORY_HOTPLUG 600 601config PPC_64K_PAGES 602 bool "64k page size" 603 depends on PPC64 604 help 605 This option changes the kernel logical page size to 64k. On machines 606 without processor support for 64k pages, the kernel will simulate 607 them by loading each individual 4k page on demand transparently, 608 while on hardware with such support, it will be used to map 609 normal application pages. 610 611config SCHED_SMT 612 bool "SMT (Hyperthreading) scheduler support" 613 depends on PPC64 && SMP 614 default off 615 help 616 SMT scheduler support improves the CPU scheduler's decision making 617 when dealing with POWER5 cpus at a cost of slightly increased 618 overhead in some places. If unsure say N here. 619 620config PROC_DEVICETREE 621 bool "Support for device tree in /proc" 622 depends on PROC_FS 623 help 624 This option adds a device-tree directory under /proc which contains 625 an image of the device tree that the kernel copies from Open 626 Firmware or other boot firmware. If unsure, say Y here. 627 628source "arch/powerpc/platforms/prep/Kconfig" 629 630config CMDLINE_BOOL 631 bool "Default bootloader kernel arguments" 632 depends on !PPC_ISERIES 633 634config CMDLINE 635 string "Initial kernel command string" 636 depends on CMDLINE_BOOL 637 default "console=ttyS0,9600 console=tty0 root=/dev/sda2" 638 help 639 On some platforms, there is currently no way for the boot loader to 640 pass arguments to the kernel. For these platforms, you can supply 641 some command-line options at build time by entering them here. In 642 most cases you will need to specify the root device here. 643 644if !44x || BROKEN 645source kernel/power/Kconfig 646endif 647 648config SECCOMP 649 bool "Enable seccomp to safely compute untrusted bytecode" 650 depends on PROC_FS 651 default y 652 help 653 This kernel feature is useful for number crunching applications 654 that may need to compute untrusted bytecode during their 655 execution. By using pipes or other transports made available to 656 the process as file descriptors supporting the read/write 657 syscalls, it's possible to isolate those applications in 658 their own address space using seccomp. Once seccomp is 659 enabled via /proc/<pid>/seccomp, it cannot be disabled 660 and the task is only allowed to execute a few safe syscalls 661 defined by each seccomp mode. 662 663 If unsure, say Y. Only embedded should say N here. 664 665endmenu 666 667config ISA_DMA_API 668 bool 669 default y 670 671menu "Bus options" 672 673config ISA 674 bool "Support for ISA-bus hardware" 675 depends on PPC_PREP || PPC_CHRP 676 select PPC_I8259 677 help 678 Find out whether you have ISA slots on your motherboard. ISA is the 679 name of a bus system, i.e. the way the CPU talks to the other stuff 680 inside your box. If you have an Apple machine, say N here; if you 681 have an IBM RS/6000 or pSeries machine or a PReP machine, say Y. If 682 you have an embedded board, consult your board documentation. 683 684config GENERIC_ISA_DMA 685 bool 686 depends on PPC64 || POWER4 || 6xx && !CPM2 687 default y 688 689config PPC_I8259 690 bool 691 default y if 85xx 692 default n 693 694config PPC_INDIRECT_PCI 695 bool 696 depends on PCI 697 default y if 40x || 44x || 85xx || 83xx 698 default n 699 700config EISA 701 bool 702 703config SBUS 704 bool 705 706# Yes MCA RS/6000s exist but Linux-PPC does not currently support any 707config MCA 708 bool 709 710config PCI 711 bool "PCI support" if 40x || CPM2 || 83xx || 85xx || PPC_MPC52xx || (EMBEDDED && PPC_ISERIES) 712 default y if !40x && !CPM2 && !8xx && !APUS && !83xx && !85xx 713 default PCI_PERMEDIA if !4xx && !CPM2 && !8xx && APUS 714 default PCI_QSPAN if !4xx && !CPM2 && 8xx 715 help 716 Find out whether your system includes a PCI bus. PCI is the name of 717 a bus system, i.e. the way the CPU talks to the other stuff inside 718 your box. If you say Y here, the kernel will include drivers and 719 infrastructure code to support PCI bus devices. 720 721config PCI_DOMAINS 722 bool 723 default PCI 724 725config MPC83xx_PCI2 726 bool " Supprt for 2nd PCI host controller" 727 depends on PCI && MPC834x 728 default y if MPC834x_SYS 729 730config PCI_QSPAN 731 bool "QSpan PCI" 732 depends on !4xx && !CPM2 && 8xx 733 select PPC_I8259 734 help 735 Say Y here if you have a system based on a Motorola 8xx-series 736 embedded processor with a QSPAN PCI interface, otherwise say N. 737 738config PCI_8260 739 bool 740 depends on PCI && 8260 741 select PPC_INDIRECT_PCI 742 default y 743 744config 8260_PCI9 745 bool " Enable workaround for MPC826x erratum PCI 9" 746 depends on PCI_8260 && !ADS8272 747 default y 748 749choice 750 prompt " IDMA channel for PCI 9 workaround" 751 depends on 8260_PCI9 752 753config 8260_PCI9_IDMA1 754 bool "IDMA1" 755 756config 8260_PCI9_IDMA2 757 bool "IDMA2" 758 759config 8260_PCI9_IDMA3 760 bool "IDMA3" 761 762config 8260_PCI9_IDMA4 763 bool "IDMA4" 764 765endchoice 766 767source "drivers/pci/Kconfig" 768 769source "drivers/pcmcia/Kconfig" 770 771source "drivers/pci/hotplug/Kconfig" 772 773endmenu 774 775menu "Advanced setup" 776 depends on PPC32 777 778config ADVANCED_OPTIONS 779 bool "Prompt for advanced kernel configuration options" 780 help 781 This option will enable prompting for a variety of advanced kernel 782 configuration options. These options can cause the kernel to not 783 work if they are set incorrectly, but can be used to optimize certain 784 aspects of kernel memory management. 785 786 Unless you know what you are doing, say N here. 787 788comment "Default settings for advanced configuration options are used" 789 depends on !ADVANCED_OPTIONS 790 791config HIGHMEM_START_BOOL 792 bool "Set high memory pool address" 793 depends on ADVANCED_OPTIONS && HIGHMEM 794 help 795 This option allows you to set the base address of the kernel virtual 796 area used to map high memory pages. This can be useful in 797 optimizing the layout of kernel virtual memory. 798 799 Say N here unless you know what you are doing. 800 801config HIGHMEM_START 802 hex "Virtual start address of high memory pool" if HIGHMEM_START_BOOL 803 default "0xfe000000" 804 805config LOWMEM_SIZE_BOOL 806 bool "Set maximum low memory" 807 depends on ADVANCED_OPTIONS 808 help 809 This option allows you to set the maximum amount of memory which 810 will be used as "low memory", that is, memory which the kernel can 811 access directly, without having to set up a kernel virtual mapping. 812 This can be useful in optimizing the layout of kernel virtual 813 memory. 814 815 Say N here unless you know what you are doing. 816 817config LOWMEM_SIZE 818 hex "Maximum low memory size (in bytes)" if LOWMEM_SIZE_BOOL 819 default "0x30000000" 820 821config KERNEL_START_BOOL 822 bool "Set custom kernel base address" 823 depends on ADVANCED_OPTIONS 824 help 825 This option allows you to set the kernel virtual address at which 826 the kernel will map low memory (the kernel image will be linked at 827 this address). This can be useful in optimizing the virtual memory 828 layout of the system. 829 830 Say N here unless you know what you are doing. 831 832config KERNEL_START 833 hex "Virtual address of kernel base" if KERNEL_START_BOOL 834 default "0xc0000000" 835 836config TASK_SIZE_BOOL 837 bool "Set custom user task size" 838 depends on ADVANCED_OPTIONS 839 help 840 This option allows you to set the amount of virtual address space 841 allocated to user tasks. This can be useful in optimizing the 842 virtual memory layout of the system. 843 844 Say N here unless you know what you are doing. 845 846config TASK_SIZE 847 hex "Size of user task space" if TASK_SIZE_BOOL 848 default "0x80000000" 849 850config CONSISTENT_START_BOOL 851 bool "Set custom consistent memory pool address" 852 depends on ADVANCED_OPTIONS && NOT_COHERENT_CACHE 853 help 854 This option allows you to set the base virtual address 855 of the the consistent memory pool. This pool of virtual 856 memory is used to make consistent memory allocations. 857 858config CONSISTENT_START 859 hex "Base virtual address of consistent memory pool" if CONSISTENT_START_BOOL 860 default "0xff100000" if NOT_COHERENT_CACHE 861 862config CONSISTENT_SIZE_BOOL 863 bool "Set custom consistent memory pool size" 864 depends on ADVANCED_OPTIONS && NOT_COHERENT_CACHE 865 help 866 This option allows you to set the size of the the 867 consistent memory pool. This pool of virtual memory 868 is used to make consistent memory allocations. 869 870config CONSISTENT_SIZE 871 hex "Size of consistent memory pool" if CONSISTENT_SIZE_BOOL 872 default "0x00200000" if NOT_COHERENT_CACHE 873 874config BOOT_LOAD_BOOL 875 bool "Set the boot link/load address" 876 depends on ADVANCED_OPTIONS && !PPC_MULTIPLATFORM 877 help 878 This option allows you to set the initial load address of the zImage 879 or zImage.initrd file. This can be useful if you are on a board 880 which has a small amount of memory. 881 882 Say N here unless you know what you are doing. 883 884config BOOT_LOAD 885 hex "Link/load address for booting" if BOOT_LOAD_BOOL 886 default "0x00400000" if 40x || 8xx || 8260 887 default "0x01000000" if 44x 888 default "0x00800000" 889 890config PIN_TLB 891 bool "Pinned Kernel TLBs (860 ONLY)" 892 depends on ADVANCED_OPTIONS && 8xx 893endmenu 894 895if PPC64 896config KERNEL_START 897 hex 898 default "0xc000000000000000" 899endif 900 901source "net/Kconfig" 902 903source "drivers/Kconfig" 904 905source "fs/Kconfig" 906 907# XXX source "arch/ppc/8xx_io/Kconfig" 908 909# XXX source "arch/ppc/8260_io/Kconfig" 910 911source "arch/powerpc/platforms/iseries/Kconfig" 912 913source "lib/Kconfig" 914 915menu "Instrumentation Support" 916 depends on EXPERIMENTAL 917 918source "arch/powerpc/oprofile/Kconfig" 919 920config KPROBES 921 bool "Kprobes (EXPERIMENTAL)" 922 depends on PPC64 923 help 924 Kprobes allows you to trap at almost any kernel address and 925 execute a callback function. register_kprobe() establishes 926 a probepoint and specifies the callback. Kprobes is useful 927 for kernel debugging, non-intrusive instrumentation and testing. 928 If in doubt, say "N". 929endmenu 930 931source "arch/powerpc/Kconfig.debug" 932 933source "security/Kconfig" 934 935config KEYS_COMPAT 936 bool 937 depends on COMPAT && KEYS 938 default y 939 940source "crypto/Kconfig" 941