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