summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorUwe Kleine-König <uwe@kleine-koenig.org>2013-02-07 18:15:16 +0100
committerUwe Kleine-König <uwe@kleine-koenig.org>2013-02-07 18:15:16 +0100
commite67527590a194fe1cbaec04e10ba0d003d7c8fa0 (patch)
treeb2feac716a096cd848f6c1d78972f1bfe318dedb
parenta9dc025fa8a32b9be335388892d71a471bb45218 (diff)
downloadOSELAS.BSP-EnergyMicro-Gecko-e67527590a194fe1cbaec04e10ba0d003d7c8fa0.tar.gz
OSELAS.BSP-EnergyMicro-Gecko-e67527590a194fe1cbaec04e10ba0d003d7c8fa0.tar.xz
platform-energymicro-efm32gg-dk3750: move kernel to external flash
-rw-r--r--kernelconfig-3.8-rc58
-rw-r--r--patches/linux-3.8-rc5/0015-ARM-new-platform-for-Energy-Micro-s-EFM32-Cortex-M3-.patch4
-rw-r--r--patches/linux-3.8-rc5/0020-HACK-ARM-allow-a-bootloader-to-be-embedded-and-do-it.patch10
-rw-r--r--platformconfig8
4 files changed, 18 insertions, 12 deletions
diff --git a/kernelconfig-3.8-rc5 b/kernelconfig-3.8-rc5
index a645ae1..ef96b16 100644
--- a/kernelconfig-3.8-rc5
+++ b/kernelconfig-3.8-rc5
@@ -234,11 +234,11 @@ CONFIG_ARM_THUMB=y
# CONFIG_CACHE_L2X0 is not set
CONFIG_ARM_L1_CACHE_SHIFT=5
CONFIG_ARM_NR_BANKS=8
-# CONFIG_SET_MEM_PARAM is not set
+CONFIG_SET_MEM_PARAM=y
CONFIG_DRAM_BASE=0x88000000
CONFIG_DRAM_SIZE=0x00400000
-CONFIG_FLASH_MEM_BASE=0x00000000
-CONFIG_FLASH_SIZE=0x00100000
+CONFIG_FLASH_MEM_BASE=0x8c000000
+CONFIG_FLASH_SIZE=0x01000000
CONFIG_ARM_NVIC=y
#
@@ -293,7 +293,7 @@ CONFIG_ZBOOT_ROM_BSS=0x0
# CONFIG_ARM_APPENDED_DTB is not set
CONFIG_CMDLINE=""
CONFIG_XIP_KERNEL=y
-CONFIG_XIP_PHYS_ADDR=0x00000000
+CONFIG_XIP_PHYS_ADDR=0x8c000000
# CONFIG_KEXEC is not set
# CONFIG_CRASH_DUMP is not set
# CONFIG_AUTO_ZRELADDR is not set
diff --git a/patches/linux-3.8-rc5/0015-ARM-new-platform-for-Energy-Micro-s-EFM32-Cortex-M3-.patch b/patches/linux-3.8-rc5/0015-ARM-new-platform-for-Energy-Micro-s-EFM32-Cortex-M3-.patch
index 304e80a..966847d 100644
--- a/patches/linux-3.8-rc5/0015-ARM-new-platform-for-Energy-Micro-s-EFM32-Cortex-M3-.patch
+++ b/patches/linux-3.8-rc5/0015-ARM-new-platform-for-Energy-Micro-s-EFM32-Cortex-M3-.patch
@@ -112,7 +112,7 @@ index 69a5955..374e25a 100644
machine-$(CONFIG_ARCH_H720X) += h720x
diff --git a/arch/arm/boot/dts/efm32gg-dk3750.dts b/arch/arm/boot/dts/efm32gg-dk3750.dts
new file mode 100644
-index 0000000..3fc2369
+index 0000000..aa43fb4
--- /dev/null
+++ b/arch/arm/boot/dts/efm32gg-dk3750.dts
@@ -0,0 +1,69 @@
@@ -135,7 +135,7 @@ index 0000000..3fc2369
+ };
+
+ chosen {
-+ bootargs = "console=ttyefm4,115200 init=/linuxrc ignore_loglevel ihash_entries=64 dhash_entries=64 earlyprintk uclinux.physaddr=0x8c000000 root=/dev/mtdblock0";
++ bootargs = "console=ttyefm4,115200 init=/linuxrc ignore_loglevel ihash_entries=64 dhash_entries=64 earlyprintk uclinux.physaddr=0x8c400000 root=/dev/mtdblock0";
+ };
+
+ memory {
diff --git a/patches/linux-3.8-rc5/0020-HACK-ARM-allow-a-bootloader-to-be-embedded-and-do-it.patch b/patches/linux-3.8-rc5/0020-HACK-ARM-allow-a-bootloader-to-be-embedded-and-do-it.patch
index 2ff70a4..f2d0929 100644
--- a/patches/linux-3.8-rc5/0020-HACK-ARM-allow-a-bootloader-to-be-embedded-and-do-it.patch
+++ b/patches/linux-3.8-rc5/0020-HACK-ARM-allow-a-bootloader-to-be-embedded-and-do-it.patch
@@ -9,9 +9,9 @@ Content-Transfer-Encoding: 8bit
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
---
arch/arm/kernel/vmlinux.lds.S | 5 +
- arch/arm/mach-efm32/Makefile | 6 +
+ arch/arm/mach-efm32/Makefile | 8 ++
arch/arm/mach-efm32/bootloader.S | 252 ++++++++++++++++++++++++++++++++++++++
- 3 files changed, 263 insertions(+)
+ 3 files changed, 265 insertions(+)
create mode 100644 arch/arm/mach-efm32/bootloader.S
diff --git a/arch/arm/kernel/vmlinux.lds.S b/arch/arm/kernel/vmlinux.lds.S
@@ -31,11 +31,13 @@ index 11c1785..d573600 100644
_text = .;
HEAD_TEXT
diff --git a/arch/arm/mach-efm32/Makefile b/arch/arm/mach-efm32/Makefile
-index 0f593e7..878dc84 100644
+index 0f593e7..ee10216 100644
--- a/arch/arm/mach-efm32/Makefile
+++ b/arch/arm/mach-efm32/Makefile
-@@ -1,3 +1,9 @@
+@@ -1,3 +1,11 @@
++ifeq ($(CONFIG_FLASH_MEM_BASE),0x00000000)
+obj-y += bootloader.o
++endif
+
+ifeq ($(CONFIG_USE_OF),y)
+$(obj)/bootloader.o: $(obj)/../boot/dts/efm32gg-dk3750.dtb
diff --git a/platformconfig b/platformconfig
index 9a3ad9e..5f22a05 100644
--- a/platformconfig
+++ b/platformconfig
@@ -107,6 +107,7 @@ PTXCONF_KERNEL_IMAGE_XIP=y
# PTXCONF_KERNEL_IMAGE_RAW is not set
# PTXCONF_KERNEL_IMAGE_SIMPLE is not set
PTXCONF_KERNEL_IMAGE="xipImage"
+PTXCONF_KERNEL_DTC=y
# PTXCONF_KERNEL_XZ is not set
# PTXCONF_KERNEL_LZOP is not set
@@ -120,8 +121,11 @@ PTXCONF_KERNEL_CONFIG="kernelconfig-${PTXCONF_KERNEL_VERSION}"
# Development features
#
PTXCONF_KERNEL_EXTRA_MAKEVARS=""
-# PTXCONF_HOST_DTC is not set
-# PTXCONF_DTC is not set
+PTXCONF_DTC=y
+# PTXCONF_DTC_INSTALL_OFTREE is not set
+PTXCONF_DTC_OFTREE_DTS="${KERNEL_DIR}/arch/arm/boot/dts/efm32gg-dk3750.dts"
+PTXCONF_DTC_KERNEL=y
+PTXCONF_DTC_EXTRA_ARGS=""
#
# console options