]> Git Repo - u-boot.git/commitdiff
arch/sh: allow building in big-endian mode
authorThomas Petazzoni <[email protected]>
Fri, 28 Jul 2017 21:14:28 +0000 (23:14 +0200)
committerNobuhiro Iwamatsu <[email protected]>
Fri, 25 Aug 2017 22:38:39 +0000 (07:38 +0900)
The SuperH architecture allows to be run in either little or big
endian mode. Some SuperH SoCs get the little vs. big endian decision
through mode pins sampled at reset, so if big endian has been choosen
by HW designers, it cannot be easily changed.

Therefore, it makes sense to allow building U-Boot for SuperH in big
endian mode. To allow this, the only change needed is to adjust the
OUTPUT_FORMAT() in the linker script.

Signed-off-by: Thomas Petazzoni <[email protected]>
arch/sh/cpu/u-boot.lds

index 7fc91bc4aaaa746a1e8c137a060b818109c3914b..bd4fde9f2ca8b1b81d6a634f7604cf7899b79840 100644 (file)
@@ -9,7 +9,12 @@
 
 #include "config.h"
 
+#ifdef CONFIG_SYS_BIG_ENDIAN
+OUTPUT_FORMAT("elf32-shbig-linux", "elf32-shbig-linux", "elf32-sh-linux")
+#else
 OUTPUT_FORMAT("elf32-sh-linux", "elf32-sh-linux", "elf32-sh-linux")
+#endif
+
 OUTPUT_ARCH(sh)
 
 MEMORY
This page took 0.035297 seconds and 4 git commands to generate.