aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile.target21
-rwxr-xr-xconfigure21
2 files changed, 41 insertions, 1 deletions
diff --git a/Makefile.target b/Makefile.target
index f9f1c5984f..445d55f60b 100644
--- a/Makefile.target
+++ b/Makefile.target
@@ -185,6 +185,12 @@ endif
ifeq ($(findstring ppc, $(TARGET_BASE_ARCH) $(ARCH)),ppc)
LIBOBJS+=ppc-dis.o
endif
+ifeq ($(findstring microblaze, $(TARGET_BASE_ARCH) $(ARCH)),microblaze)
+LIBOBJS+=microblaze-dis.o
+ifndef CONFIG_USER_ONLY
+LIBOBJS+= mmu.o
+endif
+endif
ifeq ($(findstring mips, $(TARGET_BASE_ARCH) $(ARCH)),mips)
LIBOBJS+=mips-dis.o
endif
@@ -608,6 +614,21 @@ OBJS+= pflash_cfi01.o
OBJS+= vmware_vga.o
CPPFLAGS += -DHAS_AUDIO -DHAS_AUDIO_CHOICE
endif
+ifeq ($(TARGET_BASE_ARCH), microblaze)
+OBJS+= petalogix_s3adsp1800_mmu.o
+
+OBJS+= microblaze_pic_cpu.o
+OBJS+= xilinx_intc.o
+OBJS+= xilinx_timer.o
+OBJS+= xilinx_uartlite.o
+OBJS+= xilinx_ethlite.o
+
+OBJS+= pflash_cfi02.o
+ifdef FDT_LIBS
+OBJS+= device_tree.o
+LIBS+= $(FDT_LIBS)
+endif
+endif
ifeq ($(TARGET_BASE_ARCH), cris)
# Boards
OBJS+= cris_pic_cpu.o etraxfs.o axis_dev88.o
diff --git a/configure b/configure
index 8682136038..b6d18d1453 100755
--- a/configure
+++ b/configure
@@ -127,6 +127,9 @@ case "$cpu" in
m68k)
cpu="m68k"
;;
+ microblaze)
+ cpu="microblaze"
+ ;;
mips)
cpu="mips"
;;
@@ -680,6 +683,7 @@ x86_64-softmmu \
arm-softmmu \
cris-softmmu \
m68k-softmmu \
+microblaze-softmmu \
mips-softmmu \
mipsel-softmmu \
mips64-softmmu \
@@ -702,6 +706,7 @@ arm-linux-user \
armeb-linux-user \
cris-linux-user \
m68k-linux-user \
+microblaze-linux-user \
mips-linux-user \
mipsel-linux-user \
ppc-linux-user \
@@ -1443,6 +1448,10 @@ case "$cpu" in
echo "ARCH=m68k" >> $config_mak
echo "#define HOST_M68K 1" >> $config_h
;;
+ microblaze)
+ echo "ARCH=microblaze" >> $config_mak
+ echo "#define HOST_MICROBLAZE 1" >> $config_h
+ ;;
mips)
echo "ARCH=mips" >> $config_mak
echo "#define HOST_MIPS 1" >> $config_h
@@ -1765,6 +1774,7 @@ target_cpu=`echo $target | cut -d '-' -f 1`
target_bigendian="no"
[ "$target_cpu" = "armeb" ] && target_bigendian=yes
[ "$target_cpu" = "m68k" ] && target_bigendian=yes
+[ "$target_cpu" = "microblaze" ] && target_bigendian=yes
[ "$target_cpu" = "mips" ] && target_bigendian=yes
[ "$target_cpu" = "mipsn32" ] && target_bigendian=yes
[ "$target_cpu" = "mips64" ] && target_bigendian=yes
@@ -1921,7 +1931,15 @@ case "$target_cpu" in
gdb_xml_files="cf-core.xml cf-fp.xml"
target_phys_bits=32
;;
- mips|mipsel)
+ microblaze)
+ echo "TARGET_ARCH=microblaze" >> $config_mak
+ echo "#define TARGET_ARCH \"microblaze\"" >> $config_h
+ echo "#define TARGET_MICROBLAZE 1" >> $config_h
+ bflt="yes"
+ target_nptl="yes"
+ target_phys_bits=32
+ ;;
+ mips|mipsel)
echo "TARGET_ARCH=mips" >> $config_mak
echo "#define TARGET_ARCH \"mips\"" >> $config_h
echo "#define TARGET_MIPS 1" >> $config_h
@@ -2058,6 +2076,7 @@ echo "TARGET_XML_FILES=$list" >> $config_mak
if test "$target_cpu" = "arm" \
-o "$target_cpu" = "armeb" \
-o "$target_cpu" = "m68k" \
+ -o "$target_cpu" = "microblaze" \
-o "$target_cpu" = "mips" \
-o "$target_cpu" = "mipsel" \
-o "$target_cpu" = "mipsn32" \