aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinus Walleij <linus.walleij@stericsson.com>2009-04-27 05:21:46 -0400
committerRussell King <rmk+kernel@arm.linux.org.uk>2009-04-28 17:44:29 -0400
commitd98aac7592114241f378bc8d5b3e424cced7ded2 (patch)
tree2d052df037411e94478d5ee4ff43402a45fd8fe4
parentbb3cee2b35d2b9edab71997bd06040ff37483e08 (diff)
[ARM] 5480/1: U300-v5 integrate into the ARM architecture
This hooks the U300 support into Kbuild and makes a small hook in mmu.c for supporting an odd memory alignment with shared memory on these systems. This is rebased to RMK:s GIT HEAD. This patch tries to add the Kconfig option in alphabetic order by option text and the Makefile entry after config symbol. Signed-off-by: Linus Walleij <linus.walleij@stericsson.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
-rw-r--r--arch/arm/Kconfig16
-rw-r--r--arch/arm/Makefile1
-rw-r--r--arch/arm/mm/mmu.c14
3 files changed, 31 insertions, 0 deletions
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index a930e5c5672c..44456e163025 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -594,6 +594,20 @@ config ARCH_LH7A40X
594 core with a wide array of integrated devices for 594 core with a wide array of integrated devices for
595 hand-held and low-power applications. 595 hand-held and low-power applications.
596 596
597config ARCH_U300
598 bool "ST-Ericsson U300 Series"
599 depends on MMU
600 select CPU_ARM926T
601 select ARM_AMBA
602 select ARM_VIC
603 select GENERIC_TIME
604 select GENERIC_CLOCKEVENTS
605 select HAVE_CLK
606 select COMMON_CLKDEV
607 select GENERIC_GPIO
608 help
609 Support for ST-Ericsson U300 series mobile platforms.
610
597config ARCH_DAVINCI 611config ARCH_DAVINCI
598 bool "TI DaVinci" 612 bool "TI DaVinci"
599 select CPU_ARM926T 613 select CPU_ARM926T
@@ -705,6 +719,8 @@ source "arch/arm/mach-ks8695/Kconfig"
705 719
706source "arch/arm/mach-msm/Kconfig" 720source "arch/arm/mach-msm/Kconfig"
707 721
722source "arch/arm/mach-u300/Kconfig"
723
708source "arch/arm/mach-w90x900/Kconfig" 724source "arch/arm/mach-w90x900/Kconfig"
709 725
710# Definitions to make life easier 726# Definitions to make life easier
diff --git a/arch/arm/Makefile b/arch/arm/Makefile
index 885a83724b9c..20084c50c23c 100644
--- a/arch/arm/Makefile
+++ b/arch/arm/Makefile
@@ -149,6 +149,7 @@ machine-$(CONFIG_ARCH_S3C24A0) := s3c24a0
149machine-$(CONFIG_ARCH_S3C64XX) := s3c6400 s3c6410 149machine-$(CONFIG_ARCH_S3C64XX) := s3c6400 s3c6410
150machine-$(CONFIG_ARCH_SA1100) := sa1100 150machine-$(CONFIG_ARCH_SA1100) := sa1100
151machine-$(CONFIG_ARCH_SHARK) := shark 151machine-$(CONFIG_ARCH_SHARK) := shark
152machine-$(CONFIG_ARCH_U300) := u300
152machine-$(CONFIG_ARCH_VERSATILE) := versatile 153machine-$(CONFIG_ARCH_VERSATILE) := versatile
153machine-$(CONFIG_ARCH_W90X900) := w90x900 154machine-$(CONFIG_ARCH_W90X900) := w90x900
154machine-$(CONFIG_FOOTBRIDGE) := footbridge 155machine-$(CONFIG_FOOTBRIDGE) := footbridge
diff --git a/arch/arm/mm/mmu.c b/arch/arm/mm/mmu.c
index e6344ece00ce..39fca4e416e2 100644
--- a/arch/arm/mm/mmu.c
+++ b/arch/arm/mm/mmu.c
@@ -839,6 +839,20 @@ void __init reserve_node_zero(pg_data_t *pgdat)
839 reserve_bootmem_node(pgdat, 0xa0200000, 0x1000, 839 reserve_bootmem_node(pgdat, 0xa0200000, 0x1000,
840 BOOTMEM_EXCLUSIVE); 840 BOOTMEM_EXCLUSIVE);
841 841
842 /*
843 * U300 - This platform family can share physical memory
844 * between two ARM cpus, one running Linux and the other
845 * running another OS.
846 */
847 if (machine_is_u300()) {
848#ifdef CONFIG_MACH_U300_SINGLE_RAM
849#if ((CONFIG_MACH_U300_ACCESS_MEM_SIZE & 1) == 1) && \
850 CONFIG_MACH_U300_2MB_ALIGNMENT_FIX
851 res_size = 0x00100000;
852#endif
853#endif
854 }
855
842#ifdef CONFIG_SA1111 856#ifdef CONFIG_SA1111
843 /* 857 /*
844 * Because of the SA1111 DMA bug, we want to preserve our 858 * Because of the SA1111 DMA bug, we want to preserve our