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