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_DISCONTIGMEM_ENABLE 814 bool 815 default (ARCH_LH7A40X && !LH7A40X_CONTIGMEM) 816 help 817 Say Y to support efficient handling of discontiguous physical memory, 818 for architectures which are either NUMA (Non-Uniform Memory Access) 819 or have huge holes in the physical address space for other reasons. 820 See <file:Documentation/vm/numa> for more. 821 822config ARCH_SPARSEMEM_ENABLE 823 bool 824 825config ARCH_SELECT_MEMORY_MODEL 826 bool 827 828config NODES_SHIFT 829 int 830 default "4" if ARCH_LH7A40X 831 default "2" 832 depends on NEED_MULTIPLE_NODES 833 834source "mm/Kconfig" 835 836config LEDS 837 bool "Timer and CPU usage LEDs" 838 depends on ARCH_CDB89712 || ARCH_EBSA110 || \ 839 ARCH_EBSA285 || ARCH_IMX || ARCH_INTEGRATOR || \ 840 ARCH_LUBBOCK || MACH_MAINSTONE || ARCH_NETWINDER || \ 841 ARCH_OMAP || ARCH_P720T || ARCH_PXA_IDP || \ 842 ARCH_SA1100 || ARCH_SHARK || ARCH_VERSATILE || \ 843 ARCH_AT91 || MACH_TRIZEPS4 || ARCH_DAVINCI || \ 844 ARCH_KS8695 || MACH_RD88F5182 845 help 846 If you say Y here, the LEDs on your machine will be used 847 to provide useful information about your current system status. 848 849 If you are compiling a kernel for a NetWinder or EBSA-285, you will 850 be able to select which LEDs are active using the options below. If 851 you are compiling a kernel for the EBSA-110 or the LART however, the 852 red LED will simply flash regularly to indicate that the system is 853 still functional. It is safe to say Y here if you have a CATS 854 system, but the driver will do nothing. 855 856config LEDS_TIMER 857 bool "Timer LED" if (!ARCH_CDB89712 && !ARCH_OMAP) || \ 858 OMAP_OSK_MISTRAL || MACH_OMAP_H2 \ 859 || MACH_OMAP_PERSEUS2 860 depends on LEDS 861 depends on !GENERIC_CLOCKEVENTS 862 default y if ARCH_EBSA110 863 help 864 If you say Y here, one of the system LEDs (the green one on the 865 NetWinder, the amber one on the EBSA285, or the red one on the LART) 866 will flash regularly to indicate that the system is still 867 operational. This is mainly useful to kernel hackers who are 868 debugging unstable kernels. 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 LEDS_CPU 875 bool "CPU usage LED" if (!ARCH_CDB89712 && !ARCH_EBSA110 && \ 876 !ARCH_OMAP) \ 877 || OMAP_OSK_MISTRAL || MACH_OMAP_H2 \ 878 || MACH_OMAP_PERSEUS2 879 depends on LEDS 880 help 881 If you say Y here, the red LED will be used to give a good real 882 time indication of CPU usage, by lighting whenever the idle task 883 is not currently executing. 884 885 The LART uses the same LED for both Timer LED and CPU usage LED 886 functions. You may choose to use both, but the Timer LED function 887 will overrule the CPU usage LED. 888 889config ALIGNMENT_TRAP 890 bool 891 depends on CPU_CP15_MMU 892 default y if !ARCH_EBSA110 893 help 894 ARM processors cannot fetch/store information which is not 895 naturally aligned on the bus, i.e., a 4 byte fetch must start at an 896 address divisible by 4. On 32-bit ARM processors, these non-aligned 897 fetch/store instructions will be emulated in software if you say 898 here, which has a severe performance impact. This is necessary for 899 correct operation of some network protocols. With an IP-only 900 configuration it is safe to say N, otherwise say Y. 901 902endmenu 903 904menu "Boot options" 905 906# Compressed boot loader in ROM. Yes, we really want to ask about 907# TEXT and BSS so we preserve their values in the config files. 908config ZBOOT_ROM_TEXT 909 hex "Compressed ROM boot loader base address" 910 default "0" 911 help 912 The physical address at which the ROM-able zImage is to be 913 placed in the target. Platforms which normally make use of 914 ROM-able zImage formats normally set this to a suitable 915 value in their defconfig file. 916 917 If ZBOOT_ROM is not enabled, this has no effect. 918 919config ZBOOT_ROM_BSS 920 hex "Compressed ROM boot loader BSS address" 921 default "0" 922 help 923 The base address of an area of read/write memory in the target 924 for the ROM-able zImage which must be available while the 925 decompressor is running. It must be large enough to hold the 926 entire decompressed kernel plus an additional 128 KiB. 927 Platforms which normally make use of ROM-able zImage formats 928 normally set this to a suitable value in their defconfig file. 929 930 If ZBOOT_ROM is not enabled, this has no effect. 931 932config ZBOOT_ROM 933 bool "Compressed boot loader in ROM/flash" 934 depends on ZBOOT_ROM_TEXT != ZBOOT_ROM_BSS 935 help 936 Say Y here if you intend to execute your compressed kernel image 937 (zImage) directly from ROM or flash. If unsure, say N. 938 939config CMDLINE 940 string "Default kernel command string" 941 default "" 942 help 943 On some architectures (EBSA110 and CATS), there is currently no way 944 for the boot loader to pass arguments to the kernel. For these 945 architectures, you should supply some command-line options at build 946 time by entering them here. As a minimum, you should specify the 947 memory size and the root device (e.g., mem=64M root=/dev/nfs). 948 949config XIP_KERNEL 950 bool "Kernel Execute-In-Place from ROM" 951 depends on !ZBOOT_ROM 952 help 953 Execute-In-Place allows the kernel to run from non-volatile storage 954 directly addressable by the CPU, such as NOR flash. This saves RAM 955 space since the text section of the kernel is not loaded from flash 956 to RAM. Read-write sections, such as the data section and stack, 957 are still copied to RAM. The XIP kernel is not compressed since 958 it has to run directly from flash, so it will take more space to 959 store it. The flash address used to link the kernel object files, 960 and for storing it, is configuration dependent. Therefore, if you 961 say Y here, you must know the proper physical address where to 962 store the kernel image depending on your own flash memory usage. 963 964 Also note that the make target becomes "make xipImage" rather than 965 "make zImage" or "make Image". The final kernel binary to put in 966 ROM memory will be arch/arm/boot/xipImage. 967 968 If unsure, say N. 969 970config XIP_PHYS_ADDR 971 hex "XIP Kernel Physical Location" 972 depends on XIP_KERNEL 973 default "0x00080000" 974 help 975 This is the physical address in your flash memory the kernel will 976 be linked for and stored to. This address is dependent on your 977 own flash usage. 978 979config KEXEC 980 bool "Kexec system call (EXPERIMENTAL)" 981 depends on EXPERIMENTAL 982 help 983 kexec is a system call that implements the ability to shutdown your 984 current kernel, and to start another kernel. It is like a reboot 985 but it is independent of the system firmware. And like a reboot 986 you can start any kernel with it, not just Linux. 987 988 It is an ongoing process to be certain the hardware in a machine 989 is properly shutdown, so do not be surprised if this code does not 990 initially work for you. It may help to enable device hotplugging 991 support. 992 993config ATAGS_PROC 994 bool "Export atags in procfs" 995 depends on KEXEC 996 default y 997 help 998 Should the atags used to boot the kernel be exported in an "atags" 999 file in procfs. Useful with kexec. 1000 1001endmenu 1002 1003if (ARCH_SA1100 || ARCH_INTEGRATOR || ARCH_OMAP || ARCH_IMX || ARCH_PXA) 1004 1005menu "CPU Frequency scaling" 1006 1007source "drivers/cpufreq/Kconfig" 1008 1009config CPU_FREQ_SA1100 1010 bool 1011 depends on CPU_FREQ && (SA1100_H3100 || SA1100_H3600 || SA1100_H3800 || SA1100_LART || SA1100_PLEB || SA1100_BADGE4 || SA1100_HACKKIT) 1012 default y 1013 1014config CPU_FREQ_SA1110 1015 bool 1016 depends on CPU_FREQ && (SA1100_ASSABET || SA1100_CERF || SA1100_PT_SYSTEM3) 1017 default y 1018 1019config CPU_FREQ_INTEGRATOR 1020 tristate "CPUfreq driver for ARM Integrator CPUs" 1021 depends on ARCH_INTEGRATOR && CPU_FREQ 1022 default y 1023 help 1024 This enables the CPUfreq driver for ARM Integrator CPUs. 1025 1026 For details, take a look at <file:Documentation/cpu-freq>. 1027 1028 If in doubt, say Y. 1029 1030config CPU_FREQ_IMX 1031 tristate "CPUfreq driver for i.MX CPUs" 1032 depends on ARCH_IMX && CPU_FREQ 1033 default n 1034 help 1035 This enables the CPUfreq driver for i.MX CPUs. 1036 1037 If in doubt, say N. 1038 1039config CPU_FREQ_PXA 1040 bool 1041 depends on CPU_FREQ && ARCH_PXA && PXA25x 1042 default y 1043 select CPU_FREQ_DEFAULT_GOV_USERSPACE 1044 1045endmenu 1046 1047endif 1048 1049menu "Floating point emulation" 1050 1051comment "At least one emulation must be selected" 1052 1053config FPE_NWFPE 1054 bool "NWFPE math emulation" 1055 depends on !AEABI || OABI_COMPAT 1056 ---help--- 1057 Say Y to include the NWFPE floating point emulator in the kernel. 1058 This is necessary to run most binaries. Linux does not currently 1059 support floating point hardware so you need to say Y here even if 1060 your machine has an FPA or floating point co-processor podule. 1061 1062 You may say N here if you are going to load the Acorn FPEmulator 1063 early in the bootup. 1064 1065config FPE_NWFPE_XP 1066 bool "Support extended precision" 1067 depends on FPE_NWFPE 1068 help 1069 Say Y to include 80-bit support in the kernel floating-point 1070 emulator. Otherwise, only 32 and 64-bit support is compiled in. 1071 Note that gcc does not generate 80-bit operations by default, 1072 so in most cases this option only enlarges the size of the 1073 floating point emulator without any good reason. 1074 1075 You almost surely want to say N here. 1076 1077config FPE_FASTFPE 1078 bool "FastFPE math emulation (EXPERIMENTAL)" 1079 depends on (!AEABI || OABI_COMPAT) && !CPU_32v3 && EXPERIMENTAL 1080 ---help--- 1081 Say Y here to include the FAST floating point emulator in the kernel. 1082 This is an experimental much faster emulator which now also has full 1083 precision for the mantissa. It does not support any exceptions. 1084 It is very simple, and approximately 3-6 times faster than NWFPE. 1085 1086 It should be sufficient for most programs. It may be not suitable 1087 for scientific calculations, but you have to check this for yourself. 1088 If you do not feel you need a faster FP emulation you should better 1089 choose NWFPE. 1090 1091config VFP 1092 bool "VFP-format floating point maths" 1093 depends on CPU_V6 || CPU_ARM926T || CPU_V7 || CPU_FEROCEON 1094 help 1095 Say Y to include VFP support code in the kernel. This is needed 1096 if your hardware includes a VFP unit. 1097 1098 Please see <file:Documentation/arm/VFP/release-notes.txt> for 1099 release notes and additional status information. 1100 1101 Say N if your target does not have VFP hardware. 1102 1103config VFPv3 1104 bool 1105 depends on VFP 1106 default y if CPU_V7 1107 1108config NEON 1109 bool "Advanced SIMD (NEON) Extension support" 1110 depends on VFPv3 && CPU_V7 1111 help 1112 Say Y to include support code for NEON, the ARMv7 Advanced SIMD 1113 Extension. 1114 1115endmenu 1116 1117menu "Userspace binary formats" 1118 1119source "fs/Kconfig.binfmt" 1120 1121config ARTHUR 1122 tristate "RISC OS personality" 1123 depends on !AEABI 1124 help 1125 Say Y here to include the kernel code necessary if you want to run 1126 Acorn RISC OS/Arthur binaries under Linux. This code is still very 1127 experimental; if this sounds frightening, say N and sleep in peace. 1128 You can also say M here to compile this support as a module (which 1129 will be called arthur). 1130 1131endmenu 1132 1133menu "Power management options" 1134 1135source "kernel/power/Kconfig" 1136 1137config ARCH_SUSPEND_POSSIBLE 1138 def_bool y 1139 1140endmenu 1141 1142source "net/Kconfig" 1143 1144menu "Device Drivers" 1145 1146source "drivers/base/Kconfig" 1147 1148source "drivers/connector/Kconfig" 1149 1150if ALIGNMENT_TRAP || !CPU_CP15_MMU 1151source "drivers/mtd/Kconfig" 1152endif 1153 1154source "drivers/parport/Kconfig" 1155 1156source "drivers/pnp/Kconfig" 1157 1158source "drivers/block/Kconfig" 1159 1160# misc before ide - BLK_DEV_SGIIOC4 depends on SGI_IOC4 1161 1162source "drivers/misc/Kconfig" 1163 1164source "drivers/ide/Kconfig" 1165 1166source "drivers/scsi/Kconfig" 1167 1168source "drivers/ata/Kconfig" 1169 1170source "drivers/md/Kconfig" 1171 1172source "drivers/message/fusion/Kconfig" 1173 1174source "drivers/ieee1394/Kconfig" 1175 1176source "drivers/message/i2o/Kconfig" 1177 1178source "drivers/net/Kconfig" 1179 1180source "drivers/isdn/Kconfig" 1181 1182# input before char - char/joystick depends on it. As does USB. 1183 1184source "drivers/input/Kconfig" 1185 1186source "drivers/char/Kconfig" 1187 1188source "drivers/i2c/Kconfig" 1189 1190source "drivers/spi/Kconfig" 1191 1192source "drivers/gpio/Kconfig" 1193 1194source "drivers/w1/Kconfig" 1195 1196source "drivers/power/Kconfig" 1197 1198source "drivers/hwmon/Kconfig" 1199 1200source "drivers/watchdog/Kconfig" 1201 1202source "drivers/ssb/Kconfig" 1203 1204#source "drivers/l3/Kconfig" 1205 1206source "drivers/mfd/Kconfig" 1207 1208source "drivers/media/Kconfig" 1209 1210source "drivers/video/Kconfig" 1211 1212source "sound/Kconfig" 1213 1214source "drivers/hid/Kconfig" 1215 1216source "drivers/usb/Kconfig" 1217 1218source "drivers/mmc/Kconfig" 1219 1220source "drivers/leds/Kconfig" 1221 1222source "drivers/rtc/Kconfig" 1223 1224source "drivers/dma/Kconfig" 1225 1226source "drivers/dca/Kconfig" 1227 1228source "drivers/regulator/Kconfig" 1229 1230source "drivers/uio/Kconfig" 1231 1232endmenu 1233 1234source "fs/Kconfig" 1235 1236source "arch/arm/Kconfig.debug" 1237 1238source "security/Kconfig" 1239 1240source "crypto/Kconfig" 1241 1242source "lib/Kconfig" 1243