summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README8
-rw-r--r--arch/arm/config.mk8
-rw-r--r--arch/avr32/config.mk2
-rw-r--r--arch/blackfin/config.mk2
-rw-r--r--arch/i386/config.mk2
-rw-r--r--arch/m68k/config.mk2
-rw-r--r--arch/microblaze/config.mk2
-rw-r--r--arch/mips/config.mk2
-rw-r--r--arch/powerpc/config.mk2
-rw-r--r--arch/sh/config.mk4
-rw-r--r--arch/sparc/config.mk2
-rw-r--r--examples/standalone/Makefile2
-rw-r--r--include/configs/omap2420h4.h2
13 files changed, 24 insertions, 16 deletions
diff --git a/README b/README
index c128a6c5b5..c9fedd8011 100644
--- a/README
+++ b/README
@@ -1997,6 +1997,14 @@ The following options need to be configured:
example, some LED's) on your board. At the moment,
the following checkpoints are implemented:
+- Standalone program support:
+ CONFIG_STANDALONE_LOAD_ADDR
+
+ This option allows to define board specific values
+ for the address where standalone program gets loaded,
+ thus overwriting the architecutre dependent default
+ settings.
+
Legacy uImage format:
Arg Where When
diff --git a/arch/arm/config.mk b/arch/arm/config.mk
index a6a4742451..fcc26a2f30 100644
--- a/arch/arm/config.mk
+++ b/arch/arm/config.mk
@@ -23,13 +23,11 @@
CROSS_COMPILE ?= arm-linux-
-ifeq ($(BOARD),omap2420h4)
-STANDALONE_LOAD_ADDR = 0x80300000
-else
+ifndef CONFIG_STANDALONE_LOAD_ADDR
ifeq ($(SOC),omap3)
-STANDALONE_LOAD_ADDR = 0x80300000
+CONFIG_STANDALONE_LOAD_ADDR = 0x80300000
else
-STANDALONE_LOAD_ADDR = 0xc100000
+CONFIG_STANDALONE_LOAD_ADDR = 0xc100000
endif
endif
diff --git a/arch/avr32/config.mk b/arch/avr32/config.mk
index 1121ca1cc2..9488c49132 100644
--- a/arch/avr32/config.mk
+++ b/arch/avr32/config.mk
@@ -23,7 +23,7 @@
CROSS_COMPILE ?= avr32-linux-
-STANDALONE_LOAD_ADDR = 0x00000000
+CONFIG_STANDALONE_LOAD_ADDR ?= 0x00000000
PLATFORM_RELFLAGS += -ffixed-r5 -fPIC -mno-init-got -mrelax
PLATFORM_LDFLAGS += --relax
diff --git a/arch/blackfin/config.mk b/arch/blackfin/config.mk
index 95cf7db2b4..f0909e95d2 100644
--- a/arch/blackfin/config.mk
+++ b/arch/blackfin/config.mk
@@ -23,7 +23,7 @@
CROSS_COMPILE ?= bfin-uclinux-
-STANDALONE_LOAD_ADDR = 0x1000 -m elf32bfin
+CONFIG_STANDALONE_LOAD_ADDR ?= 0x1000 -m elf32bfin
ifeq ($(CONFIG_BFIN_CPU),)
CONFIG_BFIN_CPU := \
diff --git a/arch/i386/config.mk b/arch/i386/config.mk
index 47e0fb4c78..e9452012a6 100644
--- a/arch/i386/config.mk
+++ b/arch/i386/config.mk
@@ -21,7 +21,7 @@
# MA 02111-1307 USA
#
-STANDALONE_LOAD_ADDR = 0x40000
+CONFIG_STANDALONE_LOAD_ADDR ?= 0x40000
PLATFORM_CPPFLAGS += -fno-strict-aliasing
PLATFORM_CPPFLAGS += -Wstrict-prototypes
diff --git a/arch/m68k/config.mk b/arch/m68k/config.mk
index 749c38968a..863f3ddbc6 100644
--- a/arch/m68k/config.mk
+++ b/arch/m68k/config.mk
@@ -24,7 +24,7 @@
CROSS_COMPILE ?= m68k-elf-
clibdir = $(shell dirname `$(CC) $(CFLAGS) -print-file-name=libc.a`)
-STANDALONE_LOAD_ADDR = 0x20000 -L $(clibdir)
+CONFIG_STANDALONE_LOAD_ADDR ?= 0x20000 -L $(clibdir)
PLATFORM_CPPFLAGS += -DCONFIG_M68K -D__M68K__
PLATFORM_LDFLAGS += -n
diff --git a/arch/microblaze/config.mk b/arch/microblaze/config.mk
index c3c9f958c0..abea70bb0d 100644
--- a/arch/microblaze/config.mk
+++ b/arch/microblaze/config.mk
@@ -26,6 +26,6 @@
CROSS_COMPILE ?= mb-
-STANDALONE_LOAD_ADDR = 0x80F00000
+CONFIG_STANDALONE_LOAD_ADDR ?= 0x80F00000
PLATFORM_CPPFLAGS += -ffixed-r31 -D__microblaze__
diff --git a/arch/mips/config.mk b/arch/mips/config.mk
index aa06761ae3..318d34b1e6 100644
--- a/arch/mips/config.mk
+++ b/arch/mips/config.mk
@@ -23,7 +23,7 @@
CROSS_COMPILE ?= mips_4KC-
-STANDALONE_LOAD_ADDR = 0x80200000 -T mips.lds
+CONFIG_STANDALONE_LOAD_ADDR ?= 0x80200000 -T mips.lds
PLATFORM_CPPFLAGS += -DCONFIG_MIPS -D__MIPS__
diff --git a/arch/powerpc/config.mk b/arch/powerpc/config.mk
index 8d72fbd7ec..3afc439e58 100644
--- a/arch/powerpc/config.mk
+++ b/arch/powerpc/config.mk
@@ -23,7 +23,7 @@
CROSS_COMPILE ?= ppc_8xx-
-STANDALONE_LOAD_ADDR = 0x40000
+CONFIG_STANDALONE_LOAD_ADDR ?= 0x40000
LDFLAGS_FINAL += --gc-sections
PLATFORM_RELFLAGS += -fpic -mrelocatable -ffunction-sections -fdata-sections
PLATFORM_RELFLAGS += $(call cc-option,-msingle-pic-base,)
diff --git a/arch/sh/config.mk b/arch/sh/config.mk
index cd851f59c4..af57307574 100644
--- a/arch/sh/config.mk
+++ b/arch/sh/config.mk
@@ -23,9 +23,9 @@
CROSS_COMPILE ?= sh4-linux-
-STANDALONE_LOAD_ADDR = 0x8C000000
+CONFIG_STANDALONE_LOAD_ADDR ?= 0x8C000000
ifeq ($(CPU),sh2)
-STANDALONE_LOAD_ADDR += -EB
+CONFIG_STANDALONE_LOAD_ADDR += -EB
endif
PLATFORM_CPPFLAGS += -DCONFIG_SH -D__SH__
diff --git a/arch/sparc/config.mk b/arch/sparc/config.mk
index 4de6515ef4..cae7478e28 100644
--- a/arch/sparc/config.mk
+++ b/arch/sparc/config.mk
@@ -23,6 +23,6 @@
CROSS_COMPILE ?= sparc-elf-
-STANDALONE_LOAD_ADDR = 0x00000000 -L $(gcclibdir) -T sparc.lds
+CONFIG_STANDALONE_LOAD_ADDR ?= 0x00000000 -L $(gcclibdir) -T sparc.lds
PLATFORM_CPPFLAGS += -DCONFIG_SPARC -D__sparc__
diff --git a/examples/standalone/Makefile b/examples/standalone/Makefile
index c1dfdce581..66b5d24f03 100644
--- a/examples/standalone/Makefile
+++ b/examples/standalone/Makefile
@@ -95,7 +95,7 @@ $(LIB): $(obj).depend $(LIBOBJS)
$(ELF):
$(obj)%: $(obj)%.o $(LIB)
- $(LD) -g -Ttext $(STANDALONE_LOAD_ADDR) \
+ $(LD) -g -Ttext $(CONFIG_STANDALONE_LOAD_ADDR) \
-o $@ -e $(SYM_PREFIX)$(notdir $(<:.o=)) $< $(LIB) \
-L$(gcclibdir) -lgcc
diff --git a/include/configs/omap2420h4.h b/include/configs/omap2420h4.h
index 7161ab18ca..2888c7bfbc 100644
--- a/include/configs/omap2420h4.h
+++ b/include/configs/omap2420h4.h
@@ -38,6 +38,8 @@
/*#define CONFIG_APTIX 1 #* define if on APTIX test chip */
/*#define CONFIG_VIRTIO 1 #* Using Virtio simulator */
+#define CONFIG_STANDALONE_LOAD_ADDR 0x80300000
+
/* Clock config to target*/
#define PRCM_CONFIG_II 1
/* #define PRCM_CONFIG_III 1 */