diff options
Diffstat (limited to 'arch/arm/Kconfig')
| -rw-r--r-- | arch/arm/Kconfig | 155 |
1 files changed, 53 insertions, 102 deletions
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index a7ed21f0136a..b404e5eec0c1 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig | |||
| @@ -19,6 +19,8 @@ config ARM | |||
| 19 | select HAVE_KPROBES if (!XIP_KERNEL) | 19 | select HAVE_KPROBES if (!XIP_KERNEL) |
| 20 | select HAVE_KRETPROBES if (HAVE_KPROBES) | 20 | select HAVE_KRETPROBES if (HAVE_KPROBES) |
| 21 | select HAVE_FUNCTION_TRACER if (!XIP_KERNEL) | 21 | select HAVE_FUNCTION_TRACER if (!XIP_KERNEL) |
| 22 | select HAVE_FTRACE_MCOUNT_RECORD if (!XIP_KERNEL) | ||
| 23 | select HAVE_DYNAMIC_FTRACE if (!XIP_KERNEL) | ||
| 22 | select HAVE_GENERIC_DMA_COHERENT | 24 | select HAVE_GENERIC_DMA_COHERENT |
| 23 | select HAVE_KERNEL_GZIP | 25 | select HAVE_KERNEL_GZIP |
| 24 | select HAVE_KERNEL_LZO | 26 | select HAVE_KERNEL_LZO |
| @@ -26,6 +28,7 @@ config ARM | |||
| 26 | select HAVE_PERF_EVENTS | 28 | select HAVE_PERF_EVENTS |
| 27 | select PERF_USE_VMALLOC | 29 | select PERF_USE_VMALLOC |
| 28 | select HAVE_REGS_AND_STACK_ACCESS_API | 30 | select HAVE_REGS_AND_STACK_ACCESS_API |
| 31 | select HAVE_HW_BREAKPOINT if (PERF_EVENTS && (CPU_V6 || CPU_V7)) | ||
| 29 | help | 32 | help |
| 30 | The ARM series is a line of low-power-consumption RISC chip designs | 33 | The ARM series is a line of low-power-consumption RISC chip designs |
| 31 | licensed by ARM Ltd and targeted at embedded applications and | 34 | licensed by ARM Ltd and targeted at embedded applications and |
| @@ -145,6 +148,9 @@ config ARCH_HAS_CPUFREQ | |||
| 145 | and that the relevant menu configurations are displayed for | 148 | and that the relevant menu configurations are displayed for |
| 146 | it. | 149 | it. |
| 147 | 150 | ||
| 151 | config ARCH_HAS_CPU_IDLE_WAIT | ||
| 152 | def_bool y | ||
| 153 | |||
| 148 | config GENERIC_HWEIGHT | 154 | config GENERIC_HWEIGHT |
| 149 | bool | 155 | bool |
| 150 | default y | 156 | default y |
| @@ -271,7 +277,6 @@ config ARCH_AT91 | |||
| 271 | bool "Atmel AT91" | 277 | bool "Atmel AT91" |
| 272 | select ARCH_REQUIRE_GPIOLIB | 278 | select ARCH_REQUIRE_GPIOLIB |
| 273 | select HAVE_CLK | 279 | select HAVE_CLK |
| 274 | select ARCH_USES_GETTIMEOFFSET | ||
| 275 | help | 280 | help |
| 276 | This enables support for systems based on the Atmel AT91RM9200, | 281 | This enables support for systems based on the Atmel AT91RM9200, |
| 277 | AT91SAM9 and AT91CAP9 processors. | 282 | AT91SAM9 and AT91CAP9 processors. |
| @@ -1003,7 +1008,7 @@ endif | |||
| 1003 | 1008 | ||
| 1004 | config ARM_ERRATA_411920 | 1009 | config ARM_ERRATA_411920 |
| 1005 | bool "ARM errata: Invalidation of the Instruction Cache operation can fail" | 1010 | bool "ARM errata: Invalidation of the Instruction Cache operation can fail" |
| 1006 | depends on CPU_V6 && !SMP | 1011 | depends on CPU_V6 |
| 1007 | help | 1012 | help |
| 1008 | Invalidation of the Instruction Cache operation can | 1013 | Invalidation of the Instruction Cache operation can |
| 1009 | fail. This erratum is present in 1136 (before r1p4), 1156 and 1176. | 1014 | fail. This erratum is present in 1136 (before r1p4), 1156 and 1176. |
| @@ -1051,6 +1056,32 @@ config ARM_ERRATA_460075 | |||
| 1051 | ACTLR register. Note that setting specific bits in the ACTLR register | 1056 | ACTLR register. Note that setting specific bits in the ACTLR register |
| 1052 | may not be available in non-secure mode. | 1057 | may not be available in non-secure mode. |
| 1053 | 1058 | ||
| 1059 | config ARM_ERRATA_742230 | ||
| 1060 | bool "ARM errata: DMB operation may be faulty" | ||
| 1061 | depends on CPU_V7 && SMP | ||
| 1062 | help | ||
| 1063 | This option enables the workaround for the 742230 Cortex-A9 | ||
| 1064 | (r1p0..r2p2) erratum. Under rare circumstances, a DMB instruction | ||
| 1065 | between two write operations may not ensure the correct visibility | ||
| 1066 | ordering of the two writes. This workaround sets a specific bit in | ||
| 1067 | the diagnostic register of the Cortex-A9 which causes the DMB | ||
| 1068 | instruction to behave as a DSB, ensuring the correct behaviour of | ||
| 1069 | the two writes. | ||
| 1070 | |||
| 1071 | config ARM_ERRATA_742231 | ||
| 1072 | bool "ARM errata: Incorrect hazard handling in the SCU may lead to data corruption" | ||
| 1073 | depends on CPU_V7 && SMP | ||
| 1074 | help | ||
| 1075 | This option enables the workaround for the 742231 Cortex-A9 | ||
| 1076 | (r2p0..r2p2) erratum. Under certain conditions, specific to the | ||
| 1077 | Cortex-A9 MPCore micro-architecture, two CPUs working in SMP mode, | ||
| 1078 | accessing some data located in the same cache line, may get corrupted | ||
| 1079 | data due to bad handling of the address hazard when the line gets | ||
| 1080 | replaced from one of the CPUs at the same time as another CPU is | ||
| 1081 | accessing it. This workaround sets specific bits in the diagnostic | ||
| 1082 | register of the Cortex-A9 which reduces the linefill issuing | ||
| 1083 | capabilities of the processor. | ||
| 1084 | |||
| 1054 | config PL310_ERRATA_588369 | 1085 | config PL310_ERRATA_588369 |
| 1055 | bool "Clean & Invalidate maintenance operations do not invalidate clean lines" | 1086 | bool "Clean & Invalidate maintenance operations do not invalidate clean lines" |
| 1056 | depends on CACHE_L2X0 && ARCH_OMAP4 | 1087 | depends on CACHE_L2X0 && ARCH_OMAP4 |
| @@ -1142,13 +1173,13 @@ source "kernel/time/Kconfig" | |||
| 1142 | 1173 | ||
| 1143 | config SMP | 1174 | config SMP |
| 1144 | bool "Symmetric Multi-Processing (EXPERIMENTAL)" | 1175 | bool "Symmetric Multi-Processing (EXPERIMENTAL)" |
| 1145 | depends on EXPERIMENTAL && (REALVIEW_EB_ARM11MP || REALVIEW_EB_A9MP ||\ | 1176 | depends on EXPERIMENTAL |
| 1146 | MACH_REALVIEW_PB11MP || MACH_REALVIEW_PBX || ARCH_OMAP4 ||\ | ||
| 1147 | ARCH_S5PV310 || ARCH_TEGRA || ARCH_U8500 || ARCH_VEXPRESS_CA9X4) | ||
| 1148 | depends on GENERIC_CLOCKEVENTS | 1177 | depends on GENERIC_CLOCKEVENTS |
| 1178 | depends on REALVIEW_EB_ARM11MP || REALVIEW_EB_A9MP || \ | ||
| 1179 | MACH_REALVIEW_PB11MP || MACH_REALVIEW_PBX || ARCH_OMAP4 ||\ | ||
| 1180 | ARCH_S5PV310 || ARCH_TEGRA || ARCH_U8500 || ARCH_VEXPRESS_CA9X4 | ||
| 1149 | select USE_GENERIC_SMP_HELPERS | 1181 | select USE_GENERIC_SMP_HELPERS |
| 1150 | select HAVE_ARM_SCU if ARCH_REALVIEW || ARCH_OMAP4 || ARCH_S5PV310 ||\ | 1182 | select HAVE_ARM_SCU |
| 1151 | ARCH_TEGRA || ARCH_U8500 || ARCH_VEXPRESS_CA9X4 | ||
| 1152 | help | 1183 | help |
| 1153 | This enables support for systems with more than one CPU. If you have | 1184 | This enables support for systems with more than one CPU. If you have |
| 1154 | a system with only one CPU, like most personal computers, say N. If | 1185 | a system with only one CPU, like most personal computers, say N. If |
| @@ -1166,6 +1197,19 @@ config SMP | |||
| 1166 | 1197 | ||
| 1167 | If you don't know what to do here, say N. | 1198 | If you don't know what to do here, say N. |
| 1168 | 1199 | ||
| 1200 | config SMP_ON_UP | ||
| 1201 | bool "Allow booting SMP kernel on uniprocessor systems (EXPERIMENTAL)" | ||
| 1202 | depends on EXPERIMENTAL | ||
| 1203 | depends on SMP && !XIP && !THUMB2_KERNEL | ||
| 1204 | default y | ||
| 1205 | help | ||
| 1206 | SMP kernels contain instructions which fail on non-SMP processors. | ||
| 1207 | Enabling this option allows the kernel to modify itself to make | ||
| 1208 | these instructions safe. Disabling it allows about 1K of space | ||
| 1209 | savings. | ||
| 1210 | |||
| 1211 | If you don't know what to do here, say Y. | ||
| 1212 | |||
| 1169 | config HAVE_ARM_SCU | 1213 | config HAVE_ARM_SCU |
| 1170 | bool | 1214 | bool |
| 1171 | depends on SMP | 1215 | depends on SMP |
| @@ -1216,12 +1260,9 @@ config HOTPLUG_CPU | |||
| 1216 | 1260 | ||
| 1217 | config LOCAL_TIMERS | 1261 | config LOCAL_TIMERS |
| 1218 | bool "Use local timer interrupts" | 1262 | bool "Use local timer interrupts" |
| 1219 | depends on SMP && (REALVIEW_EB_ARM11MP || MACH_REALVIEW_PB11MP || \ | 1263 | depends on SMP |
| 1220 | REALVIEW_EB_A9MP || MACH_REALVIEW_PBX || ARCH_OMAP4 || \ | ||
| 1221 | ARCH_S5PV310 || ARCH_TEGRA || ARCH_U8500 || ARCH_VEXPRESS_CA9X4) | ||
| 1222 | default y | 1264 | default y |
| 1223 | select HAVE_ARM_TWD if ARCH_REALVIEW || ARCH_OMAP4 || ARCH_S5PV310 || \ | 1265 | select HAVE_ARM_TWD |
| 1224 | ARCH_TEGRA || ARCH_U8500 || ARCH_VEXPRESS | ||
| 1225 | help | 1266 | help |
| 1226 | Enable support for local timers on SMP platforms, rather then the | 1267 | Enable support for local timers on SMP platforms, rather then the |
| 1227 | legacy IPI broadcast method. Local timers allows the system | 1268 | legacy IPI broadcast method. Local timers allows the system |
| @@ -1576,96 +1617,6 @@ config AUTO_ZRELADDR | |||
| 1576 | 0xf8000000. This assumes the zImage being placed in the first 128MB | 1617 | 0xf8000000. This assumes the zImage being placed in the first 128MB |
| 1577 | from start of memory. | 1618 | from start of memory. |
| 1578 | 1619 | ||
| 1579 | config ZRELADDR | ||
| 1580 | hex "Physical address of the decompressed kernel image" | ||
| 1581 | depends on !AUTO_ZRELADDR | ||
| 1582 | default 0x00008000 if ARCH_BCMRING ||\ | ||
| 1583 | ARCH_CNS3XXX ||\ | ||
| 1584 | ARCH_DOVE ||\ | ||
| 1585 | ARCH_EBSA110 ||\ | ||
| 1586 | ARCH_FOOTBRIDGE ||\ | ||
| 1587 | ARCH_INTEGRATOR ||\ | ||
| 1588 | ARCH_IOP13XX ||\ | ||
| 1589 | ARCH_IOP33X ||\ | ||
| 1590 | ARCH_IXP2000 ||\ | ||
| 1591 | ARCH_IXP23XX ||\ | ||
| 1592 | ARCH_IXP4XX ||\ | ||
| 1593 | ARCH_KIRKWOOD ||\ | ||
| 1594 | ARCH_KS8695 ||\ | ||
| 1595 | ARCH_LOKI ||\ | ||
| 1596 | ARCH_MMP ||\ | ||
| 1597 | ARCH_MV78XX0 ||\ | ||
| 1598 | ARCH_NOMADIK ||\ | ||
| 1599 | ARCH_NUC93X ||\ | ||
| 1600 | ARCH_NS9XXX ||\ | ||
| 1601 | ARCH_ORION5X ||\ | ||
| 1602 | ARCH_SPEAR3XX ||\ | ||
| 1603 | ARCH_SPEAR6XX ||\ | ||
| 1604 | ARCH_U8500 ||\ | ||
| 1605 | ARCH_VERSATILE ||\ | ||
| 1606 | ARCH_W90X900 | ||
| 1607 | default 0x08008000 if ARCH_MX1 ||\ | ||
| 1608 | ARCH_SHARK | ||
| 1609 | default 0x10008000 if ARCH_MSM ||\ | ||
| 1610 | ARCH_OMAP1 ||\ | ||
| 1611 | ARCH_RPC | ||
| 1612 | default 0x20008000 if ARCH_S5P6440 ||\ | ||
| 1613 | ARCH_S5P6442 ||\ | ||
| 1614 | ARCH_S5PC100 ||\ | ||
| 1615 | ARCH_S5PV210 | ||
| 1616 | default 0x30008000 if ARCH_S3C2410 ||\ | ||
| 1617 | ARCH_S3C2400 ||\ | ||
| 1618 | ARCH_S3C2412 ||\ | ||
| 1619 | ARCH_S3C2416 ||\ | ||
| 1620 | ARCH_S3C2440 ||\ | ||
| 1621 | ARCH_S3C2443 | ||
| 1622 | default 0x40008000 if ARCH_STMP378X ||\ | ||
| 1623 | ARCH_STMP37XX ||\ | ||
| 1624 | ARCH_SH7372 ||\ | ||
| 1625 | ARCH_SH7377 ||\ | ||
| 1626 | ARCH_S5PV310 | ||
| 1627 | default 0x50008000 if ARCH_S3C64XX ||\ | ||
| 1628 | ARCH_SH7367 | ||
| 1629 | default 0x60008000 if ARCH_VEXPRESS | ||
| 1630 | default 0x80008000 if ARCH_MX25 ||\ | ||
| 1631 | ARCH_MX3 ||\ | ||
| 1632 | ARCH_NETX ||\ | ||
| 1633 | ARCH_OMAP2PLUS ||\ | ||
| 1634 | ARCH_PNX4008 | ||
| 1635 | default 0x90008000 if ARCH_MX5 ||\ | ||
| 1636 | ARCH_MX91231 | ||
| 1637 | default 0xa0008000 if ARCH_IOP32X ||\ | ||
| 1638 | ARCH_PXA ||\ | ||
| 1639 | MACH_MX27 | ||
| 1640 | default 0xc0008000 if ARCH_LH7A40X ||\ | ||
| 1641 | MACH_MX21 | ||
| 1642 | default 0xf0008000 if ARCH_AAEC2000 ||\ | ||
| 1643 | ARCH_L7200 | ||
| 1644 | default 0xc0028000 if ARCH_CLPS711X | ||
| 1645 | default 0x70008000 if ARCH_AT91 && (ARCH_AT91CAP9 || ARCH_AT91SAM9G45) | ||
| 1646 | default 0x20008000 if ARCH_AT91 && !(ARCH_AT91CAP9 || ARCH_AT91SAM9G45) | ||
| 1647 | default 0xc0008000 if ARCH_DAVINCI && ARCH_DAVINCI_DA8XX | ||
| 1648 | default 0x80008000 if ARCH_DAVINCI && !ARCH_DAVINCI_DA8XX | ||
| 1649 | default 0x00008000 if ARCH_EP93XX && EP93XX_SDCE3_SYNC_PHYS_OFFSET | ||
| 1650 | default 0xc0008000 if ARCH_EP93XX && EP93XX_SDCE0_PHYS_OFFSET | ||
| 1651 | default 0xd0008000 if ARCH_EP93XX && EP93XX_SDCE1_PHYS_OFFSET | ||
| 1652 | default 0xe0008000 if ARCH_EP93XX && EP93XX_SDCE2_PHYS_OFFSET | ||
| 1653 | default 0xf0008000 if ARCH_EP93XX && EP93XX_SDCE3_ASYNC_PHYS_OFFSET | ||
| 1654 | default 0x00008000 if ARCH_GEMINI && GEMINI_MEM_SWAP | ||
| 1655 | default 0x10008000 if ARCH_GEMINI && !GEMINI_MEM_SWAP | ||
| 1656 | default 0x70008000 if ARCH_REALVIEW && REALVIEW_HIGH_PHYS_OFFSET | ||
| 1657 | default 0x00008000 if ARCH_REALVIEW && !REALVIEW_HIGH_PHYS_OFFSET | ||
| 1658 | default 0xc0208000 if ARCH_SA1100 && SA1111 | ||
| 1659 | default 0xc0008000 if ARCH_SA1100 && !SA1111 | ||
| 1660 | default 0x30108000 if ARCH_S3C2410 && PM_H1940 | ||
| 1661 | default 0x28E08000 if ARCH_U300 && MACH_U300_SINGLE_RAM | ||
| 1662 | default 0x48008000 if ARCH_U300 && !MACH_U300_SINGLE_RAM | ||
| 1663 | help | ||
| 1664 | ZRELADDR is the physical address where the decompressed kernel | ||
| 1665 | image will be placed. ZRELADDR has to be specified when the | ||
| 1666 | assumption of AUTO_ZRELADDR is not valid, or when ZBOOT_ROM is | ||
| 1667 | selected. | ||
| 1668 | |||
| 1669 | endmenu | 1620 | endmenu |
| 1670 | 1621 | ||
| 1671 | menu "CPU Power Management" | 1622 | menu "CPU Power Management" |
