1# 2# For a description of the syntax of this configuration file, 3# see Documentation/kbuild/kconfig-language.txt. 4# 5 6mainmenu "Linux Kernel Configuration" 7 8config ARM 9 bool 10 default y 11 select HAVE_AOUT 12 select HAVE_IDE 13 select RTC_LIB 14 select SYS_SUPPORTS_APM_EMULATION 15 select HAVE_OPROFILE 16 select HAVE_ARCH_KGDB 17 select HAVE_KPROBES if (!XIP_KERNEL) 18 select HAVE_KRETPROBES if (HAVE_KPROBES) 19 select HAVE_FUNCTION_TRACER if (!XIP_KERNEL) 20 select HAVE_GENERIC_DMA_COHERENT 21 help 22 The ARM series is a line of low-power-consumption RISC chip designs 23 licensed by ARM Ltd and targeted at embedded applications and 24 handhelds such as the Compaq IPAQ. ARM-based PCs are no longer 25 manufactured, but legacy ARM-based PC hardware remains popular in 26 Europe. There is an ARM Linux project with a web page at 27 <http://www.arm.linux.org.uk/>. 28 29config HAVE_PWM 30 bool 31 32config SYS_SUPPORTS_APM_EMULATION 33 bool 34 35config GENERIC_GPIO 36 bool 37 default n 38 39config GENERIC_TIME 40 bool 41 default n 42 43config GENERIC_CLOCKEVENTS 44 bool 45 default n 46 47config GENERIC_CLOCKEVENTS_BROADCAST 48 bool 49 depends on GENERIC_CLOCKEVENTS 50 default y if SMP && !LOCAL_TIMERS 51 52config MMU 53 bool 54 default y 55 56config NO_IOPORT 57 bool 58 default n 59 60config EISA 61 bool 62 ---help--- 63 The Extended Industry Standard Architecture (EISA) bus was 64 developed as an open alternative to the IBM MicroChannel bus. 65 66 The EISA bus provided some of the features of the IBM MicroChannel 67 bus while maintaining backward compatibility with cards made for 68 the older ISA bus. The EISA bus saw limited use between 1988 and 69 1995 when it was made obsolete by the PCI bus. 70 71 Say Y here if you are building a kernel for an EISA-based machine. 72 73 Otherwise, say N. 74 75config SBUS 76 bool 77 78config MCA 79 bool 80 help 81 MicroChannel Architecture is found in some IBM PS/2 machines and 82 laptops. It is a bus system similar to PCI or ISA. See 83 <file:Documentation/mca.txt> (and especially the web page given 84 there) before attempting to build an MCA bus kernel. 85 86config GENERIC_HARDIRQS 87 bool 88 default y 89 90config STACKTRACE_SUPPORT 91 bool 92 default y 93 94config HAVE_LATENCYTOP_SUPPORT 95 bool 96 depends on !SMP 97 default y 98 99config LOCKDEP_SUPPORT 100 bool 101 default y 102 103config TRACE_IRQFLAGS_SUPPORT 104 bool 105 default y 106 107config HARDIRQS_SW_RESEND 108 bool 109 default y 110 111config GENERIC_IRQ_PROBE 112 bool 113 default y 114 115config GENERIC_LOCKBREAK 116 bool 117 default y 118 depends on SMP && PREEMPT 119 120config RWSEM_GENERIC_SPINLOCK 121 bool 122 default y 123 124config RWSEM_XCHGADD_ALGORITHM 125 bool 126 127config ARCH_HAS_ILOG2_U32 128 bool 129 default n 130 131config ARCH_HAS_ILOG2_U64 132 bool 133 default n 134 135config GENERIC_HWEIGHT 136 bool 137 default y 138 139config GENERIC_CALIBRATE_DELAY 140 bool 141 default y 142 143config ARCH_MAY_HAVE_PC_FDC 144 bool 145 146config ZONE_DMA 147 bool 148 149config GENERIC_ISA_DMA 150 bool 151 152config FIQ 153 bool 154 155config ARCH_MTD_XIP 156 bool 157 158config GENERIC_HARDIRQS_NO__DO_IRQ 159 def_bool y 160 161if OPROFILE 162 163config OPROFILE_ARMV6 164 def_bool y 165 depends on CPU_V6 && !SMP 166 select OPROFILE_ARM11_CORE 167 168config OPROFILE_MPCORE 169 def_bool y 170 depends on CPU_V6 && SMP 171 select OPROFILE_ARM11_CORE 172 173config OPROFILE_ARM11_CORE 174 bool 175 176config OPROFILE_ARMV7 177 def_bool y 178 depends on CPU_V7 && !SMP 179 bool 180 181endif 182 183config VECTORS_BASE 184 hex 185 default 0xffff0000 if MMU || CPU_HIGH_VECTOR 186 default DRAM_BASE if REMAP_VECTORS_TO_RAM 187 default 0x00000000 188 help 189 The base address of exception vectors. 190 191source "init/Kconfig" 192 193source "kernel/Kconfig.freezer" 194 195menu "System Type" 196 197choice 198 prompt "ARM system type" 199 default ARCH_VERSATILE 200 201config ARCH_AAEC2000 202 bool "Agilent AAEC-2000 based" 203 select CPU_ARM920T 204 select ARM_AMBA 205 select HAVE_CLK 206 help 207 This enables support for systems based on the Agilent AAEC-2000 208 209config ARCH_GOLDFISH 210 bool "Goldfish" 211 select GENERIC_TIME 212 select GENERIC_CLOCKEVENTS 213 help 214 Support for Goldfish Virtual Platform. 215 216config ARCH_INTEGRATOR 217 bool "ARM Ltd. Integrator family" 218 select ARM_AMBA 219 select HAVE_CLK 220 select COMMON_CLKDEV 221 select ICST525 222 help 223 Support for ARM's Integrator platform. 224 225config ARCH_REALVIEW 226 bool "ARM Ltd. RealView family" 227 select ARM_AMBA 228 select HAVE_CLK 229 select COMMON_CLKDEV 230 select ICST307 231 select GENERIC_TIME 232 select GENERIC_CLOCKEVENTS 233 help 234 This enables support for ARM Ltd RealView boards. 235 236config ARCH_VERSATILE 237 bool "ARM Ltd. Versatile family" 238 select ARM_AMBA 239 select ARM_VIC 240 select HAVE_CLK 241 select COMMON_CLKDEV 242 select ICST307 243 select GENERIC_TIME 244 select GENERIC_CLOCKEVENTS 245 help 246 This enables support for ARM Ltd Versatile board. 247 248config ARCH_AT91 249 bool "Atmel AT91" 250 select GENERIC_GPIO 251 select HAVE_CLK 252 help 253 This enables support for systems based on the Atmel AT91RM9200, 254 AT91SAM9 and AT91CAP9 processors. 255 256config ARCH_CLPS711X 257 bool "Cirrus Logic CLPS711x/EP721x-based" 258 select CPU_ARM720T 259 help 260 Support for Cirrus Logic 711x/721x based boards. 261 262config ARCH_EBSA110 263 bool "EBSA-110" 264 select CPU_SA110 265 select ISA 266 select NO_IOPORT 267 help 268 This is an evaluation board for the StrongARM processor available 269 from Digital. It has limited hardware on-board, including an 270 Ethernet interface, two PCMCIA sockets, two serial ports and a 271 parallel port. 272 273config ARCH_EP93XX 274 bool "EP93xx-based" 275 select CPU_ARM920T 276 select ARM_AMBA 277 select ARM_VIC 278 select GENERIC_GPIO 279 select HAVE_CLK 280 select COMMON_CLKDEV 281 select ARCH_REQUIRE_GPIOLIB 282 help 283 This enables support for the Cirrus EP93xx series of CPUs. 284 285config ARCH_FOOTBRIDGE 286 bool "FootBridge" 287 select CPU_SA110 288 select FOOTBRIDGE 289 help 290 Support for systems based on the DC21285 companion chip 291 ("FootBridge"), such as the Simtec CATS and the Rebel NetWinder. 292 293config ARCH_NETX 294 bool "Hilscher NetX based" 295 select CPU_ARM926T 296 select ARM_VIC 297 select GENERIC_CLOCKEVENTS 298 select GENERIC_TIME 299 help 300 This enables support for systems based on the Hilscher NetX Soc 301 302config ARCH_H720X 303 bool "Hynix HMS720x-based" 304 select CPU_ARM720T 305 select ISA_DMA_API 306 help 307 This enables support for systems based on the Hynix HMS720x 308 309config ARCH_IMX 310 bool "IMX" 311 select CPU_ARM920T 312 select GENERIC_GPIO 313 select GENERIC_TIME 314 select GENERIC_CLOCKEVENTS 315 help 316 Support for Motorola's i.MX family of processors (MX1, MXL). 317 318config ARCH_IOP13XX 319 bool "IOP13xx-based" 320 depends on MMU 321 select CPU_XSC3 322 select PLAT_IOP 323 select PCI 324 select ARCH_SUPPORTS_MSI 325 select VMSPLIT_1G 326 help 327 Support for Intel's IOP13XX (XScale) family of processors. 328 329config ARCH_IOP32X 330 bool "IOP32x-based" 331 depends on MMU 332 select CPU_XSCALE 333 select PLAT_IOP 334 select PCI 335 select GENERIC_GPIO 336 select ARCH_REQUIRE_GPIOLIB 337 help 338 Support for Intel's 80219 and IOP32X (XScale) family of 339 processors. 340 341config ARCH_IOP33X 342 bool "IOP33x-based" 343 depends on MMU 344 select CPU_XSCALE 345 select PLAT_IOP 346 select PCI 347 select GENERIC_GPIO 348 select ARCH_REQUIRE_GPIOLIB 349 help 350 Support for Intel's IOP33X (XScale) family of processors. 351 352config ARCH_IXP23XX 353 bool "IXP23XX-based" 354 depends on MMU 355 select CPU_XSC3 356 select PCI 357 help 358 Support for Intel's IXP23xx (XScale) family of processors. 359 360config ARCH_IXP2000 361 bool "IXP2400/2800-based" 362 depends on MMU 363 select CPU_XSCALE 364 select PCI 365 help 366 Support for Intel's IXP2400/2800 (XScale) family of processors. 367 368config ARCH_IXP4XX 369 bool "IXP4xx-based" 370 depends on MMU 371 select CPU_XSCALE 372 select GENERIC_GPIO 373 select GENERIC_TIME 374 select GENERIC_CLOCKEVENTS 375 select DMABOUNCE if PCI 376 help 377 Support for Intel's IXP4XX (XScale) family of processors. 378 379config ARCH_L7200 380 bool "LinkUp-L7200" 381 select CPU_ARM720T 382 select FIQ 383 help 384 Say Y here if you intend to run this kernel on a LinkUp Systems 385 L7200 Software Development Board which uses an ARM720T processor. 386 Information on this board can be obtained at: 387 388 <http://www.linkupsys.com/> 389 390 If you have any questions or comments about the Linux kernel port 391 to this board, send e-mail to <sjhill@cotw.com>. 392 393config ARCH_KIRKWOOD 394 bool "Marvell Kirkwood" 395 select CPU_FEROCEON 396 select PCI 397 select GENERIC_GPIO 398 select GENERIC_TIME 399 select GENERIC_CLOCKEVENTS 400 select PLAT_ORION 401 help 402 Support for the following Marvell Kirkwood series SoCs: 403 88F6180, 88F6192 and 88F6281. 404 405config ARCH_KS8695 406 bool "Micrel/Kendin KS8695" 407 select CPU_ARM922T 408 select GENERIC_GPIO 409 select ARCH_REQUIRE_GPIOLIB 410 help 411 Support for Micrel/Kendin KS8695 "Centaur" (ARM922T) based 412 System-on-Chip devices. 413 414config ARCH_NS9XXX 415 bool "NetSilicon NS9xxx" 416 select CPU_ARM926T 417 select GENERIC_GPIO 418 select GENERIC_TIME 419 select GENERIC_CLOCKEVENTS 420 select HAVE_CLK 421 help 422 Say Y here if you intend to run this kernel on a NetSilicon NS9xxx 423 System. 424 425 <http://www.digi.com/products/microprocessors/index.jsp> 426 427config ARCH_LOKI 428 bool "Marvell Loki (88RC8480)" 429 select CPU_FEROCEON 430 select GENERIC_TIME 431 select GENERIC_CLOCKEVENTS 432 select PLAT_ORION 433 help 434 Support for the Marvell Loki (88RC8480) SoC. 435 436config ARCH_MV78XX0 437 bool "Marvell MV78xx0" 438 select CPU_FEROCEON 439 select PCI 440 select GENERIC_GPIO 441 select GENERIC_TIME 442 select GENERIC_CLOCKEVENTS 443 select PLAT_ORION 444 help 445 Support for the following Marvell MV78xx0 series SoCs: 446 MV781x0, MV782x0. 447 448config ARCH_MXC 449 bool "Freescale MXC/iMX-based" 450 select GENERIC_TIME 451 select GENERIC_CLOCKEVENTS 452 select ARCH_MTD_XIP 453 select GENERIC_GPIO 454 select ARCH_REQUIRE_GPIOLIB 455 help 456 Support for Freescale MXC/iMX-based family of processors 457 458config ARCH_ORION5X 459 bool "Marvell Orion" 460 depends on MMU 461 select CPU_FEROCEON 462 select PCI 463 select GENERIC_GPIO 464 select GENERIC_TIME 465 select GENERIC_CLOCKEVENTS 466 select PLAT_ORION 467 help 468 Support for the following Marvell Orion 5x series SoCs: 469 Orion-1 (5181), Orion-VoIP (5181L), Orion-NAS (5182), 470 Orion-2 (5281), Orion-1-90 (6183). 471 472config ARCH_PNX4008 473 bool "Philips Nexperia PNX4008 Mobile" 474 select CPU_ARM926T 475 select HAVE_CLK 476 help 477 This enables support for Philips PNX4008 mobile platform. 478 479config ARCH_PXA 480 bool "PXA2xx/PXA3xx-based" 481 depends on MMU 482 select ARCH_MTD_XIP 483 select GENERIC_GPIO 484 select HAVE_CLK 485 select COMMON_CLKDEV 486 select ARCH_REQUIRE_GPIOLIB 487 select GENERIC_TIME 488 select GENERIC_CLOCKEVENTS 489 select TICK_ONESHOT 490 help 491 Support for Intel/Marvell's PXA2xx/PXA3xx processor line. 492 493config ARCH_RPC 494 bool "RiscPC" 495 select ARCH_ACORN 496 select FIQ 497 select TIMER_ACORN 498 select ARCH_MAY_HAVE_PC_FDC 499 select HAVE_PATA_PLATFORM 500 select ISA_DMA_API 501 select NO_IOPORT 502 select ARCH_SPARSEMEM_ENABLE 503 help 504 On the Acorn Risc-PC, Linux can support the internal IDE disk and 505 CD-ROM interface, serial and parallel port, and the floppy drive. 506 507config ARCH_SA1100 508 bool "SA1100-based" 509 select CPU_SA1100 510 select ISA 511 select ARCH_SPARSEMEM_ENABLE 512 select ARCH_MTD_XIP 513 select GENERIC_GPIO 514 select GENERIC_TIME 515 select GENERIC_CLOCKEVENTS 516 select HAVE_CLK 517 select TICK_ONESHOT 518 select ARCH_REQUIRE_GPIOLIB 519 help 520 Support for StrongARM 11x0 based boards. 521 522config ARCH_S3C2410 523 bool "Samsung S3C2410, S3C2412, S3C2413, S3C2440, S3C2442, S3C2443" 524 select GENERIC_GPIO 525 select HAVE_CLK 526 help 527 Samsung S3C2410X CPU based systems, such as the Simtec Electronics 528 BAST (<http://www.simtec.co.uk/products/EB110ITX/>), the IPAQ 1940 or 529 the Samsung SMDK2410 development board (and derivatives). 530 531config ARCH_S3C64XX 532 bool "Samsung S3C64XX" 533 select GENERIC_GPIO 534 select HAVE_CLK 535 help 536 Samsung S3C64XX series based systems 537 538config ARCH_SHARK 539 bool "Shark" 540 select CPU_SA110 541 select ISA 542 select ISA_DMA 543 select ZONE_DMA 544 select PCI 545 help 546 Support for the StrongARM based Digital DNARD machine, also known 547 as "Shark" (<http://www.shark-linux.de/shark.html>). 548 549config ARCH_LH7A40X 550 bool "Sharp LH7A40X" 551 select CPU_ARM922T 552 select ARCH_DISCONTIGMEM_ENABLE if !LH7A40X_CONTIGMEM 553 select ARCH_SPARSEMEM_ENABLE if !LH7A40X_CONTIGMEM 554 help 555 Say Y here for systems based on one of the Sharp LH7A40X 556 System on a Chip processors. These CPUs include an ARM922T 557 core with a wide array of integrated devices for 558 hand-held and low-power applications. 559 560config ARCH_DAVINCI 561 bool "TI DaVinci" 562 select CPU_ARM926T 563 select GENERIC_TIME 564 select GENERIC_CLOCKEVENTS 565 select GENERIC_GPIO 566 select ARCH_REQUIRE_GPIOLIB 567 select HAVE_CLK 568 select ZONE_DMA 569 help 570 Support for TI's DaVinci platform. 571 572config ARCH_OMAP 573 bool "TI OMAP" 574 select GENERIC_GPIO 575 select HAVE_CLK 576 select ARCH_REQUIRE_GPIOLIB 577 select GENERIC_TIME 578 select GENERIC_CLOCKEVENTS 579 help 580 Support for TI's OMAP platform (OMAP1 and OMAP2). 581 582config ARCH_MSM 583 bool "Qualcomm MSM" 584 select CPU_V6 585 select GENERIC_TIME 586 select GENERIC_CLOCKEVENTS 587 help 588 Support for Qualcomm MSM7K based systems. This runs on the ARM11 589 apps processor of the MSM7K and depends on a shared memory 590 interface to the ARM9 modem processor which runs the baseband stack 591 and controls some vital subsystems (clock and power control, etc). 592 593config ARCH_W90X900 594 bool "Nuvoton W90X900 CPU" 595 select CPU_ARM926T 596 help 597 Support for Nuvoton (Winbond logic dept.) ARM9 processor,You 598 can login www.mcuos.com or www.nuvoton.com to know more. 599 600endchoice 601 602source "arch/arm/mach-goldfish/Kconfig" 603 604source "arch/arm/mach-clps711x/Kconfig" 605 606source "arch/arm/mach-ep93xx/Kconfig" 607 608source "arch/arm/mach-footbridge/Kconfig" 609 610source "arch/arm/mach-integrator/Kconfig" 611 612source "arch/arm/mach-iop32x/Kconfig" 613 614source "arch/arm/mach-iop33x/Kconfig" 615 616source "arch/arm/mach-iop13xx/Kconfig" 617 618source "arch/arm/mach-ixp4xx/Kconfig" 619 620source "arch/arm/mach-ixp2000/Kconfig" 621 622source "arch/arm/mach-ixp23xx/Kconfig" 623 624source "arch/arm/mach-loki/Kconfig" 625 626source "arch/arm/mach-mv78xx0/Kconfig" 627 628source "arch/arm/mach-pxa/Kconfig" 629 630source "arch/arm/mach-sa1100/Kconfig" 631 632source "arch/arm/plat-omap/Kconfig" 633 634source "arch/arm/mach-omap1/Kconfig" 635 636source "arch/arm/mach-omap2/Kconfig" 637 638source "arch/arm/mach-orion5x/Kconfig" 639 640source "arch/arm/mach-kirkwood/Kconfig" 641 642source "arch/arm/plat-s3c24xx/Kconfig" 643source "arch/arm/plat-s3c64xx/Kconfig" 644source "arch/arm/plat-s3c/Kconfig" 645 646if ARCH_S3C2410 647source "arch/arm/mach-s3c2400/Kconfig" 648source "arch/arm/mach-s3c2410/Kconfig" 649source "arch/arm/mach-s3c2412/Kconfig" 650source "arch/arm/mach-s3c2440/Kconfig" 651source "arch/arm/mach-s3c2442/Kconfig" 652source "arch/arm/mach-s3c2443/Kconfig" 653endif 654 655if ARCH_S3C64XX 656source "arch/arm/mach-s3c6400/Kconfig" 657source "arch/arm/mach-s3c6410/Kconfig" 658endif 659 660source "arch/arm/mach-lh7a40x/Kconfig" 661 662source "arch/arm/mach-imx/Kconfig" 663 664source "arch/arm/mach-h720x/Kconfig" 665 666source "arch/arm/mach-versatile/Kconfig" 667 668source "arch/arm/mach-aaec2000/Kconfig" 669 670source "arch/arm/mach-realview/Kconfig" 671 672source "arch/arm/mach-at91/Kconfig" 673 674source "arch/arm/plat-mxc/Kconfig" 675 676source "arch/arm/mach-netx/Kconfig" 677 678source "arch/arm/mach-ns9xxx/Kconfig" 679 680source "arch/arm/mach-davinci/Kconfig" 681 682source "arch/arm/mach-ks8695/Kconfig" 683 684source "arch/arm/mach-msm/Kconfig" 685 686source "arch/arm/mach-w90x900/Kconfig" 687 688# Definitions to make life easier 689config ARCH_ACORN 690 bool 691 692config PLAT_IOP 693 bool 694 695config PLAT_ORION 696 bool 697 698source arch/arm/mm/Kconfig 699 700config IWMMXT 701 bool "Enable iWMMXt support" 702 depends on CPU_XSCALE || CPU_XSC3 703 default y if PXA27x || PXA3xx 704 help 705 Enable support for iWMMXt context switching at run time if 706 running on a CPU that supports it. 707 708# bool 'Use XScale PMU as timer source' CONFIG_XSCALE_PMU_TIMER 709config XSCALE_PMU 710 bool 711 depends on CPU_XSCALE && !XSCALE_PMU_TIMER 712 default y 713 714if !MMU 715source "arch/arm/Kconfig-nommu" 716endif 717 718endmenu 719 720source "arch/arm/common/Kconfig" 721 722config FORCE_MAX_ZONEORDER 723 int 724 depends on SA1111 725 default "9" 726 727menu "Bus support" 728 729config ARM_AMBA 730 bool 731 732config ISA 733 bool 734 help 735 Find out whether you have ISA slots on your motherboard. ISA is the 736 name of a bus system, i.e. the way the CPU talks to the other stuff 737 inside your box. Other bus systems are PCI, EISA, MicroChannel 738 (MCA) or VESA. ISA is an older system, now being displaced by PCI; 739 newer boards don't support it. If you have ISA, say Y, otherwise N. 740 741# Select ISA DMA controller support 742config ISA_DMA 743 bool 744 select ISA_DMA_API 745 746# Select ISA DMA interface 747config ISA_DMA_API 748 bool 749 750config PCI 751 bool "PCI support" if ARCH_INTEGRATOR_AP || ARCH_VERSATILE_PB || ARCH_IXP4XX || ARCH_KS8695 || MACH_ARMCORE 752 help 753 Find out whether you have a PCI motherboard. PCI is the name of a 754 bus system, i.e. the way the CPU talks to the other stuff inside 755 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or 756 VESA. If you have PCI, say Y, otherwise N. 757 758config PCI_SYSCALL 759 def_bool PCI 760 761# Select the host bridge type 762config PCI_HOST_VIA82C505 763 bool 764 depends on PCI && ARCH_SHARK 765 default y 766 767config PCI_HOST_ITE8152 768 bool 769 depends on PCI && MACH_ARMCORE 770 default y 771 select DMABOUNCE 772 773source "drivers/pci/Kconfig" 774 775source "drivers/pcmcia/Kconfig" 776 777endmenu 778 779menu "Kernel Features" 780 781source "kernel/time/Kconfig" 782 783config SMP 784 bool "Symmetric Multi-Processing (EXPERIMENTAL)" 785 depends on EXPERIMENTAL && (REALVIEW_EB_ARM11MP || MACH_REALVIEW_PB11MP) 786 select USE_GENERIC_SMP_HELPERS 787 help 788 This enables support for systems with more than one CPU. If you have 789 a system with only one CPU, like most personal computers, say N. If 790 you have a system with more than one CPU, say Y. 791 792 If you say N here, the kernel will run on single and multiprocessor 793 machines, but will use only one CPU of a multiprocessor machine. If 794 you say Y here, the kernel will run on many, but not all, single 795 processor machines. On a single processor machine, the kernel will 796 run faster if you say N here. 797 798 See also <file:Documentation/i386/IO-APIC.txt>, 799 <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at 800 <http://www.linuxdoc.org/docs.html#howto>. 801 802 If you don't know what to do here, say N. 803 804choice 805 prompt "Memory split" 806 default VMSPLIT_3G 807 help 808 Select the desired split between kernel and user memory. 809 810 If you are not absolutely sure what you are doing, leave this 811 option alone! 812 813 config VMSPLIT_3G 814 bool "3G/1G user/kernel split" 815 config VMSPLIT_2G 816 bool "2G/2G user/kernel split" 817 config VMSPLIT_1G 818 bool "1G/3G user/kernel split" 819endchoice 820 821config PAGE_OFFSET 822 hex 823 default 0x40000000 if VMSPLIT_1G 824 default 0x80000000 if VMSPLIT_2G 825 default 0xC0000000 826 827config NR_CPUS 828 int "Maximum number of CPUs (2-32)" 829 range 2 32 830 depends on SMP 831 default "4" 832 833config HOTPLUG_CPU 834 bool "Support for hot-pluggable CPUs (EXPERIMENTAL)" 835 depends on SMP && HOTPLUG && EXPERIMENTAL 836 help 837 Say Y here to experiment with turning CPUs off and on. CPUs 838 can be controlled through /sys/devices/system/cpu. 839 840config LOCAL_TIMERS 841 bool "Use local timer interrupts" 842 depends on SMP && (REALVIEW_EB_ARM11MP || MACH_REALVIEW_PB11MP || REALVIEW_EB_A9MP) 843 default y 844 help 845 Enable support for local timers on SMP platforms, rather then the 846 legacy IPI broadcast method. Local timers allows the system 847 accounting to be spread across the timer interval, preventing a 848 "thundering herd" at every timer tick. 849 850config PREEMPT 851 bool "Preemptible Kernel (EXPERIMENTAL)" 852 depends on EXPERIMENTAL 853 help 854 This option reduces the latency of the kernel when reacting to 855 real-time or interactive events by allowing a low priority process to 856 be preempted even if it is in kernel mode executing a system call. 857 This allows applications to run more reliably even when the system is 858 under load. 859 860 Say Y here if you are building a kernel for a desktop, embedded 861 or real-time system. Say N if you are unsure. 862 863config HZ 864 int 865 default 128 if ARCH_L7200 866 default 200 if ARCH_EBSA110 || ARCH_S3C2410 867 default OMAP_32K_TIMER_HZ if ARCH_OMAP && OMAP_32K_TIMER 868 default AT91_TIMER_HZ if ARCH_AT91 869 default 100 870 871config AEABI 872 bool "Use the ARM EABI to compile the kernel" 873 help 874 This option allows for the kernel to be compiled using the latest 875 ARM ABI (aka EABI). This is only useful if you are using a user 876 space environment that is also compiled with EABI. 877 878 Since there are major incompatibilities between the legacy ABI and 879 EABI, especially with regard to structure member alignment, this 880 option also changes the kernel syscall calling convention to 881 disambiguate both ABIs and allow for backward compatibility support 882 (selected with CONFIG_OABI_COMPAT). 883 884 To use this you need GCC version 4.0.0 or later. 885 886config OABI_COMPAT 887 bool "Allow old ABI binaries to run with this kernel (EXPERIMENTAL)" 888 depends on AEABI && EXPERIMENTAL 889 default y 890 help 891 This option preserves the old syscall interface along with the 892 new (ARM EABI) one. It also provides a compatibility layer to 893 intercept syscalls that have structure arguments which layout 894 in memory differs between the legacy ABI and the new ARM EABI 895 (only for non "thumb" binaries). This option adds a tiny 896 overhead to all syscalls and produces a slightly larger kernel. 897 If you know you'll be using only pure EABI user space then you 898 can say N here. If this option is not selected and you attempt 899 to execute a legacy ABI binary then the result will be 900 UNPREDICTABLE (in fact it can be predicted that it won't work 901 at all). If in doubt say Y. 902 903config ARCH_FLATMEM_HAS_HOLES 904 bool 905 default y 906 depends on FLATMEM 907 908# Discontigmem is deprecated 909config ARCH_DISCONTIGMEM_ENABLE 910 bool 911 912config ARCH_SPARSEMEM_ENABLE 913 bool 914 915config ARCH_SPARSEMEM_DEFAULT 916 def_bool ARCH_SPARSEMEM_ENABLE 917 918config ARCH_SELECT_MEMORY_MODEL 919 def_bool ARCH_DISCONTIGMEM_ENABLE && ARCH_SPARSEMEM_ENABLE 920 921config NODES_SHIFT 922 int 923 default "4" if ARCH_LH7A40X 924 default "2" 925 depends on NEED_MULTIPLE_NODES 926 927source "mm/Kconfig" 928 929config LEDS 930 bool "Timer and CPU usage LEDs" 931 depends on ARCH_CDB89712 || ARCH_EBSA110 || \ 932 ARCH_EBSA285 || ARCH_IMX || ARCH_INTEGRATOR || \ 933 ARCH_LUBBOCK || MACH_MAINSTONE || ARCH_NETWINDER || \ 934 ARCH_OMAP || ARCH_P720T || ARCH_PXA_IDP || \ 935 ARCH_SA1100 || ARCH_SHARK || ARCH_VERSATILE || \ 936 ARCH_AT91 || ARCH_DAVINCI || \ 937 ARCH_KS8695 || MACH_RD88F5182 938 help 939 If you say Y here, the LEDs on your machine will be used 940 to provide useful information about your current system status. 941 942 If you are compiling a kernel for a NetWinder or EBSA-285, you will 943 be able to select which LEDs are active using the options below. If 944 you are compiling a kernel for the EBSA-110 or the LART however, the 945 red LED will simply flash regularly to indicate that the system is 946 still functional. It is safe to say Y here if you have a CATS 947 system, but the driver will do nothing. 948 949config LEDS_TIMER 950 bool "Timer LED" if (!ARCH_CDB89712 && !ARCH_OMAP) || \ 951 OMAP_OSK_MISTRAL || MACH_OMAP_H2 \ 952 || MACH_OMAP_PERSEUS2 953 depends on LEDS 954 depends on !GENERIC_CLOCKEVENTS 955 default y if ARCH_EBSA110 956 help 957 If you say Y here, one of the system LEDs (the green one on the 958 NetWinder, the amber one on the EBSA285, or the red one on the LART) 959 will flash regularly to indicate that the system is still 960 operational. This is mainly useful to kernel hackers who are 961 debugging unstable kernels. 962 963 The LART uses the same LED for both Timer LED and CPU usage LED 964 functions. You may choose to use both, but the Timer LED function 965 will overrule the CPU usage LED. 966 967config LEDS_CPU 968 bool "CPU usage LED" if (!ARCH_CDB89712 && !ARCH_EBSA110 && \ 969 !ARCH_OMAP) \ 970 || OMAP_OSK_MISTRAL || MACH_OMAP_H2 \ 971 || MACH_OMAP_PERSEUS2 972 depends on LEDS 973 help 974 If you say Y here, the red LED will be used to give a good real 975 time indication of CPU usage, by lighting whenever the idle task 976 is not currently executing. 977 978 The LART uses the same LED for both Timer LED and CPU usage LED 979 functions. You may choose to use both, but the Timer LED function 980 will overrule the CPU usage LED. 981 982config ALIGNMENT_TRAP 983 bool 984 depends on CPU_CP15_MMU 985 default y if !ARCH_EBSA110 986 help 987 ARM processors cannot fetch/store information which is not 988 naturally aligned on the bus, i.e., a 4 byte fetch must start at an 989 address divisible by 4. On 32-bit ARM processors, these non-aligned 990 fetch/store instructions will be emulated in software if you say 991 here, which has a severe performance impact. This is necessary for 992 correct operation of some network protocols. With an IP-only 993 configuration it is safe to say N, otherwise say Y. 994 995endmenu 996 997menu "Boot options" 998 999# Compressed boot loader in ROM. Yes, we really want to ask about 1000# TEXT and BSS so we preserve their values in the config files. 1001config ZBOOT_ROM_TEXT 1002 hex "Compressed ROM boot loader base address" 1003 default "0" 1004 help 1005 The physical address at which the ROM-able zImage is to be 1006 placed in the target. Platforms which normally make use of 1007 ROM-able zImage formats normally set this to a suitable 1008 value in their defconfig file. 1009 1010 If ZBOOT_ROM is not enabled, this has no effect. 1011 1012config ZBOOT_ROM_BSS 1013 hex "Compressed ROM boot loader BSS address" 1014 default "0" 1015 help 1016 The base address of an area of read/write memory in the target 1017 for the ROM-able zImage which must be available while the 1018 decompressor is running. It must be large enough to hold the 1019 entire decompressed kernel plus an additional 128 KiB. 1020 Platforms which normally make use of ROM-able zImage formats 1021 normally set this to a suitable value in their defconfig file. 1022 1023 If ZBOOT_ROM is not enabled, this has no effect. 1024 1025config ZBOOT_ROM 1026 bool "Compressed boot loader in ROM/flash" 1027 depends on ZBOOT_ROM_TEXT != ZBOOT_ROM_BSS 1028 help 1029 Say Y here if you intend to execute your compressed kernel image 1030 (zImage) directly from ROM or flash. If unsure, say N. 1031 1032config CMDLINE 1033 string "Default kernel command string" 1034 default "" 1035 help 1036 On some architectures (EBSA110 and CATS), there is currently no way 1037 for the boot loader to pass arguments to the kernel. For these 1038 architectures, you should supply some command-line options at build 1039 time by entering them here. As a minimum, you should specify the 1040 memory size and the root device (e.g., mem=64M root=/dev/nfs). 1041 1042config XIP_KERNEL 1043 bool "Kernel Execute-In-Place from ROM" 1044 depends on !ZBOOT_ROM 1045 help 1046 Execute-In-Place allows the kernel to run from non-volatile storage 1047 directly addressable by the CPU, such as NOR flash. This saves RAM 1048 space since the text section of the kernel is not loaded from flash 1049 to RAM. Read-write sections, such as the data section and stack, 1050 are still copied to RAM. The XIP kernel is not compressed since 1051 it has to run directly from flash, so it will take more space to 1052 store it. The flash address used to link the kernel object files, 1053 and for storing it, is configuration dependent. Therefore, if you 1054 say Y here, you must know the proper physical address where to 1055 store the kernel image depending on your own flash memory usage. 1056 1057 Also note that the make target becomes "make xipImage" rather than 1058 "make zImage" or "make Image". The final kernel binary to put in 1059 ROM memory will be arch/arm/boot/xipImage. 1060 1061 If unsure, say N. 1062 1063config XIP_PHYS_ADDR 1064 hex "XIP Kernel Physical Location" 1065 depends on XIP_KERNEL 1066 default "0x00080000" 1067 help 1068 This is the physical address in your flash memory the kernel will 1069 be linked for and stored to. This address is dependent on your 1070 own flash usage. 1071 1072config KEXEC 1073 bool "Kexec system call (EXPERIMENTAL)" 1074 depends on EXPERIMENTAL 1075 help 1076 kexec is a system call that implements the ability to shutdown your 1077 current kernel, and to start another kernel. It is like a reboot 1078 but it is independent of the system firmware. And like a reboot 1079 you can start any kernel with it, not just Linux. 1080 1081 It is an ongoing process to be certain the hardware in a machine 1082 is properly shutdown, so do not be surprised if this code does not 1083 initially work for you. It may help to enable device hotplugging 1084 support. 1085 1086config ATAGS_PROC 1087 bool "Export atags in procfs" 1088 depends on KEXEC 1089 default y 1090 help 1091 Should the atags used to boot the kernel be exported in an "atags" 1092 file in procfs. Useful with kexec. 1093 1094endmenu 1095 1096menu "CPU Power Management" 1097 1098if (ARCH_SA1100 || ARCH_INTEGRATOR || ARCH_OMAP || ARCH_IMX || ARCH_PXA) 1099 1100source "drivers/cpufreq/Kconfig" 1101 1102config CPU_FREQ_SA1100 1103 bool 1104 depends on CPU_FREQ && (SA1100_H3100 || SA1100_H3600 || SA1100_H3800 || SA1100_LART || SA1100_PLEB || SA1100_BADGE4 || SA1100_HACKKIT) 1105 default y 1106 1107config CPU_FREQ_SA1110 1108 bool 1109 depends on CPU_FREQ && (SA1100_ASSABET || SA1100_CERF || SA1100_PT_SYSTEM3) 1110 default y 1111 1112config CPU_FREQ_INTEGRATOR 1113 tristate "CPUfreq driver for ARM Integrator CPUs" 1114 depends on ARCH_INTEGRATOR && CPU_FREQ 1115 default y 1116 help 1117 This enables the CPUfreq driver for ARM Integrator CPUs. 1118 1119 For details, take a look at <file:Documentation/cpu-freq>. 1120 1121 If in doubt, say Y. 1122 1123config CPU_FREQ_IMX 1124 tristate "CPUfreq driver for i.MX CPUs" 1125 depends on ARCH_IMX && CPU_FREQ 1126 default n 1127 help 1128 This enables the CPUfreq driver for i.MX CPUs. 1129 1130 If in doubt, say N. 1131 1132config CPU_FREQ_PXA 1133 bool 1134 depends on CPU_FREQ && ARCH_PXA && PXA25x 1135 default y 1136 select CPU_FREQ_DEFAULT_GOV_USERSPACE 1137 1138endif 1139 1140source "drivers/cpuidle/Kconfig" 1141 1142endmenu 1143 1144menu "Floating point emulation" 1145 1146comment "At least one emulation must be selected" 1147 1148config FPE_NWFPE 1149 bool "NWFPE math emulation" 1150 depends on !AEABI || OABI_COMPAT 1151 ---help--- 1152 Say Y to include the NWFPE floating point emulator in the kernel. 1153 This is necessary to run most binaries. Linux does not currently 1154 support floating point hardware so you need to say Y here even if 1155 your machine has an FPA or floating point co-processor podule. 1156 1157 You may say N here if you are going to load the Acorn FPEmulator 1158 early in the bootup. 1159 1160config FPE_NWFPE_XP 1161 bool "Support extended precision" 1162 depends on FPE_NWFPE 1163 help 1164 Say Y to include 80-bit support in the kernel floating-point 1165 emulator. Otherwise, only 32 and 64-bit support is compiled in. 1166 Note that gcc does not generate 80-bit operations by default, 1167 so in most cases this option only enlarges the size of the 1168 floating point emulator without any good reason. 1169 1170 You almost surely want to say N here. 1171 1172config FPE_FASTFPE 1173 bool "FastFPE math emulation (EXPERIMENTAL)" 1174 depends on (!AEABI || OABI_COMPAT) && !CPU_32v3 && EXPERIMENTAL 1175 ---help--- 1176 Say Y here to include the FAST floating point emulator in the kernel. 1177 This is an experimental much faster emulator which now also has full 1178 precision for the mantissa. It does not support any exceptions. 1179 It is very simple, and approximately 3-6 times faster than NWFPE. 1180 1181 It should be sufficient for most programs. It may be not suitable 1182 for scientific calculations, but you have to check this for yourself. 1183 If you do not feel you need a faster FP emulation you should better 1184 choose NWFPE. 1185 1186config VFP 1187 bool "VFP-format floating point maths" 1188 depends on CPU_V6 || CPU_ARM926T || CPU_V7 || CPU_FEROCEON 1189 help 1190 Say Y to include VFP support code in the kernel. This is needed 1191 if your hardware includes a VFP unit. 1192 1193 Please see <file:Documentation/arm/VFP/release-notes.txt> for 1194 release notes and additional status information. 1195 1196 Say N if your target does not have VFP hardware. 1197 1198config VFPv3 1199 bool 1200 depends on VFP 1201 default y if CPU_V7 1202 1203config NEON 1204 bool "Advanced SIMD (NEON) Extension support" 1205 depends on VFPv3 && CPU_V7 1206 help 1207 Say Y to include support code for NEON, the ARMv7 Advanced SIMD 1208 Extension. 1209 1210endmenu 1211 1212menu "Userspace binary formats" 1213 1214source "fs/Kconfig.binfmt" 1215 1216config ARTHUR 1217 tristate "RISC OS personality" 1218 depends on !AEABI 1219 help 1220 Say Y here to include the kernel code necessary if you want to run 1221 Acorn RISC OS/Arthur binaries under Linux. This code is still very 1222 experimental; if this sounds frightening, say N and sleep in peace. 1223 You can also say M here to compile this support as a module (which 1224 will be called arthur). 1225 1226endmenu 1227 1228menu "Power management options" 1229 1230source "kernel/power/Kconfig" 1231 1232config ARCH_SUSPEND_POSSIBLE 1233 def_bool y 1234 1235endmenu 1236 1237source "net/Kconfig" 1238 1239menu "Device Drivers" 1240 1241source "drivers/base/Kconfig" 1242 1243source "drivers/connector/Kconfig" 1244 1245if ALIGNMENT_TRAP || !CPU_CP15_MMU 1246source "drivers/mtd/Kconfig" 1247endif 1248 1249source "drivers/parport/Kconfig" 1250 1251source "drivers/pnp/Kconfig" 1252 1253source "drivers/block/Kconfig" 1254 1255# misc before ide - BLK_DEV_SGIIOC4 depends on SGI_IOC4 1256 1257source "drivers/misc/Kconfig" 1258 1259source "drivers/ide/Kconfig" 1260 1261source "drivers/scsi/Kconfig" 1262 1263source "drivers/ata/Kconfig" 1264 1265source "drivers/md/Kconfig" 1266 1267source "drivers/message/fusion/Kconfig" 1268 1269source "drivers/ieee1394/Kconfig" 1270 1271source "drivers/message/i2o/Kconfig" 1272 1273source "drivers/net/Kconfig" 1274 1275source "drivers/isdn/Kconfig" 1276 1277# input before char - char/joystick depends on it. As does USB. 1278 1279source "drivers/input/Kconfig" 1280 1281source "drivers/char/Kconfig" 1282 1283source "drivers/i2c/Kconfig" 1284 1285source "drivers/spi/Kconfig" 1286 1287source "drivers/gpio/Kconfig" 1288 1289source "drivers/w1/Kconfig" 1290 1291source "drivers/power/Kconfig" 1292 1293source "drivers/hwmon/Kconfig" 1294 1295source "drivers/thermal/Kconfig" 1296 1297source "drivers/watchdog/Kconfig" 1298 1299source "drivers/ssb/Kconfig" 1300 1301#source "drivers/l3/Kconfig" 1302 1303source "drivers/mfd/Kconfig" 1304 1305source "drivers/media/Kconfig" 1306 1307source "drivers/video/Kconfig" 1308 1309source "sound/Kconfig" 1310 1311source "drivers/hid/Kconfig" 1312 1313source "drivers/usb/Kconfig" 1314 1315source "drivers/uwb/Kconfig" 1316 1317source "drivers/mmc/Kconfig" 1318 1319source "drivers/memstick/Kconfig" 1320 1321source "drivers/accessibility/Kconfig" 1322 1323source "drivers/leds/Kconfig" 1324 1325source "drivers/switch/Kconfig" 1326 1327source "drivers/rtc/Kconfig" 1328 1329source "drivers/dma/Kconfig" 1330 1331source "drivers/dca/Kconfig" 1332 1333source "drivers/auxdisplay/Kconfig" 1334 1335source "drivers/regulator/Kconfig" 1336 1337source "drivers/uio/Kconfig" 1338 1339source "drivers/staging/Kconfig" 1340 1341endmenu 1342 1343source "fs/Kconfig" 1344 1345source "arch/arm/Kconfig.debug" 1346 1347source "security/Kconfig" 1348 1349source "crypto/Kconfig" 1350 1351source "lib/Kconfig" 1352