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