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