aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/Kconfig
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/Kconfig')
-rw-r--r--arch/arm/Kconfig205
1 files changed, 168 insertions, 37 deletions
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 98922f7d2d12..e39caa8b0c93 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -10,6 +10,7 @@ config ARM
10 default y 10 default y
11 select HAVE_AOUT 11 select HAVE_AOUT
12 select HAVE_IDE 12 select HAVE_IDE
13 select HAVE_MEMBLOCK
13 select RTC_LIB 14 select RTC_LIB
14 select SYS_SUPPORTS_APM_EMULATION 15 select SYS_SUPPORTS_APM_EMULATION
15 select GENERIC_ATOMIC64 if (!CPU_32v6K) 16 select GENERIC_ATOMIC64 if (!CPU_32v6K)
@@ -24,6 +25,7 @@ config ARM
24 select HAVE_KERNEL_LZMA 25 select HAVE_KERNEL_LZMA
25 select HAVE_PERF_EVENTS 26 select HAVE_PERF_EVENTS
26 select PERF_USE_VMALLOC 27 select PERF_USE_VMALLOC
28 select HAVE_REGS_AND_STACK_ACCESS_API
27 help 29 help
28 The ARM series is a line of low-power-consumption RISC chip designs 30 The ARM series is a line of low-power-consumption RISC chip designs
29 licensed by ARM Ltd and targeted at embedded applications and 31 licensed by ARM Ltd and targeted at embedded applications and
@@ -55,7 +57,7 @@ config GENERIC_CLOCKEVENTS
55config GENERIC_CLOCKEVENTS_BROADCAST 57config GENERIC_CLOCKEVENTS_BROADCAST
56 bool 58 bool
57 depends on GENERIC_CLOCKEVENTS 59 depends on GENERIC_CLOCKEVENTS
58 default y if SMP && !LOCAL_TIMERS 60 default y if SMP
59 61
60config HAVE_TCM 62config HAVE_TCM
61 bool 63 bool
@@ -301,6 +303,7 @@ config ARCH_CNS3XXX
301 select CPU_V6 303 select CPU_V6
302 select GENERIC_CLOCKEVENTS 304 select GENERIC_CLOCKEVENTS
303 select ARM_GIC 305 select ARM_GIC
306 select PCI_DOMAINS if PCI
304 help 307 help
305 Support for Cavium Networks CNS3XXX platform. 308 Support for Cavium Networks CNS3XXX platform.
306 309
@@ -439,21 +442,6 @@ config ARCH_IXP4XX
439 help 442 help
440 Support for Intel's IXP4XX (XScale) family of processors. 443 Support for Intel's IXP4XX (XScale) family of processors.
441 444
442config ARCH_L7200
443 bool "LinkUp-L7200"
444 select CPU_ARM720T
445 select FIQ
446 select ARCH_USES_GETTIMEOFFSET
447 help
448 Say Y here if you intend to run this kernel on a LinkUp Systems
449 L7200 Software Development Board which uses an ARM720T processor.
450 Information on this board can be obtained at:
451
452 <http://www.linkupsys.com/>
453
454 If you have any questions or comments about the Linux kernel port
455 to this board, send e-mail to <sjhill@cotw.com>.
456
457config ARCH_DOVE 445config ARCH_DOVE
458 bool "Marvell Dove" 446 bool "Marvell Dove"
459 select PCI 447 select PCI
@@ -482,6 +470,19 @@ config ARCH_LOKI
482 help 470 help
483 Support for the Marvell Loki (88RC8480) SoC. 471 Support for the Marvell Loki (88RC8480) SoC.
484 472
473config ARCH_LPC32XX
474 bool "NXP LPC32XX"
475 select CPU_ARM926T
476 select ARCH_REQUIRE_GPIOLIB
477 select HAVE_IDE
478 select ARM_AMBA
479 select USB_ARCH_HAS_OHCI
480 select COMMON_CLKDEV
481 select GENERIC_TIME
482 select GENERIC_CLOCKEVENTS
483 help
484 Support for the NXP LPC32XX family of processors
485
485config ARCH_MV78XX0 486config ARCH_MV78XX0
486 bool "Marvell MV78xx0" 487 bool "Marvell MV78xx0"
487 select CPU_FEROCEON 488 select CPU_FEROCEON
@@ -586,6 +587,7 @@ config ARCH_MSM
586 bool "Qualcomm MSM" 587 bool "Qualcomm MSM"
587 select HAVE_CLK 588 select HAVE_CLK
588 select GENERIC_CLOCKEVENTS 589 select GENERIC_CLOCKEVENTS
590 select ARCH_REQUIRE_GPIOLIB
589 help 591 help
590 Support for Qualcomm MSM/QSD based systems. This runs on the 592 Support for Qualcomm MSM/QSD based systems. This runs on the
591 apps processor of the MSM/QSD and depends on a shared memory 593 apps processor of the MSM/QSD and depends on a shared memory
@@ -719,7 +721,6 @@ config ARCH_SHARK
719config ARCH_LH7A40X 721config ARCH_LH7A40X
720 bool "Sharp LH7A40X" 722 bool "Sharp LH7A40X"
721 select CPU_ARM922T 723 select CPU_ARM922T
722 select ARCH_DISCONTIGMEM_ENABLE if !LH7A40X_CONTIGMEM
723 select ARCH_SPARSEMEM_ENABLE if !LH7A40X_CONTIGMEM 724 select ARCH_SPARSEMEM_ENABLE if !LH7A40X_CONTIGMEM
724 select ARCH_USES_GETTIMEOFFSET 725 select ARCH_USES_GETTIMEOFFSET
725 help 726 help
@@ -845,6 +846,8 @@ source "arch/arm/mach-lh7a40x/Kconfig"
845 846
846source "arch/arm/mach-loki/Kconfig" 847source "arch/arm/mach-loki/Kconfig"
847 848
849source "arch/arm/mach-lpc32xx/Kconfig"
850
848source "arch/arm/mach-msm/Kconfig" 851source "arch/arm/mach-msm/Kconfig"
849 852
850source "arch/arm/mach-mv78xx0/Kconfig" 853source "arch/arm/mach-mv78xx0/Kconfig"
@@ -1031,11 +1034,6 @@ endmenu
1031 1034
1032source "arch/arm/common/Kconfig" 1035source "arch/arm/common/Kconfig"
1033 1036
1034config FORCE_MAX_ZONEORDER
1035 int
1036 depends on SA1111
1037 default "9"
1038
1039menu "Bus support" 1037menu "Bus support"
1040 1038
1041config ARM_AMBA 1039config ARM_AMBA
@@ -1060,7 +1058,7 @@ config ISA_DMA_API
1060 bool 1058 bool
1061 1059
1062config PCI 1060config PCI
1063 bool "PCI support" if ARCH_INTEGRATOR_AP || ARCH_VERSATILE_PB || ARCH_IXP4XX || ARCH_KS8695 || MACH_ARMCORE 1061 bool "PCI support" if ARCH_INTEGRATOR_AP || ARCH_VERSATILE_PB || ARCH_IXP4XX || ARCH_KS8695 || MACH_ARMCORE || ARCH_CNS3XXX
1064 help 1062 help
1065 Find out whether you have a PCI motherboard. PCI is the name of a 1063 Find out whether you have a PCI motherboard. PCI is the name of a
1066 bus system, i.e. the way the CPU talks to the other stuff inside 1064 bus system, i.e. the way the CPU talks to the other stuff inside
@@ -1172,9 +1170,10 @@ config HOTPLUG_CPU
1172config LOCAL_TIMERS 1170config LOCAL_TIMERS
1173 bool "Use local timer interrupts" 1171 bool "Use local timer interrupts"
1174 depends on SMP && (REALVIEW_EB_ARM11MP || MACH_REALVIEW_PB11MP || \ 1172 depends on SMP && (REALVIEW_EB_ARM11MP || MACH_REALVIEW_PB11MP || \
1175 REALVIEW_EB_A9MP || MACH_REALVIEW_PBX || ARCH_OMAP4 || ARCH_U8500) 1173 REALVIEW_EB_A9MP || MACH_REALVIEW_PBX || ARCH_OMAP4 || \
1174 ARCH_U8500 || ARCH_VEXPRESS_CA9X4)
1176 default y 1175 default y
1177 select HAVE_ARM_TWD if (ARCH_REALVIEW || ARCH_OMAP4 || ARCH_U8500) 1176 select HAVE_ARM_TWD if (ARCH_REALVIEW || ARCH_VEXPRESS || ARCH_OMAP4 || ARCH_U8500)
1178 help 1177 help
1179 Enable support for local timers on SMP platforms, rather then the 1178 Enable support for local timers on SMP platforms, rather then the
1180 legacy IPI broadcast method. Local timers allows the system 1179 legacy IPI broadcast method. Local timers allows the system
@@ -1185,10 +1184,10 @@ source kernel/Kconfig.preempt
1185 1184
1186config HZ 1185config HZ
1187 int 1186 int
1188 default 128 if ARCH_L7200
1189 default 200 if ARCH_EBSA110 || ARCH_S3C2410 || ARCH_S5P6440 || ARCH_S5P6442 || ARCH_S5PV210 1187 default 200 if ARCH_EBSA110 || ARCH_S3C2410 || ARCH_S5P6440 || ARCH_S5P6442 || ARCH_S5PV210
1190 default OMAP_32K_TIMER_HZ if ARCH_OMAP && OMAP_32K_TIMER 1188 default OMAP_32K_TIMER_HZ if ARCH_OMAP && OMAP_32K_TIMER
1191 default AT91_TIMER_HZ if ARCH_AT91 1189 default AT91_TIMER_HZ if ARCH_AT91
1190 default SHMOBILE_TIMER_HZ if ARCH_SHMOBILE
1192 default 100 1191 default 100
1193 1192
1194config THUMB2_KERNEL 1193config THUMB2_KERNEL
@@ -1241,10 +1240,6 @@ config OABI_COMPAT
1241config ARCH_HAS_HOLES_MEMORYMODEL 1240config ARCH_HAS_HOLES_MEMORYMODEL
1242 bool 1241 bool
1243 1242
1244# Discontigmem is deprecated
1245config ARCH_DISCONTIGMEM_ENABLE
1246 bool
1247
1248config ARCH_SPARSEMEM_ENABLE 1243config ARCH_SPARSEMEM_ENABLE
1249 bool 1244 bool
1250 1245
@@ -1252,13 +1247,7 @@ config ARCH_SPARSEMEM_DEFAULT
1252 def_bool ARCH_SPARSEMEM_ENABLE 1247 def_bool ARCH_SPARSEMEM_ENABLE
1253 1248
1254config ARCH_SELECT_MEMORY_MODEL 1249config ARCH_SELECT_MEMORY_MODEL
1255 def_bool ARCH_DISCONTIGMEM_ENABLE && ARCH_SPARSEMEM_ENABLE 1250 def_bool ARCH_SPARSEMEM_ENABLE
1256
1257config NODES_SHIFT
1258 int
1259 default "4" if ARCH_LH7A40X
1260 default "2"
1261 depends on NEED_MULTIPLE_NODES
1262 1251
1263config HIGHMEM 1252config HIGHMEM
1264 bool "High Memory Support (EXPERIMENTAL)" 1253 bool "High Memory Support (EXPERIMENTAL)"
@@ -1290,8 +1279,33 @@ config HW_PERF_EVENTS
1290 Enable hardware performance counter support for perf events. If 1279 Enable hardware performance counter support for perf events. If
1291 disabled, perf events will use software events only. 1280 disabled, perf events will use software events only.
1292 1281
1282config SPARSE_IRQ
1283 def_bool n
1284 help
1285 This enables support for sparse irqs. This is useful in general
1286 as most CPUs have a fairly sparse array of IRQ vectors, which
1287 the irq_desc then maps directly on to. Systems with a high
1288 number of off-chip IRQs will want to treat this as
1289 experimental until they have been independently verified.
1290
1293source "mm/Kconfig" 1291source "mm/Kconfig"
1294 1292
1293config FORCE_MAX_ZONEORDER
1294 int "Maximum zone order" if ARCH_SHMOBILE
1295 range 11 64 if ARCH_SHMOBILE
1296 default "9" if SA1111
1297 default "11"
1298 help
1299 The kernel memory allocator divides physically contiguous memory
1300 blocks into "zones", where each zone is a power of two number of
1301 pages. This option selects the largest power of two that the kernel
1302 keeps in the memory allocator. If you need to allocate very large
1303 blocks of physically contiguous memory, then you may need to
1304 increase this value.
1305
1306 This config option is actually maximum order plus one. For example,
1307 a value of 11 means that the largest free memory block is 2^10 pages.
1308
1295config LEDS 1309config LEDS
1296 bool "Timer and CPU usage LEDs" 1310 bool "Timer and CPU usage LEDs"
1297 depends on ARCH_CDB89712 || ARCH_EBSA110 || \ 1311 depends on ARCH_CDB89712 || ARCH_EBSA110 || \
@@ -1375,6 +1389,24 @@ config UACCESS_WITH_MEMCPY
1375 However, if the CPU data cache is using a write-allocate mode, 1389 However, if the CPU data cache is using a write-allocate mode,
1376 this option is unlikely to provide any performance gain. 1390 this option is unlikely to provide any performance gain.
1377 1391
1392config CC_STACKPROTECTOR
1393 bool "Enable -fstack-protector buffer overflow detection (EXPERIMENTAL)"
1394 help
1395 This option turns on the -fstack-protector GCC feature. This
1396 feature puts, at the beginning of functions, a canary value on
1397 the stack just before the return address, and validates
1398 the value just before actually returning. Stack based buffer
1399 overflows (that need to overwrite this return address) now also
1400 overwrite the canary, which gets detected and the attack is then
1401 neutralized via a kernel panic.
1402 This feature requires gcc version 4.2 or above.
1403
1404config DEPRECATED_PARAM_STRUCT
1405 bool "Provide old way to pass kernel parameters"
1406 help
1407 This was deprecated in 2001 and announced to live on for 5 years.
1408 Some old boot loaders still use this way.
1409
1378endmenu 1410endmenu
1379 1411
1380menu "Boot options" 1412menu "Boot options"
@@ -1485,6 +1517,105 @@ config ATAGS_PROC
1485 Should the atags used to boot the kernel be exported in an "atags" 1517 Should the atags used to boot the kernel be exported in an "atags"
1486 file in procfs. Useful with kexec. 1518 file in procfs. Useful with kexec.
1487 1519
1520config AUTO_ZRELADDR
1521 bool "Auto calculation of the decompressed kernel image address"
1522 depends on !ZBOOT_ROM && !ARCH_U300
1523 help
1524 ZRELADDR is the physical address where the decompressed kernel
1525 image will be placed. If AUTO_ZRELADDR is selected, the address
1526 will be determined at run-time by masking the current IP with
1527 0xf8000000. This assumes the zImage being placed in the first 128MB
1528 from start of memory.
1529
1530config ZRELADDR
1531 hex "Physical address of the decompressed kernel image"
1532 depends on !AUTO_ZRELADDR
1533 default 0x00008000 if ARCH_BCMRING ||\
1534 ARCH_CNS3XXX ||\
1535 ARCH_DOVE ||\
1536 ARCH_EBSA110 ||\
1537 ARCH_FOOTBRIDGE ||\
1538 ARCH_INTEGRATOR ||\
1539 ARCH_IOP13XX ||\
1540 ARCH_IOP33X ||\
1541 ARCH_IXP2000 ||\
1542 ARCH_IXP23XX ||\
1543 ARCH_IXP4XX ||\
1544 ARCH_KIRKWOOD ||\
1545 ARCH_KS8695 ||\
1546 ARCH_LOKI ||\
1547 ARCH_MMP ||\
1548 ARCH_MV78XX0 ||\
1549 ARCH_NOMADIK ||\
1550 ARCH_NUC93X ||\
1551 ARCH_NS9XXX ||\
1552 ARCH_ORION5X ||\
1553 ARCH_SPEAR3XX ||\
1554 ARCH_SPEAR6XX ||\
1555 ARCH_U8500 ||\
1556 ARCH_VERSATILE ||\
1557 ARCH_W90X900
1558 default 0x08008000 if ARCH_MX1 ||\
1559 ARCH_SHARK
1560 default 0x10008000 if ARCH_MSM ||\
1561 ARCH_OMAP1 ||\
1562 ARCH_RPC
1563 default 0x20008000 if ARCH_S5P6440 ||\
1564 ARCH_S5P6442 ||\
1565 ARCH_S5PC100 ||\
1566 ARCH_S5PV210
1567 default 0x30008000 if ARCH_S3C2410 ||\
1568 ARCH_S3C2400 ||\
1569 ARCH_S3C2412 ||\
1570 ARCH_S3C2416 ||\
1571 ARCH_S3C2440 ||\
1572 ARCH_S3C2443
1573 default 0x40008000 if ARCH_STMP378X ||\
1574 ARCH_STMP37XX ||\
1575 ARCH_SH7372 ||\
1576 ARCH_SH7377
1577 default 0x50008000 if ARCH_S3C64XX ||\
1578 ARCH_SH7367
1579 default 0x60008000 if ARCH_VEXPRESS
1580 default 0x80008000 if ARCH_MX25 ||\
1581 ARCH_MX3 ||\
1582 ARCH_NETX ||\
1583 ARCH_OMAP2PLUS ||\
1584 ARCH_PNX4008
1585 default 0x90008000 if ARCH_MX5 ||\
1586 ARCH_MX91231
1587 default 0xa0008000 if ARCH_IOP32X ||\
1588 ARCH_PXA ||\
1589 MACH_MX27
1590 default 0xc0008000 if ARCH_LH7A40X ||\
1591 MACH_MX21
1592 default 0xf0008000 if ARCH_AAEC2000 ||\
1593 ARCH_L7200
1594 default 0xc0028000 if ARCH_CLPS711X
1595 default 0x70008000 if ARCH_AT91 && (ARCH_AT91CAP9 || ARCH_AT91SAM9G45)
1596 default 0x20008000 if ARCH_AT91 && !(ARCH_AT91CAP9 || ARCH_AT91SAM9G45)
1597 default 0xc0008000 if ARCH_DAVINCI && ARCH_DAVINCI_DA8XX
1598 default 0x80008000 if ARCH_DAVINCI && !ARCH_DAVINCI_DA8XX
1599 default 0x00008000 if ARCH_EP93XX && EP93XX_SDCE3_SYNC_PHYS_OFFSET
1600 default 0xc0008000 if ARCH_EP93XX && EP93XX_SDCE0_PHYS_OFFSET
1601 default 0xd0008000 if ARCH_EP93XX && EP93XX_SDCE1_PHYS_OFFSET
1602 default 0xe0008000 if ARCH_EP93XX && EP93XX_SDCE2_PHYS_OFFSET
1603 default 0xf0008000 if ARCH_EP93XX && EP93XX_SDCE3_ASYNC_PHYS_OFFSET
1604 default 0x00008000 if ARCH_GEMINI && GEMINI_MEM_SWAP
1605 default 0x10008000 if ARCH_GEMINI && !GEMINI_MEM_SWAP
1606 default 0x70008000 if ARCH_REALVIEW && REALVIEW_HIGH_PHYS_OFFSET
1607 default 0x00008000 if ARCH_REALVIEW && !REALVIEW_HIGH_PHYS_OFFSET
1608 default 0xc0208000 if ARCH_SA1100 && SA1111
1609 default 0xc0008000 if ARCH_SA1100 && !SA1111
1610 default 0x30108000 if ARCH_S3C2410 && PM_H1940
1611 default 0x28E08000 if ARCH_U300 && MACH_U300_SINGLE_RAM
1612 default 0x48008000 if ARCH_U300 && !MACH_U300_SINGLE_RAM
1613 help
1614 ZRELADDR is the physical address where the decompressed kernel
1615 image will be placed. ZRELADDR has to be specified when the
1616 assumption of AUTO_ZRELADDR is not valid, or when ZBOOT_ROM is
1617 selected.
1618
1488endmenu 1619endmenu
1489 1620
1490menu "CPU Power Management" 1621menu "CPU Power Management"