summaryrefslogtreecommitdiff
path: root/include/configs/cm-bf537e.h
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2009-06-14 06:29:07 -0400
committerMike Frysinger <vapier@gentoo.org>2009-06-14 20:01:14 -0400
commit9ff67e5e4c719556d57f136a6453f8e4798d85c0 (patch)
treee004a20f45b84b209dfae8cc854bfc4d750be682 /include/configs/cm-bf537e.h
parentf52efcae98cbb8a39f1d0535df8d9646a776af9e (diff)
Blackfin: unify u-boot linker scripts
All the Blackfin linker scripts were duplicated across the board dirs with no difference save from the semi-often used ENV_IS_EMBEDDED option. So unify all of them in the lib_blackfin/ dir and for the few boards that need to embedded the environment directly, add a LDS_BOARD_TEXT define for them to customize via their board config file. This is much simpler than forcing them to duplicate the rest of the linker script. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Diffstat (limited to 'include/configs/cm-bf537e.h')
-rw-r--r--include/configs/cm-bf537e.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/include/configs/cm-bf537e.h b/include/configs/cm-bf537e.h
index 65604edd675..021b631a90b 100644
--- a/include/configs/cm-bf537e.h
+++ b/include/configs/cm-bf537e.h
@@ -94,6 +94,21 @@
#else
#define ENV_IS_EMBEDDED_CUSTOM
#endif
+#ifdef ENV_IS_EMBEDDED
+/* WARNING - the following is hand-optimized to fit within
+ * the sector before the environment sector. If it throws
+ * an error during compilation remove an object here to get
+ * it linked after the configuration sector.
+ */
+# define LDS_BOARD_TEXT \
+ cpu/blackfin/traps.o (.text .text.*); \
+ cpu/blackfin/interrupt.o (.text .text.*); \
+ cpu/blackfin/serial.o (.text .text.*); \
+ common/dlmalloc.o (.text .text.*); \
+ lib_generic/crc32.o (.text .text.*); \
+ . = DEFINED(env_offset) ? env_offset : .; \
+ common/env_embedded.o (.text .text.*);
+#endif
/*