diff options
author | Mike Frysinger <vapier@gentoo.org> | 2009-06-14 06:29:07 -0400 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2009-06-14 20:01:14 -0400 |
commit | 9ff67e5e4c719556d57f136a6453f8e4798d85c0 (patch) | |
tree | e004a20f45b84b209dfae8cc854bfc4d750be682 /include/configs/cm-bf537e.h | |
parent | f52efcae98cbb8a39f1d0535df8d9646a776af9e (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.h | 15 |
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 /* |