diff options
author | Arnd Bergmann <arnd@arndb.de> | 2011-10-31 09:11:34 -0400 |
---|---|---|
committer | Arnd Bergmann <arnd@arndb.de> | 2011-10-31 09:11:34 -0400 |
commit | 09fa31a322c8f03871a741cd1d26e5ca04aacbbd (patch) | |
tree | acdad13d7c332978a91231c4f34b6320a1c7ceb6 /arch/arm/Kconfig | |
parent | 2b228e8cf33dbdd323dd4a05a973c6bd45c44133 (diff) | |
parent | f37a53cc5d8a8fb199e41386d125d8c2ed9e54ef (diff) |
Merge branch 'dt/gic' into highbank/soc
Conflicts:
arch/arm/Kconfig
Diffstat (limited to 'arch/arm/Kconfig')
-rw-r--r-- | arch/arm/Kconfig | 104 |
1 files changed, 94 insertions, 10 deletions
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 4792d2928fa3..7bbb03558d2c 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig | |||
@@ -29,6 +29,7 @@ config ARM | |||
29 | select HAVE_GENERIC_HARDIRQS | 29 | select HAVE_GENERIC_HARDIRQS |
30 | select HAVE_SPARSE_IRQ | 30 | select HAVE_SPARSE_IRQ |
31 | select GENERIC_IRQ_SHOW | 31 | select GENERIC_IRQ_SHOW |
32 | select CPU_PM if (SUSPEND || CPU_IDLE) | ||
32 | help | 33 | help |
33 | The ARM series is a line of low-power-consumption RISC chip designs | 34 | The ARM series is a line of low-power-consumption RISC chip designs |
34 | licensed by ARM Ltd and targeted at embedded applications and | 35 | licensed by ARM Ltd and targeted at embedded applications and |
@@ -195,7 +196,8 @@ config VECTORS_BASE | |||
195 | The base address of exception vectors. | 196 | The base address of exception vectors. |
196 | 197 | ||
197 | config ARM_PATCH_PHYS_VIRT | 198 | config ARM_PATCH_PHYS_VIRT |
198 | bool "Patch physical to virtual translations at runtime" | 199 | bool "Patch physical to virtual translations at runtime" if EMBEDDED |
200 | default y | ||
199 | depends on !XIP_KERNEL && MMU | 201 | depends on !XIP_KERNEL && MMU |
200 | depends on !ARCH_REALVIEW || !SPARSEMEM | 202 | depends on !ARCH_REALVIEW || !SPARSEMEM |
201 | help | 203 | help |
@@ -204,16 +206,25 @@ config ARM_PATCH_PHYS_VIRT | |||
204 | kernel in system memory. | 206 | kernel in system memory. |
205 | 207 | ||
206 | This can only be used with non-XIP MMU kernels where the base | 208 | This can only be used with non-XIP MMU kernels where the base |
207 | of physical memory is at a 16MB boundary, or theoretically 64K | 209 | of physical memory is at a 16MB boundary. |
208 | for the MSM machine class. | ||
209 | 210 | ||
210 | config ARM_PATCH_PHYS_VIRT_16BIT | 211 | Only disable this option if you know that you do not require |
211 | def_bool y | 212 | this feature (eg, building a kernel for a single machine) and |
212 | depends on ARM_PATCH_PHYS_VIRT && ARCH_MSM | 213 | you need to shrink the kernel to the minimal size. |
214 | |||
215 | config NEED_MACH_MEMORY_H | ||
216 | bool | ||
213 | help | 217 | help |
214 | This option extends the physical to virtual translation patching | 218 | Select this when mach/memory.h is required to provide special |
215 | to allow physical memory down to a theoretical minimum of 64K | 219 | definitions for this platform. The need for mach/memory.h should |
216 | boundaries. | 220 | be avoided when possible. |
221 | |||
222 | config PHYS_OFFSET | ||
223 | hex "Physical address of main memory" | ||
224 | depends on !ARM_PATCH_PHYS_VIRT && !NEED_MACH_MEMORY_H | ||
225 | help | ||
226 | Please provide the physical address corresponding to the | ||
227 | location of main memory in your system. | ||
217 | 228 | ||
218 | source "init/Kconfig" | 229 | source "init/Kconfig" |
219 | 230 | ||
@@ -246,6 +257,7 @@ config ARCH_INTEGRATOR | |||
246 | select GENERIC_CLOCKEVENTS | 257 | select GENERIC_CLOCKEVENTS |
247 | select PLAT_VERSATILE | 258 | select PLAT_VERSATILE |
248 | select PLAT_VERSATILE_FPGA_IRQ | 259 | select PLAT_VERSATILE_FPGA_IRQ |
260 | select NEED_MACH_MEMORY_H | ||
249 | help | 261 | help |
250 | Support for ARM's Integrator platform. | 262 | Support for ARM's Integrator platform. |
251 | 263 | ||
@@ -261,6 +273,7 @@ config ARCH_REALVIEW | |||
261 | select PLAT_VERSATILE_CLCD | 273 | select PLAT_VERSATILE_CLCD |
262 | select ARM_TIMER_SP804 | 274 | select ARM_TIMER_SP804 |
263 | select GPIO_PL061 if GPIOLIB | 275 | select GPIO_PL061 if GPIOLIB |
276 | select NEED_MACH_MEMORY_H | ||
264 | help | 277 | help |
265 | This enables support for ARM Ltd RealView boards. | 278 | This enables support for ARM Ltd RealView boards. |
266 | 279 | ||
@@ -301,7 +314,6 @@ config ARCH_AT91 | |||
301 | select ARCH_REQUIRE_GPIOLIB | 314 | select ARCH_REQUIRE_GPIOLIB |
302 | select HAVE_CLK | 315 | select HAVE_CLK |
303 | select CLKDEV_LOOKUP | 316 | select CLKDEV_LOOKUP |
304 | select ARM_PATCH_PHYS_VIRT if MMU | ||
305 | help | 317 | help |
306 | This enables support for systems based on the Atmel AT91RM9200, | 318 | This enables support for systems based on the Atmel AT91RM9200, |
307 | AT91SAM9 and AT91CAP9 processors. | 319 | AT91SAM9 and AT91CAP9 processors. |
@@ -322,6 +334,7 @@ config ARCH_CLPS711X | |||
322 | bool "Cirrus Logic CLPS711x/EP721x-based" | 334 | bool "Cirrus Logic CLPS711x/EP721x-based" |
323 | select CPU_ARM720T | 335 | select CPU_ARM720T |
324 | select ARCH_USES_GETTIMEOFFSET | 336 | select ARCH_USES_GETTIMEOFFSET |
337 | select NEED_MACH_MEMORY_H | ||
325 | help | 338 | help |
326 | Support for Cirrus Logic 711x/721x based boards. | 339 | Support for Cirrus Logic 711x/721x based boards. |
327 | 340 | ||
@@ -362,6 +375,7 @@ config ARCH_EBSA110 | |||
362 | select ISA | 375 | select ISA |
363 | select NO_IOPORT | 376 | select NO_IOPORT |
364 | select ARCH_USES_GETTIMEOFFSET | 377 | select ARCH_USES_GETTIMEOFFSET |
378 | select NEED_MACH_MEMORY_H | ||
365 | help | 379 | help |
366 | This is an evaluation board for the StrongARM processor available | 380 | This is an evaluation board for the StrongARM processor available |
367 | from Digital. It has limited hardware on-board, including an | 381 | from Digital. It has limited hardware on-board, including an |
@@ -377,6 +391,7 @@ config ARCH_EP93XX | |||
377 | select ARCH_REQUIRE_GPIOLIB | 391 | select ARCH_REQUIRE_GPIOLIB |
378 | select ARCH_HAS_HOLES_MEMORYMODEL | 392 | select ARCH_HAS_HOLES_MEMORYMODEL |
379 | select ARCH_USES_GETTIMEOFFSET | 393 | select ARCH_USES_GETTIMEOFFSET |
394 | select NEED_MEMORY_H | ||
380 | help | 395 | help |
381 | This enables support for the Cirrus EP93xx series of CPUs. | 396 | This enables support for the Cirrus EP93xx series of CPUs. |
382 | 397 | ||
@@ -385,6 +400,7 @@ config ARCH_FOOTBRIDGE | |||
385 | select CPU_SA110 | 400 | select CPU_SA110 |
386 | select FOOTBRIDGE | 401 | select FOOTBRIDGE |
387 | select GENERIC_CLOCKEVENTS | 402 | select GENERIC_CLOCKEVENTS |
403 | select NEED_MACH_MEMORY_H | ||
388 | help | 404 | help |
389 | Support for systems based on the DC21285 companion chip | 405 | Support for systems based on the DC21285 companion chip |
390 | ("FootBridge"), such as the Simtec CATS and the Rebel NetWinder. | 406 | ("FootBridge"), such as the Simtec CATS and the Rebel NetWinder. |
@@ -434,6 +450,7 @@ config ARCH_IOP13XX | |||
434 | select PCI | 450 | select PCI |
435 | select ARCH_SUPPORTS_MSI | 451 | select ARCH_SUPPORTS_MSI |
436 | select VMSPLIT_1G | 452 | select VMSPLIT_1G |
453 | select NEED_MACH_MEMORY_H | ||
437 | help | 454 | help |
438 | Support for Intel's IOP13XX (XScale) family of processors. | 455 | Support for Intel's IOP13XX (XScale) family of processors. |
439 | 456 | ||
@@ -464,6 +481,7 @@ config ARCH_IXP23XX | |||
464 | select CPU_XSC3 | 481 | select CPU_XSC3 |
465 | select PCI | 482 | select PCI |
466 | select ARCH_USES_GETTIMEOFFSET | 483 | select ARCH_USES_GETTIMEOFFSET |
484 | select NEED_MACH_MEMORY_H | ||
467 | help | 485 | help |
468 | Support for Intel's IXP23xx (XScale) family of processors. | 486 | Support for Intel's IXP23xx (XScale) family of processors. |
469 | 487 | ||
@@ -473,6 +491,7 @@ config ARCH_IXP2000 | |||
473 | select CPU_XSCALE | 491 | select CPU_XSCALE |
474 | select PCI | 492 | select PCI |
475 | select ARCH_USES_GETTIMEOFFSET | 493 | select ARCH_USES_GETTIMEOFFSET |
494 | select NEED_MACH_MEMORY_H | ||
476 | help | 495 | help |
477 | Support for Intel's IXP2400/2800 (XScale) family of processors. | 496 | Support for Intel's IXP2400/2800 (XScale) family of processors. |
478 | 497 | ||
@@ -566,6 +585,7 @@ config ARCH_KS8695 | |||
566 | select CPU_ARM922T | 585 | select CPU_ARM922T |
567 | select ARCH_REQUIRE_GPIOLIB | 586 | select ARCH_REQUIRE_GPIOLIB |
568 | select ARCH_USES_GETTIMEOFFSET | 587 | select ARCH_USES_GETTIMEOFFSET |
588 | select NEED_MACH_MEMORY_H | ||
569 | help | 589 | help |
570 | Support for Micrel/Kendin KS8695 "Centaur" (ARM922T) based | 590 | Support for Micrel/Kendin KS8695 "Centaur" (ARM922T) based |
571 | System-on-Chip devices. | 591 | System-on-Chip devices. |
@@ -657,6 +677,7 @@ config ARCH_SHMOBILE | |||
657 | select SPARSE_IRQ | 677 | select SPARSE_IRQ |
658 | select MULTI_IRQ_HANDLER | 678 | select MULTI_IRQ_HANDLER |
659 | select PM_GENERIC_DOMAINS if PM | 679 | select PM_GENERIC_DOMAINS if PM |
680 | select NEED_MACH_MEMORY_H | ||
660 | help | 681 | help |
661 | Support for Renesas's SH-Mobile and R-Mobile ARM platforms. | 682 | Support for Renesas's SH-Mobile and R-Mobile ARM platforms. |
662 | 683 | ||
@@ -671,6 +692,7 @@ config ARCH_RPC | |||
671 | select NO_IOPORT | 692 | select NO_IOPORT |
672 | select ARCH_SPARSEMEM_ENABLE | 693 | select ARCH_SPARSEMEM_ENABLE |
673 | select ARCH_USES_GETTIMEOFFSET | 694 | select ARCH_USES_GETTIMEOFFSET |
695 | select NEED_MACH_MEMORY_H | ||
674 | help | 696 | help |
675 | On the Acorn Risc-PC, Linux can support the internal IDE disk and | 697 | On the Acorn Risc-PC, Linux can support the internal IDE disk and |
676 | CD-ROM interface, serial and parallel port, and the floppy drive. | 698 | CD-ROM interface, serial and parallel port, and the floppy drive. |
@@ -689,6 +711,7 @@ config ARCH_SA1100 | |||
689 | select HAVE_SCHED_CLOCK | 711 | select HAVE_SCHED_CLOCK |
690 | select TICK_ONESHOT | 712 | select TICK_ONESHOT |
691 | select ARCH_REQUIRE_GPIOLIB | 713 | select ARCH_REQUIRE_GPIOLIB |
714 | select NEED_MACH_MEMORY_H | ||
692 | help | 715 | help |
693 | Support for StrongARM 11x0 based boards. | 716 | Support for StrongARM 11x0 based boards. |
694 | 717 | ||
@@ -781,6 +804,7 @@ config ARCH_S5PV210 | |||
781 | select HAVE_S3C2410_I2C if I2C | 804 | select HAVE_S3C2410_I2C if I2C |
782 | select HAVE_S3C_RTC if RTC_CLASS | 805 | select HAVE_S3C_RTC if RTC_CLASS |
783 | select HAVE_S3C2410_WATCHDOG if WATCHDOG | 806 | select HAVE_S3C2410_WATCHDOG if WATCHDOG |
807 | select NEED_MACH_MEMORY_H | ||
784 | help | 808 | help |
785 | Samsung S5PV210/S5PC110 series based systems | 809 | Samsung S5PV210/S5PC110 series based systems |
786 | 810 | ||
@@ -797,6 +821,7 @@ config ARCH_EXYNOS4 | |||
797 | select HAVE_S3C_RTC if RTC_CLASS | 821 | select HAVE_S3C_RTC if RTC_CLASS |
798 | select HAVE_S3C2410_I2C if I2C | 822 | select HAVE_S3C2410_I2C if I2C |
799 | select HAVE_S3C2410_WATCHDOG if WATCHDOG | 823 | select HAVE_S3C2410_WATCHDOG if WATCHDOG |
824 | select NEED_MACH_MEMORY_H | ||
800 | help | 825 | help |
801 | Samsung EXYNOS4 series based systems | 826 | Samsung EXYNOS4 series based systems |
802 | 827 | ||
@@ -808,6 +833,7 @@ config ARCH_SHARK | |||
808 | select ZONE_DMA | 833 | select ZONE_DMA |
809 | select PCI | 834 | select PCI |
810 | select ARCH_USES_GETTIMEOFFSET | 835 | select ARCH_USES_GETTIMEOFFSET |
836 | select NEED_MACH_MEMORY_H | ||
811 | help | 837 | help |
812 | Support for the StrongARM based Digital DNARD machine, also known | 838 | Support for the StrongARM based Digital DNARD machine, also known |
813 | as "Shark" (<http://www.shark-linux.de/shark.html>). | 839 | as "Shark" (<http://www.shark-linux.de/shark.html>). |
@@ -836,6 +862,7 @@ config ARCH_U300 | |||
836 | select HAVE_MACH_CLKDEV | 862 | select HAVE_MACH_CLKDEV |
837 | select GENERIC_GPIO | 863 | select GENERIC_GPIO |
838 | select ARCH_REQUIRE_GPIOLIB | 864 | select ARCH_REQUIRE_GPIOLIB |
865 | select NEED_MACH_MEMORY_H | ||
839 | help | 866 | help |
840 | Support for ST-Ericsson U300 series mobile platforms. | 867 | Support for ST-Ericsson U300 series mobile platforms. |
841 | 868 | ||
@@ -1408,6 +1435,31 @@ config SMP_ON_UP | |||
1408 | 1435 | ||
1409 | If you don't know what to do here, say Y. | 1436 | If you don't know what to do here, say Y. |
1410 | 1437 | ||
1438 | config ARM_CPU_TOPOLOGY | ||
1439 | bool "Support cpu topology definition" | ||
1440 | depends on SMP && CPU_V7 | ||
1441 | default y | ||
1442 | help | ||
1443 | Support ARM cpu topology definition. The MPIDR register defines | ||
1444 | affinity between processors which is then used to describe the cpu | ||
1445 | topology of an ARM System. | ||
1446 | |||
1447 | config SCHED_MC | ||
1448 | bool "Multi-core scheduler support" | ||
1449 | depends on ARM_CPU_TOPOLOGY | ||
1450 | help | ||
1451 | Multi-core scheduler support improves the CPU scheduler's decision | ||
1452 | making when dealing with multi-core CPU chips at a cost of slightly | ||
1453 | increased overhead in some places. If unsure say N here. | ||
1454 | |||
1455 | config SCHED_SMT | ||
1456 | bool "SMT scheduler support" | ||
1457 | depends on ARM_CPU_TOPOLOGY | ||
1458 | help | ||
1459 | Improves the CPU scheduler's decision making when dealing with | ||
1460 | MultiThreading at a cost of slightly increased overhead in some | ||
1461 | places. If unsure say N here. | ||
1462 | |||
1411 | config HAVE_ARM_SCU | 1463 | config HAVE_ARM_SCU |
1412 | bool | 1464 | bool |
1413 | help | 1465 | help |
@@ -1808,6 +1860,38 @@ config ZBOOT_ROM_SH_MOBILE_SDHI | |||
1808 | 1860 | ||
1809 | endchoice | 1861 | endchoice |
1810 | 1862 | ||
1863 | config ARM_APPENDED_DTB | ||
1864 | bool "Use appended device tree blob to zImage (EXPERIMENTAL)" | ||
1865 | depends on OF && !ZBOOT_ROM && EXPERIMENTAL | ||
1866 | help | ||
1867 | With this option, the boot code will look for a device tree binary | ||
1868 | (DTB) appended to zImage | ||
1869 | (e.g. cat zImage <filename>.dtb > zImage_w_dtb). | ||
1870 | |||
1871 | This is meant as a backward compatibility convenience for those | ||
1872 | systems with a bootloader that can't be upgraded to accommodate | ||
1873 | the documented boot protocol using a device tree. | ||
1874 | |||
1875 | Beware that there is very little in terms of protection against | ||
1876 | this option being confused by leftover garbage in memory that might | ||
1877 | look like a DTB header after a reboot if no actual DTB is appended | ||
1878 | to zImage. Do not leave this option active in a production kernel | ||
1879 | if you don't intend to always append a DTB. Proper passing of the | ||
1880 | location into r2 of a bootloader provided DTB is always preferable | ||
1881 | to this option. | ||
1882 | |||
1883 | config ARM_ATAG_DTB_COMPAT | ||
1884 | bool "Supplement the appended DTB with traditional ATAG information" | ||
1885 | depends on ARM_APPENDED_DTB | ||
1886 | help | ||
1887 | Some old bootloaders can't be updated to a DTB capable one, yet | ||
1888 | they provide ATAGs with memory configuration, the ramdisk address, | ||
1889 | the kernel cmdline string, etc. Such information is dynamically | ||
1890 | provided by the bootloader and can't always be stored in a static | ||
1891 | DTB. To allow a device tree enabled kernel to be used with such | ||
1892 | bootloaders, this option allows zImage to extract the information | ||
1893 | from the ATAG list and store it at run time into the appended DTB. | ||
1894 | |||
1811 | config CMDLINE | 1895 | config CMDLINE |
1812 | string "Default kernel command string" | 1896 | string "Default kernel command string" |
1813 | default "" | 1897 | default "" |