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