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

