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