summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--arch/Kconfig6
-rw-r--r--arch/microblaze/config.mk6
-rw-r--r--configs/microblaze-generic_defconfig1
3 files changed, 10 insertions, 3 deletions
diff --git a/arch/Kconfig b/arch/Kconfig
index 4851300e9bb..02de32f9c77 100644
--- a/arch/Kconfig
+++ b/arch/Kconfig
@@ -448,7 +448,7 @@ source "arch/riscv/Kconfig"
source "board/keymile/Kconfig"
-if MIPS
+if MIPS || MICROBLAZE
choice
prompt "Endianness selection"
@@ -460,11 +460,11 @@ choice
config SYS_BIG_ENDIAN
bool "Big endian"
- depends on SUPPORTS_BIG_ENDIAN
+ depends on (SUPPORTS_BIG_ENDIAN && MIPS) || MICROBLAZE
config SYS_LITTLE_ENDIAN
bool "Little endian"
- depends on SUPPORTS_LITTLE_ENDIAN
+ depends on (SUPPORTS_LITTLE_ENDIAN && MIPS) || MICROBLAZE
endchoice
diff --git a/arch/microblaze/config.mk b/arch/microblaze/config.mk
index de5b97e719c..3e84a832fc1 100644
--- a/arch/microblaze/config.mk
+++ b/arch/microblaze/config.mk
@@ -16,3 +16,9 @@ LDFLAGS_FINAL += --gc-sections
ifeq ($(CONFIG_SPL_BUILD),)
PLATFORM_CPPFLAGS += -fPIC
endif
+
+ifeq ($(CONFIG_SYS_LITTLE_ENDIAN),y)
+PLATFORM_ELFFLAGS += -B microblaze $(OBJCOPYFLAGS) -O elf32-microblazeel
+else
+PLATFORM_ELFFLAGS += -B microblaze $(OBJCOPYFLAGS) -O elf32-microblaze
+endif
diff --git a/configs/microblaze-generic_defconfig b/configs/microblaze-generic_defconfig
index 7994110b28a..35e32466bdf 100644
--- a/configs/microblaze-generic_defconfig
+++ b/configs/microblaze-generic_defconfig
@@ -14,6 +14,7 @@ CONFIG_XILINX_MICROBLAZE0_USE_BARREL=1
CONFIG_XILINX_MICROBLAZE0_USE_DIV=1
CONFIG_XILINX_MICROBLAZE0_USE_HW_MUL=1
CONFIG_DISTRO_DEFAULTS=y
+CONFIG_REMAKE_ELF=y
CONFIG_FIT=y
CONFIG_FIT_VERBOSE=y
CONFIG_BOOTDELAY=-1