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_AOUT 12 select HAVE_IDE 13 select RTC_LIB 14 select SYS_SUPPORTS_APM_EMULATION 15 select GENERIC_ATOMIC64 if (!CPU_32v6K) 16 select HAVE_OPROFILE 17 select HAVE_ARCH_KGDB 18 select HAVE_KPROBES if (!XIP_KERNEL) 19 select HAVE_KRETPROBES if (HAVE_KPROBES) 20 select HAVE_FUNCTION_TRACER if (!XIP_KERNEL) 21 select HAVE_GENERIC_DMA_COHERENT 22 select HAVE_KERNEL_GZIP 23 select HAVE_KERNEL_LZO 24 select HAVE_PERF_EVENTS 25 select PERF_USE_VMALLOC 26 help 27 The ARM series is a line of low-power-consumption RISC chip designs 28 licensed by ARM Ltd and targeted at embedded applications and 29 handhelds such as the Compaq IPAQ. ARM-based PCs are no longer 30 manufactured, but legacy ARM-based PC hardware remains popular in 31 Europe. There is an ARM Linux project with a web page at 32 <http://www.arm.linux.org.uk/>. 33 34config HAVE_PWM 35 bool 36 37config SYS_SUPPORTS_APM_EMULATION 38 bool 39 40config GENERIC_GPIO 41 bool 42 43config GENERIC_TIME 44 bool 45 46config GENERIC_CLOCKEVENTS 47 bool 48 49config GENERIC_CLOCKEVENTS_BROADCAST 50 bool 51 depends on GENERIC_CLOCKEVENTS 52 default y if SMP && !LOCAL_TIMERS 53 54config HAVE_TCM 55 bool 56 select GENERIC_ALLOCATOR 57 58config HAVE_PROC_CPU 59 bool 60 61config NO_IOPORT 62 bool 63 64config EISA 65 bool 66 ---help--- 67 The Extended Industry Standard Architecture (EISA) bus was 68 developed as an open alternative to the IBM MicroChannel bus. 69 70 The EISA bus provided some of the features of the IBM MicroChannel 71 bus while maintaining backward compatibility with cards made for 72 the older ISA bus. The EISA bus saw limited use between 1988 and 73 1995 when it was made obsolete by the PCI bus. 74 75 Say Y here if you are building a kernel for an EISA-based machine. 76 77 Otherwise, say N. 78 79config SBUS 80 bool 81 82config MCA 83 bool 84 help 85 MicroChannel Architecture is found in some IBM PS/2 machines and 86 laptops. It is a bus system similar to PCI or ISA. See 87 <file:Documentation/mca.txt> (and especially the web page given 88 there) before attempting to build an MCA bus kernel. 89 90config GENERIC_HARDIRQS 91 bool 92 default y 93 94config STACKTRACE_SUPPORT 95 bool 96 default y 97 98config HAVE_LATENCYTOP_SUPPORT 99 bool 100 depends on !SMP 101 default y 102 103config LOCKDEP_SUPPORT 104 bool 105 default y 106 107config TRACE_IRQFLAGS_SUPPORT 108 bool 109 default y 110 111config HARDIRQS_SW_RESEND 112 bool 113 default y 114 115config GENERIC_IRQ_PROBE 116 bool 117 default y 118 119config GENERIC_LOCKBREAK 120 bool 121 default y 122 depends on SMP && PREEMPT 123 124config RWSEM_GENERIC_SPINLOCK 125 bool 126 default y 127 128config RWSEM_XCHGADD_ALGORITHM 129 bool 130 131config ARCH_HAS_ILOG2_U32 132 bool 133 134config ARCH_HAS_ILOG2_U64 135 bool 136 137config ARCH_HAS_CPUFREQ 138 bool 139 help 140 Internal node to signify that the ARCH has CPUFREQ support 141 and that the relevant menu configurations are displayed for 142 it. 143 144config GENERIC_HWEIGHT 145 bool 146 default y 147 148config GENERIC_CALIBRATE_DELAY 149 bool 150 default y 151 152config ARCH_MAY_HAVE_PC_FDC 153 bool 154 155config ZONE_DMA 156 bool 157 158config NEED_DMA_MAP_STATE 159 def_bool y 160 161config GENERIC_ISA_DMA 162 bool 163 164config FIQ 165 bool 166 167config ARCH_MTD_XIP 168 bool 169 170config GENERIC_HARDIRQS_NO__DO_IRQ 171 def_bool y 172 173config ARM_L1_CACHE_SHIFT_6 174 bool 175 help 176 Setting ARM L1 cache line size to 64 Bytes. 177 178if OPROFILE 179 180config OPROFILE_ARMV6 181 def_bool y 182 depends on CPU_V6 && !SMP 183 select OPROFILE_ARM11_CORE 184 185config OPROFILE_MPCORE 186 def_bool y 187 depends on CPU_V6 && SMP 188 select OPROFILE_ARM11_CORE 189 190config OPROFILE_ARM11_CORE 191 bool 192 193config OPROFILE_ARMV7 194 def_bool y 195 depends on CPU_V7 && !SMP 196 bool 197 198endif 199 200config VECTORS_BASE 201 hex 202 default 0xffff0000 if MMU || CPU_HIGH_VECTOR 203 default DRAM_BASE if REMAP_VECTORS_TO_RAM 204 default 0x00000000 205 help 206 The base address of exception vectors. 207 208source "init/Kconfig" 209 210source "kernel/Kconfig.freezer" 211 212menu "System Type" 213 214config MMU 215 bool "MMU-based Paged Memory Management Support" 216 default y 217 help 218 Select if you want MMU-based virtualised addressing space 219 support by paged memory management. If unsure, say 'Y'. 220 221# 222# The "ARM system type" choice list is ordered alphabetically by option 223# text. Please add new entries in the option alphabetic order. 224# 225choice 226 prompt "ARM system type" 227 default ARCH_VERSATILE 228 229config ARCH_AAEC2000 230 bool "Agilent AAEC-2000 based" 231 select CPU_ARM920T 232 select ARM_AMBA 233 select HAVE_CLK 234 help 235 This enables support for systems based on the Agilent AAEC-2000 236 237config ARCH_INTEGRATOR 238 bool "ARM Ltd. Integrator family" 239 select ARM_AMBA 240 select ARCH_HAS_CPUFREQ 241 select HAVE_CLK 242 select COMMON_CLKDEV 243 select ICST525 244 help 245 Support for ARM's Integrator platform. 246 247config ARCH_REALVIEW 248 bool "ARM Ltd. RealView family" 249 select ARM_AMBA 250 select HAVE_CLK 251 select COMMON_CLKDEV 252 select ICST307 253 select GENERIC_TIME 254 select GENERIC_CLOCKEVENTS 255 select ARCH_WANT_OPTIONAL_GPIOLIB 256 select GPIO_PL061 if GPIOLIB 257 help 258 This enables support for ARM Ltd RealView boards. 259 260config ARCH_VERSATILE 261 bool "ARM Ltd. Versatile family" 262 select ARM_AMBA 263 select ARM_VIC 264 select HAVE_CLK 265 select COMMON_CLKDEV 266 select ICST307 267 select GENERIC_TIME 268 select GENERIC_CLOCKEVENTS 269 select ARCH_WANT_OPTIONAL_GPIOLIB 270 help 271 This enables support for ARM Ltd Versatile board. 272 273config ARCH_AT91 274 bool "Atmel AT91" 275 select GENERIC_GPIO 276 select ARCH_REQUIRE_GPIOLIB 277 select HAVE_CLK 278 help 279 This enables support for systems based on the Atmel AT91RM9200, 280 AT91SAM9 and AT91CAP9 processors. 281 282config ARCH_BCMRING 283 bool "Broadcom BCMRING" 284 depends on MMU 285 select CPU_V6 286 select ARM_AMBA 287 select COMMON_CLKDEV 288 select GENERIC_TIME 289 select GENERIC_CLOCKEVENTS 290 select ARCH_WANT_OPTIONAL_GPIOLIB 291 help 292 Support for Broadcom's BCMRing platform. 293 294config ARCH_CLPS711X 295 bool "Cirrus Logic CLPS711x/EP721x-based" 296 select CPU_ARM720T 297 help 298 Support for Cirrus Logic 711x/721x based boards. 299 300config ARCH_CNS3XXX 301 bool "Cavium Networks CNS3XXX family" 302 select CPU_V6 303 select GENERIC_TIME 304 select GENERIC_CLOCKEVENTS 305 select ARM_GIC 306 help 307 Support for Cavium Networks CNS3XXX platform. 308 309config ARCH_GEMINI 310 bool "Cortina Systems Gemini" 311 select CPU_FA526 312 select GENERIC_GPIO 313 select ARCH_REQUIRE_GPIOLIB 314 help 315 Support for the Cortina Systems Gemini family SoCs 316 317config ARCH_EBSA110 318 bool "EBSA-110" 319 select CPU_SA110 320 select ISA 321 select NO_IOPORT 322 help 323 This is an evaluation board for the StrongARM processor available 324 from Digital. It has limited hardware on-board, including an 325 Ethernet interface, two PCMCIA sockets, two serial ports and a 326 parallel port. 327 328config ARCH_EP93XX 329 bool "EP93xx-based" 330 select CPU_ARM920T 331 select ARM_AMBA 332 select ARM_VIC 333 select GENERIC_GPIO 334 select HAVE_CLK 335 select COMMON_CLKDEV 336 select ARCH_REQUIRE_GPIOLIB 337 select ARCH_HAS_HOLES_MEMORYMODEL 338 help 339 This enables support for the Cirrus EP93xx series of CPUs. 340 341config ARCH_FOOTBRIDGE 342 bool "FootBridge" 343 select CPU_SA110 344 select FOOTBRIDGE 345 help 346 Support for systems based on the DC21285 companion chip 347 ("FootBridge"), such as the Simtec CATS and the Rebel NetWinder. 348 349config ARCH_MXC 350 bool "Freescale MXC/iMX-based" 351 select GENERIC_TIME 352 select GENERIC_CLOCKEVENTS 353 select ARCH_REQUIRE_GPIOLIB 354 select HAVE_CLK 355 select COMMON_CLKDEV 356 help 357 Support for Freescale MXC/iMX-based family of processors 358 359config ARCH_STMP3XXX 360 bool "Freescale STMP3xxx" 361 select CPU_ARM926T 362 select HAVE_CLK 363 select COMMON_CLKDEV 364 select ARCH_REQUIRE_GPIOLIB 365 select GENERIC_TIME 366 select GENERIC_CLOCKEVENTS 367 select GENERIC_GPIO 368 select USB_ARCH_HAS_EHCI 369 help 370 Support for systems based on the Freescale 3xxx CPUs. 371 372config ARCH_NETX 373 bool "Hilscher NetX based" 374 select CPU_ARM926T 375 select ARM_VIC 376 select GENERIC_CLOCKEVENTS 377 select GENERIC_TIME 378 help 379 This enables support for systems based on the Hilscher NetX Soc 380 381config ARCH_H720X 382 bool "Hynix HMS720x-based" 383 select CPU_ARM720T 384 select ISA_DMA_API 385 help 386 This enables support for systems based on the Hynix HMS720x 387 388config ARCH_IOP13XX 389 bool "IOP13xx-based" 390 depends on MMU 391 select CPU_XSC3 392 select PLAT_IOP 393 select PCI 394 select ARCH_SUPPORTS_MSI 395 select VMSPLIT_1G 396 help 397 Support for Intel's IOP13XX (XScale) family of processors. 398 399config ARCH_IOP32X 400 bool "IOP32x-based" 401 depends on MMU 402 select CPU_XSCALE 403 select PLAT_IOP 404 select PCI 405 select GENERIC_GPIO 406 select ARCH_REQUIRE_GPIOLIB 407 help 408 Support for Intel's 80219 and IOP32X (XScale) family of 409 processors. 410 411config ARCH_IOP33X 412 bool "IOP33x-based" 413 depends on MMU 414 select CPU_XSCALE 415 select PLAT_IOP 416 select PCI 417 select GENERIC_GPIO 418 select ARCH_REQUIRE_GPIOLIB 419 help 420 Support for Intel's IOP33X (XScale) family of processors. 421 422config ARCH_IXP23XX 423 bool "IXP23XX-based" 424 depends on MMU 425 select CPU_XSC3 426 select PCI 427 help 428 Support for Intel's IXP23xx (XScale) family of processors. 429 430config ARCH_IXP2000 431 bool "IXP2400/2800-based" 432 depends on MMU 433 select CPU_XSCALE 434 select PCI 435 help 436 Support for Intel's IXP2400/2800 (XScale) family of processors. 437 438config ARCH_IXP4XX 439 bool "IXP4xx-based" 440 depends on MMU 441 select CPU_XSCALE 442 select GENERIC_GPIO 443 select GENERIC_TIME 444 select GENERIC_CLOCKEVENTS 445 select DMABOUNCE if PCI 446 help 447 Support for Intel's IXP4XX (XScale) family of processors. 448 449config ARCH_L7200 450 bool "LinkUp-L7200" 451 select CPU_ARM720T 452 select FIQ 453 help 454 Say Y here if you intend to run this kernel on a LinkUp Systems 455 L7200 Software Development Board which uses an ARM720T processor. 456 Information on this board can be obtained at: 457 458 <http://www.linkupsys.com/> 459 460 If you have any questions or comments about the Linux kernel port 461 to this board, send e-mail to <sjhill@cotw.com>. 462 463config ARCH_DOVE 464 bool "Marvell Dove" 465 select PCI 466 select GENERIC_GPIO 467 select ARCH_REQUIRE_GPIOLIB 468 select GENERIC_TIME 469 select GENERIC_CLOCKEVENTS 470 select PLAT_ORION 471 help 472 Support for the Marvell Dove SoC 88AP510 473 474config ARCH_KIRKWOOD 475 bool "Marvell Kirkwood" 476 select CPU_FEROCEON 477 select PCI 478 select GENERIC_GPIO 479 select ARCH_REQUIRE_GPIOLIB 480 select GENERIC_TIME 481 select GENERIC_CLOCKEVENTS 482 select PLAT_ORION 483 help 484 Support for the following Marvell Kirkwood series SoCs: 485 88F6180, 88F6192 and 88F6281. 486 487config ARCH_LOKI 488 bool "Marvell Loki (88RC8480)" 489 select CPU_FEROCEON 490 select GENERIC_TIME 491 select GENERIC_CLOCKEVENTS 492 select PLAT_ORION 493 help 494 Support for the Marvell Loki (88RC8480) SoC. 495 496config ARCH_MV78XX0 497 bool "Marvell MV78xx0" 498 select CPU_FEROCEON 499 select PCI 500 select GENERIC_GPIO 501 select ARCH_REQUIRE_GPIOLIB 502 select GENERIC_TIME 503 select GENERIC_CLOCKEVENTS 504 select PLAT_ORION 505 help 506 Support for the following Marvell MV78xx0 series SoCs: 507 MV781x0, MV782x0. 508 509config ARCH_ORION5X 510 bool "Marvell Orion" 511 depends on MMU 512 select CPU_FEROCEON 513 select PCI 514 select GENERIC_GPIO 515 select ARCH_REQUIRE_GPIOLIB 516 select GENERIC_TIME 517 select GENERIC_CLOCKEVENTS 518 select PLAT_ORION 519 help 520 Support for the following Marvell Orion 5x series SoCs: 521 Orion-1 (5181), Orion-VoIP (5181L), Orion-NAS (5182), 522 Orion-2 (5281), Orion-1-90 (6183). 523 524config ARCH_MMP 525 bool "Marvell PXA168/910/MMP2" 526 depends on MMU 527 select GENERIC_GPIO 528 select ARCH_REQUIRE_GPIOLIB 529 select HAVE_CLK 530 select COMMON_CLKDEV 531 select GENERIC_TIME 532 select GENERIC_CLOCKEVENTS 533 select TICK_ONESHOT 534 select PLAT_PXA 535 help 536 Support for Marvell's PXA168/PXA910(MMP) and MMP2 processor line. 537 538config ARCH_KS8695 539 bool "Micrel/Kendin KS8695" 540 select CPU_ARM922T 541 select GENERIC_GPIO 542 select ARCH_REQUIRE_GPIOLIB 543 help 544 Support for Micrel/Kendin KS8695 "Centaur" (ARM922T) based 545 System-on-Chip devices. 546 547config ARCH_NS9XXX 548 bool "NetSilicon NS9xxx" 549 select CPU_ARM926T 550 select GENERIC_GPIO 551 select GENERIC_TIME 552 select GENERIC_CLOCKEVENTS 553 select HAVE_CLK 554 help 555 Say Y here if you intend to run this kernel on a NetSilicon NS9xxx 556 System. 557 558 <http://www.digi.com/products/microprocessors/index.jsp> 559 560config ARCH_W90X900 561 bool "Nuvoton W90X900 CPU" 562 select CPU_ARM926T 563 select ARCH_REQUIRE_GPIOLIB 564 select GENERIC_GPIO 565 select HAVE_CLK 566 select COMMON_CLKDEV 567 select GENERIC_TIME 568 select GENERIC_CLOCKEVENTS 569 help 570 Support for Nuvoton (Winbond logic dept.) ARM9 processor, 571 At present, the w90x900 has been renamed nuc900, regarding 572 the ARM series product line, you can login the following 573 link address to know more. 574 575 <http://www.nuvoton.com/hq/enu/ProductAndSales/ProductLines/ 576 ConsumerElectronicsIC/ARMMicrocontroller/ARMMicrocontroller> 577 578config ARCH_NUC93X 579 bool "Nuvoton NUC93X CPU" 580 select CPU_ARM926T 581 select HAVE_CLK 582 select COMMON_CLKDEV 583 help 584 Support for Nuvoton (Winbond logic dept.) NUC93X MCU,The NUC93X is a 585 low-power and high performance MPEG-4/JPEG multimedia controller chip. 586 587config ARCH_PNX4008 588 bool "Philips Nexperia PNX4008 Mobile" 589 select CPU_ARM926T 590 select HAVE_CLK 591 select COMMON_CLKDEV 592 help 593 This enables support for Philips PNX4008 mobile platform. 594 595config ARCH_PXA 596 bool "PXA2xx/PXA3xx-based" 597 depends on MMU 598 select ARCH_MTD_XIP 599 select ARCH_HAS_CPUFREQ 600 select GENERIC_GPIO 601 select HAVE_CLK 602 select COMMON_CLKDEV 603 select ARCH_REQUIRE_GPIOLIB 604 select GENERIC_TIME 605 select GENERIC_CLOCKEVENTS 606 select TICK_ONESHOT 607 select PLAT_PXA 608 help 609 Support for Intel/Marvell's PXA2xx/PXA3xx processor line. 610 611config ARCH_MSM 612 bool "Qualcomm MSM" 613 select HAVE_CLK 614 select GENERIC_TIME 615 select GENERIC_CLOCKEVENTS 616 help 617 Support for Qualcomm MSM/QSD based systems. This runs on the 618 apps processor of the MSM/QSD and depends on a shared memory 619 interface to the modem processor which runs the baseband 620 stack and controls some vital subsystems 621 (clock and power control, etc). 622 623config ARCH_SHMOBILE 624 bool "Renesas SH-Mobile" 625 help 626 Support for Renesas's SH-Mobile ARM platforms 627 628config ARCH_RPC 629 bool "RiscPC" 630 select ARCH_ACORN 631 select FIQ 632 select TIMER_ACORN 633 select ARCH_MAY_HAVE_PC_FDC 634 select HAVE_PATA_PLATFORM 635 select ISA_DMA_API 636 select NO_IOPORT 637 select ARCH_SPARSEMEM_ENABLE 638 help 639 On the Acorn Risc-PC, Linux can support the internal IDE disk and 640 CD-ROM interface, serial and parallel port, and the floppy drive. 641 642config ARCH_SA1100 643 bool "SA1100-based" 644 select CPU_SA1100 645 select ISA 646 select ARCH_SPARSEMEM_ENABLE 647 select ARCH_MTD_XIP 648 select ARCH_HAS_CPUFREQ 649 select CPU_FREQ 650 select GENERIC_GPIO 651 select GENERIC_TIME 652 select GENERIC_CLOCKEVENTS 653 select HAVE_CLK 654 select TICK_ONESHOT 655 select ARCH_REQUIRE_GPIOLIB 656 help 657 Support for StrongARM 11x0 based boards. 658 659config ARCH_S3C2410 660 bool "Samsung S3C2410, S3C2412, S3C2413, S3C2440, S3C2442, S3C2443" 661 select GENERIC_GPIO 662 select ARCH_HAS_CPUFREQ 663 select HAVE_CLK 664 help 665 Samsung S3C2410X CPU based systems, such as the Simtec Electronics 666 BAST (<http://www.simtec.co.uk/products/EB110ITX/>), the IPAQ 1940 or 667 the Samsung SMDK2410 development board (and derivatives). 668 669config ARCH_S3C64XX 670 bool "Samsung S3C64XX" 671 select PLAT_SAMSUNG 672 select CPU_V6 673 select GENERIC_GPIO 674 select ARM_VIC 675 select HAVE_CLK 676 select NO_IOPORT 677 select ARCH_HAS_CPUFREQ 678 select ARCH_REQUIRE_GPIOLIB 679 select SAMSUNG_CLKSRC 680 select SAMSUNG_IRQ_VIC_TIMER 681 select SAMSUNG_IRQ_UART 682 select S3C_GPIO_TRACK 683 select S3C_GPIO_PULL_UPDOWN 684 select S3C_GPIO_CFG_S3C24XX 685 select S3C_GPIO_CFG_S3C64XX 686 select S3C_DEV_NAND 687 select USB_ARCH_HAS_OHCI 688 select SAMSUNG_GPIOLIB_4BIT 689 help 690 Samsung S3C64XX series based systems 691 692config ARCH_S5P6440 693 bool "Samsung S5P6440" 694 select CPU_V6 695 select GENERIC_GPIO 696 select HAVE_CLK 697 help 698 Samsung S5P6440 CPU based systems 699 700config ARCH_S5P6442 701 bool "Samsung S5P6442" 702 select CPU_V6 703 select GENERIC_GPIO 704 select HAVE_CLK 705 help 706 Samsung S5P6442 CPU based systems 707 708config ARCH_S5PC1XX 709 bool "Samsung S5PC1XX" 710 select GENERIC_GPIO 711 select HAVE_CLK 712 select CPU_V7 713 select ARM_L1_CACHE_SHIFT_6 714 help 715 Samsung S5PC1XX series based systems 716 717config ARCH_S5PV210 718 bool "Samsung S5PV210/S5PC110" 719 select CPU_V7 720 select GENERIC_GPIO 721 select HAVE_CLK 722 select ARM_L1_CACHE_SHIFT_6 723 help 724 Samsung S5PV210/S5PC110 series based systems 725 726config ARCH_SHARK 727 bool "Shark" 728 select CPU_SA110 729 select ISA 730 select ISA_DMA 731 select ZONE_DMA 732 select PCI 733 help 734 Support for the StrongARM based Digital DNARD machine, also known 735 as "Shark" (<http://www.shark-linux.de/shark.html>). 736 737config ARCH_LH7A40X 738 bool "Sharp LH7A40X" 739 select CPU_ARM922T 740 select ARCH_DISCONTIGMEM_ENABLE if !LH7A40X_CONTIGMEM 741 select ARCH_SPARSEMEM_ENABLE if !LH7A40X_CONTIGMEM 742 help 743 Say Y here for systems based on one of the Sharp LH7A40X 744 System on a Chip processors. These CPUs include an ARM922T 745 core with a wide array of integrated devices for 746 hand-held and low-power applications. 747 748config ARCH_U300 749 bool "ST-Ericsson U300 Series" 750 depends on MMU 751 select CPU_ARM926T 752 select HAVE_TCM 753 select ARM_AMBA 754 select ARM_VIC 755 select GENERIC_TIME 756 select GENERIC_CLOCKEVENTS 757 select HAVE_CLK 758 select COMMON_CLKDEV 759 select GENERIC_GPIO 760 help 761 Support for ST-Ericsson U300 series mobile platforms. 762 763config ARCH_U8500 764 bool "ST-Ericsson U8500 Series" 765 select CPU_V7 766 select ARM_AMBA 767 select GENERIC_TIME 768 select GENERIC_CLOCKEVENTS 769 select COMMON_CLKDEV 770 help 771 Support for ST-Ericsson's Ux500 architecture 772 773config ARCH_NOMADIK 774 bool "STMicroelectronics Nomadik" 775 select ARM_AMBA 776 select ARM_VIC 777 select CPU_ARM926T 778 select HAVE_CLK 779 select COMMON_CLKDEV 780 select GENERIC_TIME 781 select GENERIC_CLOCKEVENTS 782 select GENERIC_GPIO 783 select ARCH_REQUIRE_GPIOLIB 784 help 785 Support for the Nomadik platform by ST-Ericsson 786 787config ARCH_DAVINCI 788 bool "TI DaVinci" 789 select CPU_ARM926T 790 select GENERIC_TIME 791 select GENERIC_CLOCKEVENTS 792 select GENERIC_GPIO 793 select ARCH_REQUIRE_GPIOLIB 794 select HAVE_CLK 795 select ZONE_DMA 796 select HAVE_IDE 797 select COMMON_CLKDEV 798 select GENERIC_ALLOCATOR 799 select ARCH_HAS_HOLES_MEMORYMODEL 800 help 801 Support for TI's DaVinci platform. 802 803config ARCH_OMAP 804 bool "TI OMAP" 805 select GENERIC_GPIO 806 select HAVE_CLK 807 select ARCH_REQUIRE_GPIOLIB 808 select ARCH_HAS_CPUFREQ 809 select GENERIC_TIME 810 select GENERIC_CLOCKEVENTS 811 select ARCH_HAS_HOLES_MEMORYMODEL 812 help 813 Support for TI's OMAP platform (OMAP1 and OMAP2). 814 815endchoice 816 817# 818# This is sorted alphabetically by mach-* pathname. However, plat-* 819# Kconfigs may be included either alphabetically (according to the 820# plat- suffix) or along side the corresponding mach-* source. 821# 822source "arch/arm/mach-aaec2000/Kconfig" 823 824source "arch/arm/mach-at91/Kconfig" 825 826source "arch/arm/mach-bcmring/Kconfig" 827 828source "arch/arm/mach-clps711x/Kconfig" 829 830source "arch/arm/mach-cns3xxx/Kconfig" 831 832source "arch/arm/mach-davinci/Kconfig" 833 834source "arch/arm/mach-dove/Kconfig" 835 836source "arch/arm/mach-ep93xx/Kconfig" 837 838source "arch/arm/mach-footbridge/Kconfig" 839 840source "arch/arm/mach-gemini/Kconfig" 841 842source "arch/arm/mach-h720x/Kconfig" 843 844source "arch/arm/mach-integrator/Kconfig" 845 846source "arch/arm/mach-iop32x/Kconfig" 847 848source "arch/arm/mach-iop33x/Kconfig" 849 850source "arch/arm/mach-iop13xx/Kconfig" 851 852source "arch/arm/mach-ixp4xx/Kconfig" 853 854source "arch/arm/mach-ixp2000/Kconfig" 855 856source "arch/arm/mach-ixp23xx/Kconfig" 857 858source "arch/arm/mach-kirkwood/Kconfig" 859 860source "arch/arm/mach-ks8695/Kconfig" 861 862source "arch/arm/mach-lh7a40x/Kconfig" 863 864source "arch/arm/mach-loki/Kconfig" 865 866source "arch/arm/mach-msm/Kconfig" 867 868source "arch/arm/mach-mv78xx0/Kconfig" 869 870source "arch/arm/plat-mxc/Kconfig" 871 872source "arch/arm/mach-netx/Kconfig" 873 874source "arch/arm/mach-nomadik/Kconfig" 875source "arch/arm/plat-nomadik/Kconfig" 876 877source "arch/arm/mach-ns9xxx/Kconfig" 878 879source "arch/arm/mach-nuc93x/Kconfig" 880 881source "arch/arm/plat-omap/Kconfig" 882 883source "arch/arm/mach-omap1/Kconfig" 884 885source "arch/arm/mach-omap2/Kconfig" 886 887source "arch/arm/mach-orion5x/Kconfig" 888 889source "arch/arm/mach-pxa/Kconfig" 890source "arch/arm/plat-pxa/Kconfig" 891 892source "arch/arm/mach-mmp/Kconfig" 893 894source "arch/arm/mach-realview/Kconfig" 895 896source "arch/arm/mach-sa1100/Kconfig" 897 898source "arch/arm/plat-samsung/Kconfig" 899source "arch/arm/plat-s3c24xx/Kconfig" 900source "arch/arm/plat-s5p/Kconfig" 901source "arch/arm/plat-s5pc1xx/Kconfig" 902 903if ARCH_S3C2410 904source "arch/arm/mach-s3c2400/Kconfig" 905source "arch/arm/mach-s3c2410/Kconfig" 906source "arch/arm/mach-s3c2412/Kconfig" 907source "arch/arm/mach-s3c2440/Kconfig" 908source "arch/arm/mach-s3c2443/Kconfig" 909endif 910 911if ARCH_S3C64XX 912source "arch/arm/mach-s3c64xx/Kconfig" 913endif 914 915source "arch/arm/mach-s5p6440/Kconfig" 916 917source "arch/arm/mach-s5p6442/Kconfig" 918 919if ARCH_S5PC1XX 920source "arch/arm/mach-s5pc100/Kconfig" 921endif 922 923source "arch/arm/mach-s5pv210/Kconfig" 924 925source "arch/arm/mach-shmobile/Kconfig" 926 927source "arch/arm/plat-stmp3xxx/Kconfig" 928 929source "arch/arm/mach-u300/Kconfig" 930 931source "arch/arm/mach-ux500/Kconfig" 932 933source "arch/arm/mach-versatile/Kconfig" 934 935source "arch/arm/mach-w90x900/Kconfig" 936 937# Definitions to make life easier 938config ARCH_ACORN 939 bool 940 941config PLAT_IOP 942 bool 943 select GENERIC_CLOCKEVENTS 944 select GENERIC_TIME 945 946config PLAT_ORION 947 bool 948 949config PLAT_PXA 950 bool 951 952source arch/arm/mm/Kconfig 953 954config IWMMXT 955 bool "Enable iWMMXt support" 956 depends on CPU_XSCALE || CPU_XSC3 || CPU_MOHAWK 957 default y if PXA27x || PXA3xx || ARCH_MMP 958 help 959 Enable support for iWMMXt context switching at run time if 960 running on a CPU that supports it. 961 962# bool 'Use XScale PMU as timer source' CONFIG_XSCALE_PMU_TIMER 963config XSCALE_PMU 964 bool 965 depends on CPU_XSCALE && !XSCALE_PMU_TIMER 966 default y 967 968config CPU_HAS_PMU 969 depends on CPU_V6 || CPU_V7 || XSCALE_PMU 970 default y 971 bool 972 973if !MMU 974source "arch/arm/Kconfig-nommu" 975endif 976 977config ARM_ERRATA_411920 978 bool "ARM errata: Invalidation of the Instruction Cache operation can fail" 979 depends on CPU_V6 && !SMP 980 help 981 Invalidation of the Instruction Cache operation can 982 fail. This erratum is present in 1136 (before r1p4), 1156 and 1176. 983 It does not affect the MPCore. This option enables the ARM Ltd. 984 recommended workaround. 985 986config ARM_ERRATA_430973 987 bool "ARM errata: Stale prediction on replaced interworking branch" 988 depends on CPU_V7 989 help 990 This option enables the workaround for the 430973 Cortex-A8 991 (r1p0..r1p2) erratum. If a code sequence containing an ARM/Thumb 992 interworking branch is replaced with another code sequence at the 993 same virtual address, whether due to self-modifying code or virtual 994 to physical address re-mapping, Cortex-A8 does not recover from the 995 stale interworking branch prediction. This results in Cortex-A8 996 executing the new code sequence in the incorrect ARM or Thumb state. 997 The workaround enables the BTB/BTAC operations by setting ACTLR.IBE 998 and also flushes the branch target cache at every context switch. 999 Note that setting specific bits in the ACTLR register may not be 1000 available in non-secure mode. 1001 1002config ARM_ERRATA_458693 1003 bool "ARM errata: Processor deadlock when a false hazard is created" 1004 depends on CPU_V7 1005 help 1006 This option enables the workaround for the 458693 Cortex-A8 (r2p0) 1007 erratum. For very specific sequences of memory operations, it is 1008 possible for a hazard condition intended for a cache line to instead 1009 be incorrectly associated with a different cache line. This false 1010 hazard might then cause a processor deadlock. The workaround enables 1011 the L1 caching of the NEON accesses and disables the PLD instruction 1012 in the ACTLR register. Note that setting specific bits in the ACTLR 1013 register may not be available in non-secure mode. 1014 1015config ARM_ERRATA_460075 1016 bool "ARM errata: Data written to the L2 cache can be overwritten with stale data" 1017 depends on CPU_V7 1018 help 1019 This option enables the workaround for the 460075 Cortex-A8 (r2p0) 1020 erratum. Any asynchronous access to the L2 cache may encounter a 1021 situation in which recent store transactions to the L2 cache are lost 1022 and overwritten with stale memory contents from external memory. The 1023 workaround disables the write-allocate mode for the L2 cache via the 1024 ACTLR register. Note that setting specific bits in the ACTLR register 1025 may not be available in non-secure mode. 1026 1027config PL310_ERRATA_588369 1028 bool "Clean & Invalidate maintenance operations do not invalidate clean lines" 1029 depends on CACHE_L2X0 && ARCH_OMAP4 1030 help 1031 The PL310 L2 cache controller implements three types of Clean & 1032 Invalidate maintenance operations: by Physical Address 1033 (offset 0x7F0), by Index/Way (0x7F8) and by Way (0x7FC). 1034 They are architecturally defined to behave as the execution of a 1035 clean operation followed immediately by an invalidate operation, 1036 both performing to the same memory location. This functionality 1037 is not correctly implemented in PL310 as clean lines are not 1038 invalidated as a result of these operations. Note that this errata 1039 uses Texas Instrument's secure monitor api. 1040endmenu 1041 1042source "arch/arm/common/Kconfig" 1043 1044config FORCE_MAX_ZONEORDER 1045 int 1046 depends on SA1111 1047 default "9" 1048 1049menu "Bus support" 1050 1051config ARM_AMBA 1052 bool 1053 1054config ISA 1055 bool 1056 help 1057 Find out whether you have ISA slots on your motherboard. ISA is the 1058 name of a bus system, i.e. the way the CPU talks to the other stuff 1059 inside your box. Other bus systems are PCI, EISA, MicroChannel 1060 (MCA) or VESA. ISA is an older system, now being displaced by PCI; 1061 newer boards don't support it. If you have ISA, say Y, otherwise N. 1062 1063# Select ISA DMA controller support 1064config ISA_DMA 1065 bool 1066 select ISA_DMA_API 1067 1068# Select ISA DMA interface 1069config ISA_DMA_API 1070 bool 1071 1072config PCI 1073 bool "PCI support" if ARCH_INTEGRATOR_AP || ARCH_VERSATILE_PB || ARCH_IXP4XX || ARCH_KS8695 || MACH_ARMCORE 1074 help 1075 Find out whether you have a PCI motherboard. PCI is the name of a 1076 bus system, i.e. the way the CPU talks to the other stuff inside 1077 your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or 1078 VESA. If you have PCI, say Y, otherwise N. 1079 1080config PCI_SYSCALL 1081 def_bool PCI 1082 1083# Select the host bridge type 1084config PCI_HOST_VIA82C505 1085 bool 1086 depends on PCI && ARCH_SHARK 1087 default y 1088 1089config PCI_HOST_ITE8152 1090 bool 1091 depends on PCI && MACH_ARMCORE 1092 default y 1093 select DMABOUNCE 1094 1095source "drivers/pci/Kconfig" 1096 1097source "drivers/pcmcia/Kconfig" 1098 1099endmenu 1100 1101menu "Kernel Features" 1102 1103source "kernel/time/Kconfig" 1104 1105config SMP 1106 bool "Symmetric Multi-Processing (EXPERIMENTAL)" 1107 depends on EXPERIMENTAL && (REALVIEW_EB_ARM11MP || REALVIEW_EB_A9MP ||\ 1108 MACH_REALVIEW_PB11MP || MACH_REALVIEW_PBX || ARCH_OMAP4 || ARCH_U8500) 1109 depends on GENERIC_CLOCKEVENTS 1110 select USE_GENERIC_SMP_HELPERS 1111 select HAVE_ARM_SCU if (ARCH_REALVIEW || ARCH_OMAP4 || ARCH_U8500) 1112 help 1113 This enables support for systems with more than one CPU. If you have 1114 a system with only one CPU, like most personal computers, say N. If 1115 you have a system with more than one CPU, say Y. 1116 1117 If you say N here, the kernel will run on single and multiprocessor 1118 machines, but will use only one CPU of a multiprocessor machine. If 1119 you say Y here, the kernel will run on many, but not all, single 1120 processor machines. On a single processor machine, the kernel will 1121 run faster if you say N here. 1122 1123 See also <file:Documentation/i386/IO-APIC.txt>, 1124 <file:Documentation/nmi_watchdog.txt> and the SMP-HOWTO available at 1125 <http://www.linuxdoc.org/docs.html#howto>. 1126 1127 If you don't know what to do here, say N. 1128 1129config HAVE_ARM_SCU 1130 bool 1131 depends on SMP 1132 help 1133 This option enables support for the ARM system coherency unit 1134 1135config HAVE_ARM_TWD 1136 bool 1137 depends on SMP 1138 help 1139 This options enables support for the ARM timer and watchdog unit 1140 1141choice 1142 prompt "Memory split" 1143 default VMSPLIT_3G 1144 help 1145 Select the desired split between kernel and user memory. 1146 1147 If you are not absolutely sure what you are doing, leave this 1148 option alone! 1149 1150 config VMSPLIT_3G 1151 bool "3G/1G user/kernel split" 1152 config VMSPLIT_2G 1153 bool "2G/2G user/kernel split" 1154 config VMSPLIT_1G 1155 bool "1G/3G user/kernel split" 1156endchoice 1157 1158config PAGE_OFFSET 1159 hex 1160 default 0x40000000 if VMSPLIT_1G 1161 default 0x80000000 if VMSPLIT_2G 1162 default 0xC0000000 1163 1164config NR_CPUS 1165 int "Maximum number of CPUs (2-32)" 1166 range 2 32 1167 depends on SMP 1168 default "4" 1169 1170config HOTPLUG_CPU 1171 bool "Support for hot-pluggable CPUs (EXPERIMENTAL)" 1172 depends on SMP && HOTPLUG && EXPERIMENTAL 1173 help 1174 Say Y here to experiment with turning CPUs off and on. CPUs 1175 can be controlled through /sys/devices/system/cpu. 1176 1177config LOCAL_TIMERS 1178 bool "Use local timer interrupts" 1179 depends on SMP && (REALVIEW_EB_ARM11MP || MACH_REALVIEW_PB11MP || \ 1180 REALVIEW_EB_A9MP || MACH_REALVIEW_PBX || ARCH_OMAP4 || ARCH_U8500) 1181 default y 1182 select HAVE_ARM_TWD if (ARCH_REALVIEW || ARCH_OMAP4 || ARCH_U8500) 1183 help 1184 Enable support for local timers on SMP platforms, rather then the 1185 legacy IPI broadcast method. Local timers allows the system 1186 accounting to be spread across the timer interval, preventing a 1187 "thundering herd" at every timer tick. 1188 1189source kernel/Kconfig.preempt 1190 1191config HZ 1192 int 1193 default 128 if ARCH_L7200 1194 default 200 if ARCH_EBSA110 || ARCH_S3C2410 || ARCH_S5P6440 || ARCH_S5P6442 || ARCH_S5PV210 1195 default OMAP_32K_TIMER_HZ if ARCH_OMAP && OMAP_32K_TIMER 1196 default AT91_TIMER_HZ if ARCH_AT91 1197 default 100 1198 1199config THUMB2_KERNEL 1200 bool "Compile the kernel in Thumb-2 mode" 1201 depends on CPU_V7 && EXPERIMENTAL 1202 select AEABI 1203 select ARM_ASM_UNIFIED 1204 help 1205 By enabling this option, the kernel will be compiled in 1206 Thumb-2 mode. A compiler/assembler that understand the unified 1207 ARM-Thumb syntax is needed. 1208 1209 If unsure, say N. 1210 1211config ARM_ASM_UNIFIED 1212 bool 1213 1214config AEABI 1215 bool "Use the ARM EABI to compile the kernel" 1216 help 1217 This option allows for the kernel to be compiled using the latest 1218 ARM ABI (aka EABI). This is only useful if you are using a user 1219 space environment that is also compiled with EABI. 1220 1221 Since there are major incompatibilities between the legacy ABI and 1222 EABI, especially with regard to structure member alignment, this 1223 option also changes the kernel syscall calling convention to 1224 disambiguate both ABIs and allow for backward compatibility support 1225 (selected with CONFIG_OABI_COMPAT). 1226 1227 To use this you need GCC version 4.0.0 or later. 1228 1229config OABI_COMPAT 1230 bool "Allow old ABI binaries to run with this kernel (EXPERIMENTAL)" 1231 depends on AEABI && EXPERIMENTAL 1232 default y 1233 help 1234 This option preserves the old syscall interface along with the 1235 new (ARM EABI) one. It also provides a compatibility layer to 1236 intercept syscalls that have structure arguments which layout 1237 in memory differs between the legacy ABI and the new ARM EABI 1238 (only for non "thumb" binaries). This option adds a tiny 1239 overhead to all syscalls and produces a slightly larger kernel. 1240 If you know you'll be using only pure EABI user space then you 1241 can say N here. If this option is not selected and you attempt 1242 to execute a legacy ABI binary then the result will be 1243 UNPREDICTABLE (in fact it can be predicted that it won't work 1244 at all). If in doubt say Y. 1245 1246config ARCH_HAS_HOLES_MEMORYMODEL 1247 bool 1248 1249# Discontigmem is deprecated 1250config ARCH_DISCONTIGMEM_ENABLE 1251 bool 1252 1253config ARCH_SPARSEMEM_ENABLE 1254 bool 1255 1256config ARCH_SPARSEMEM_DEFAULT 1257 def_bool ARCH_SPARSEMEM_ENABLE 1258 1259config ARCH_SELECT_MEMORY_MODEL 1260 def_bool ARCH_DISCONTIGMEM_ENABLE && ARCH_SPARSEMEM_ENABLE 1261 1262config NODES_SHIFT 1263 int 1264 default "4" if ARCH_LH7A40X 1265 default "2" 1266 depends on NEED_MULTIPLE_NODES 1267 1268config HIGHMEM 1269 bool "High Memory Support (EXPERIMENTAL)" 1270 depends on MMU && EXPERIMENTAL 1271 help 1272 The address space of ARM processors is only 4 Gigabytes large 1273 and it has to accommodate user address space, kernel address 1274 space as well as some memory mapped IO. That means that, if you 1275 have a large amount of physical memory and/or IO, not all of the 1276 memory can be "permanently mapped" by the kernel. The physical 1277 memory that is not permanently mapped is called "high memory". 1278 1279 Depending on the selected kernel/user memory split, minimum 1280 vmalloc space and actual amount of RAM, you may not need this 1281 option which should result in a slightly faster kernel. 1282 1283 If unsure, say n. 1284 1285config HIGHPTE 1286 bool "Allocate 2nd-level pagetables from highmem" 1287 depends on HIGHMEM 1288 depends on !OUTER_CACHE 1289 1290config HW_PERF_EVENTS 1291 bool "Enable hardware performance counter support for perf events" 1292 depends on PERF_EVENTS && CPU_HAS_PMU && (CPU_V6 || CPU_V7) 1293 default y 1294 help 1295 Enable hardware performance counter support for perf events. If 1296 disabled, perf events will use software events only. 1297 1298source "mm/Kconfig" 1299 1300config LEDS 1301 bool "Timer and CPU usage LEDs" 1302 depends on ARCH_CDB89712 || ARCH_EBSA110 || \ 1303 ARCH_EBSA285 || ARCH_INTEGRATOR || \ 1304 ARCH_LUBBOCK || MACH_MAINSTONE || ARCH_NETWINDER || \ 1305 ARCH_OMAP || ARCH_P720T || ARCH_PXA_IDP || \ 1306 ARCH_SA1100 || ARCH_SHARK || ARCH_VERSATILE || \ 1307 ARCH_AT91 || ARCH_DAVINCI || \ 1308 ARCH_KS8695 || MACH_RD88F5182 || ARCH_REALVIEW 1309 help 1310 If you say Y here, the LEDs on your machine will be used 1311 to provide useful information about your current system status. 1312 1313 If you are compiling a kernel for a NetWinder or EBSA-285, you will 1314 be able to select which LEDs are active using the options below. If 1315 you are compiling a kernel for the EBSA-110 or the LART however, the 1316 red LED will simply flash regularly to indicate that the system is 1317 still functional. It is safe to say Y here if you have a CATS 1318 system, but the driver will do nothing. 1319 1320config LEDS_TIMER 1321 bool "Timer LED" if (!ARCH_CDB89712 && !ARCH_OMAP) || \ 1322 OMAP_OSK_MISTRAL || MACH_OMAP_H2 \ 1323 || MACH_OMAP_PERSEUS2 1324 depends on LEDS 1325 depends on !GENERIC_CLOCKEVENTS 1326 default y if ARCH_EBSA110 1327 help 1328 If you say Y here, one of the system LEDs (the green one on the 1329 NetWinder, the amber one on the EBSA285, or the red one on the LART) 1330 will flash regularly to indicate that the system is still 1331 operational. This is mainly useful to kernel hackers who are 1332 debugging unstable kernels. 1333 1334 The LART uses the same LED for both Timer LED and CPU usage LED 1335 functions. You may choose to use both, but the Timer LED function 1336 will overrule the CPU usage LED. 1337 1338config LEDS_CPU 1339 bool "CPU usage LED" if (!ARCH_CDB89712 && !ARCH_EBSA110 && \ 1340 !ARCH_OMAP) \ 1341 || OMAP_OSK_MISTRAL || MACH_OMAP_H2 \ 1342 || MACH_OMAP_PERSEUS2 1343 depends on LEDS 1344 help 1345 If you say Y here, the red LED will be used to give a good real 1346 time indication of CPU usage, by lighting whenever the idle task 1347 is not currently executing. 1348 1349 The LART uses the same LED for both Timer LED and CPU usage LED 1350 functions. You may choose to use both, but the Timer LED function 1351 will overrule the CPU usage LED. 1352 1353config ALIGNMENT_TRAP 1354 bool 1355 depends on CPU_CP15_MMU 1356 default y if !ARCH_EBSA110 1357 select HAVE_PROC_CPU if PROC_FS 1358 help 1359 ARM processors cannot fetch/store information which is not 1360 naturally aligned on the bus, i.e., a 4 byte fetch must start at an 1361 address divisible by 4. On 32-bit ARM processors, these non-aligned 1362 fetch/store instructions will be emulated in software if you say 1363 here, which has a severe performance impact. This is necessary for 1364 correct operation of some network protocols. With an IP-only 1365 configuration it is safe to say N, otherwise say Y. 1366 1367config UACCESS_WITH_MEMCPY 1368 bool "Use kernel mem{cpy,set}() for {copy_to,clear}_user() (EXPERIMENTAL)" 1369 depends on MMU && EXPERIMENTAL 1370 default y if CPU_FEROCEON 1371 help 1372 Implement faster copy_to_user and clear_user methods for CPU 1373 cores where a 8-word STM instruction give significantly higher 1374 memory write throughput than a sequence of individual 32bit stores. 1375 1376 A possible side effect is a slight increase in scheduling latency 1377 between threads sharing the same address space if they invoke 1378 such copy operations with large buffers. 1379 1380 However, if the CPU data cache is using a write-allocate mode, 1381 this option is unlikely to provide any performance gain. 1382 1383endmenu 1384 1385menu "Boot options" 1386 1387# Compressed boot loader in ROM. Yes, we really want to ask about 1388# TEXT and BSS so we preserve their values in the config files. 1389config ZBOOT_ROM_TEXT 1390 hex "Compressed ROM boot loader base address" 1391 default "0" 1392 help 1393 The physical address at which the ROM-able zImage is to be 1394 placed in the target. Platforms which normally make use of 1395 ROM-able zImage formats normally set this to a suitable 1396 value in their defconfig file. 1397 1398 If ZBOOT_ROM is not enabled, this has no effect. 1399 1400config ZBOOT_ROM_BSS 1401 hex "Compressed ROM boot loader BSS address" 1402 default "0" 1403 help 1404 The base address of an area of read/write memory in the target 1405 for the ROM-able zImage which must be available while the 1406 decompressor is running. It must be large enough to hold the 1407 entire decompressed kernel plus an additional 128 KiB. 1408 Platforms which normally make use of ROM-able zImage formats 1409 normally set this to a suitable value in their defconfig file. 1410 1411 If ZBOOT_ROM is not enabled, this has no effect. 1412 1413config ZBOOT_ROM 1414 bool "Compressed boot loader in ROM/flash" 1415 depends on ZBOOT_ROM_TEXT != ZBOOT_ROM_BSS 1416 help 1417 Say Y here if you intend to execute your compressed kernel image 1418 (zImage) directly from ROM or flash. If unsure, say N. 1419 1420config CMDLINE 1421 string "Default kernel command string" 1422 default "" 1423 help 1424 On some architectures (EBSA110 and CATS), there is currently no way 1425 for the boot loader to pass arguments to the kernel. For these 1426 architectures, you should supply some command-line options at build 1427 time by entering them here. As a minimum, you should specify the 1428 memory size and the root device (e.g., mem=64M root=/dev/nfs). 1429 1430config XIP_KERNEL 1431 bool "Kernel Execute-In-Place from ROM" 1432 depends on !ZBOOT_ROM 1433 help 1434 Execute-In-Place allows the kernel to run from non-volatile storage 1435 directly addressable by the CPU, such as NOR flash. This saves RAM 1436 space since the text section of the kernel is not loaded from flash 1437 to RAM. Read-write sections, such as the data section and stack, 1438 are still copied to RAM. The XIP kernel is not compressed since 1439 it has to run directly from flash, so it will take more space to 1440 store it. The flash address used to link the kernel object files, 1441 and for storing it, is configuration dependent. Therefore, if you 1442 say Y here, you must know the proper physical address where to 1443 store the kernel image depending on your own flash memory usage. 1444 1445 Also note that the make target becomes "make xipImage" rather than 1446 "make zImage" or "make Image". The final kernel binary to put in 1447 ROM memory will be arch/arm/boot/xipImage. 1448 1449 If unsure, say N. 1450 1451config XIP_PHYS_ADDR 1452 hex "XIP Kernel Physical Location" 1453 depends on XIP_KERNEL 1454 default "0x00080000" 1455 help 1456 This is the physical address in your flash memory the kernel will 1457 be linked for and stored to. This address is dependent on your 1458 own flash usage. 1459 1460config KEXEC 1461 bool "Kexec system call (EXPERIMENTAL)" 1462 depends on EXPERIMENTAL 1463 help 1464 kexec is a system call that implements the ability to shutdown your 1465 current kernel, and to start another kernel. It is like a reboot 1466 but it is independent of the system firmware. And like a reboot 1467 you can start any kernel with it, not just Linux. 1468 1469 It is an ongoing process to be certain the hardware in a machine 1470 is properly shutdown, so do not be surprised if this code does not 1471 initially work for you. It may help to enable device hotplugging 1472 support. 1473 1474config ATAGS_PROC 1475 bool "Export atags in procfs" 1476 depends on KEXEC 1477 default y 1478 help 1479 Should the atags used to boot the kernel be exported in an "atags" 1480 file in procfs. Useful with kexec. 1481 1482endmenu 1483 1484menu "CPU Power Management" 1485 1486if ARCH_HAS_CPUFREQ 1487 1488source "drivers/cpufreq/Kconfig" 1489 1490config CPU_FREQ_SA1100 1491 bool 1492 1493config CPU_FREQ_SA1110 1494 bool 1495 1496config CPU_FREQ_INTEGRATOR 1497 tristate "CPUfreq driver for ARM Integrator CPUs" 1498 depends on ARCH_INTEGRATOR && CPU_FREQ 1499 default y 1500 help 1501 This enables the CPUfreq driver for ARM Integrator CPUs. 1502 1503 For details, take a look at <file:Documentation/cpu-freq>. 1504 1505 If in doubt, say Y. 1506 1507config CPU_FREQ_PXA 1508 bool 1509 depends on CPU_FREQ && ARCH_PXA && PXA25x 1510 default y 1511 select CPU_FREQ_DEFAULT_GOV_USERSPACE 1512 1513config CPU_FREQ_S3C64XX 1514 bool "CPUfreq support for Samsung S3C64XX CPUs" 1515 depends on CPU_FREQ && CPU_S3C6410 1516 1517config CPU_FREQ_S3C 1518 bool 1519 help 1520 Internal configuration node for common cpufreq on Samsung SoC 1521 1522config CPU_FREQ_S3C24XX 1523 bool "CPUfreq driver for Samsung S3C24XX series CPUs" 1524 depends on ARCH_S3C2410 && CPU_FREQ && EXPERIMENTAL 1525 select CPU_FREQ_S3C 1526 help 1527 This enables the CPUfreq driver for the Samsung S3C24XX family 1528 of CPUs. 1529 1530 For details, take a look at <file:Documentation/cpu-freq>. 1531 1532 If in doubt, say N. 1533 1534config CPU_FREQ_S3C24XX_PLL 1535 bool "Support CPUfreq changing of PLL frequency" 1536 depends on CPU_FREQ_S3C24XX && EXPERIMENTAL 1537 help 1538 Compile in support for changing the PLL frequency from the 1539 S3C24XX series CPUfreq driver. The PLL takes time to settle 1540 after a frequency change, so by default it is not enabled. 1541 1542 This also means that the PLL tables for the selected CPU(s) will 1543 be built which may increase the size of the kernel image. 1544 1545config CPU_FREQ_S3C24XX_DEBUG 1546 bool "Debug CPUfreq Samsung driver core" 1547 depends on CPU_FREQ_S3C24XX 1548 help 1549 Enable s3c_freq_dbg for the Samsung S3C CPUfreq core 1550 1551config CPU_FREQ_S3C24XX_IODEBUG 1552 bool "Debug CPUfreq Samsung driver IO timing" 1553 depends on CPU_FREQ_S3C24XX 1554 help 1555 Enable s3c_freq_iodbg for the Samsung S3C CPUfreq core 1556 1557config CPU_FREQ_S3C24XX_DEBUGFS 1558 bool "Export debugfs for CPUFreq" 1559 depends on CPU_FREQ_S3C24XX && DEBUG_FS 1560 help 1561 Export status information via debugfs. 1562 1563endif 1564 1565source "drivers/cpuidle/Kconfig" 1566 1567endmenu 1568 1569menu "Floating point emulation" 1570 1571comment "At least one emulation must be selected" 1572 1573config FPE_NWFPE 1574 bool "NWFPE math emulation" 1575 depends on !AEABI || OABI_COMPAT 1576 ---help--- 1577 Say Y to include the NWFPE floating point emulator in the kernel. 1578 This is necessary to run most binaries. Linux does not currently 1579 support floating point hardware so you need to say Y here even if 1580 your machine has an FPA or floating point co-processor podule. 1581 1582 You may say N here if you are going to load the Acorn FPEmulator 1583 early in the bootup. 1584 1585config FPE_NWFPE_XP 1586 bool "Support extended precision" 1587 depends on FPE_NWFPE 1588 help 1589 Say Y to include 80-bit support in the kernel floating-point 1590 emulator. Otherwise, only 32 and 64-bit support is compiled in. 1591 Note that gcc does not generate 80-bit operations by default, 1592 so in most cases this option only enlarges the size of the 1593 floating point emulator without any good reason. 1594 1595 You almost surely want to say N here. 1596 1597config FPE_FASTFPE 1598 bool "FastFPE math emulation (EXPERIMENTAL)" 1599 depends on (!AEABI || OABI_COMPAT) && !CPU_32v3 && EXPERIMENTAL 1600 ---help--- 1601 Say Y here to include the FAST floating point emulator in the kernel. 1602 This is an experimental much faster emulator which now also has full 1603 precision for the mantissa. It does not support any exceptions. 1604 It is very simple, and approximately 3-6 times faster than NWFPE. 1605 1606 It should be sufficient for most programs. It may be not suitable 1607 for scientific calculations, but you have to check this for yourself. 1608 If you do not feel you need a faster FP emulation you should better 1609 choose NWFPE. 1610 1611config VFP 1612 bool "VFP-format floating point maths" 1613 depends on CPU_V6 || CPU_ARM926T || CPU_V7 || CPU_FEROCEON 1614 help 1615 Say Y to include VFP support code in the kernel. This is needed 1616 if your hardware includes a VFP unit. 1617 1618 Please see <file:Documentation/arm/VFP/release-notes.txt> for 1619 release notes and additional status information. 1620 1621 Say N if your target does not have VFP hardware. 1622 1623config VFPv3 1624 bool 1625 depends on VFP 1626 default y if CPU_V7 1627 1628config NEON 1629 bool "Advanced SIMD (NEON) Extension support" 1630 depends on VFPv3 && CPU_V7 1631 help 1632 Say Y to include support code for NEON, the ARMv7 Advanced SIMD 1633 Extension. 1634 1635endmenu 1636 1637menu "Userspace binary formats" 1638 1639source "fs/Kconfig.binfmt" 1640 1641config ARTHUR 1642 tristate "RISC OS personality" 1643 depends on !AEABI 1644 help 1645 Say Y here to include the kernel code necessary if you want to run 1646 Acorn RISC OS/Arthur binaries under Linux. This code is still very 1647 experimental; if this sounds frightening, say N and sleep in peace. 1648 You can also say M here to compile this support as a module (which 1649 will be called arthur). 1650 1651endmenu 1652 1653menu "Power management options" 1654 1655source "kernel/power/Kconfig" 1656 1657config ARCH_SUSPEND_POSSIBLE 1658 def_bool y 1659 1660endmenu 1661 1662source "net/Kconfig" 1663 1664source "drivers/Kconfig" 1665 1666source "fs/Kconfig" 1667 1668source "arch/arm/Kconfig.debug" 1669 1670source "security/Kconfig" 1671 1672source "crypto/Kconfig" 1673 1674source "lib/Kconfig" 1675