Commit e7daa60575932e76395cef2d19205d43f96983d7
1 parent
48733d19
Add CRIS configuration bits, by Edgar E. Iglesias.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3368 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
3 changed files
with
36 additions
and
3 deletions
Makefile.target
| ... | ... | @@ -324,6 +324,15 @@ ifeq ($(TARGET_BASE_ARCH), alpha) |
| 324 | 324 | LIBOBJS+= op_helper.o helper.o alpha_palcode.o |
| 325 | 325 | endif |
| 326 | 326 | |
| 327 | +ifeq ($(TARGET_BASE_ARCH), cris) | |
| 328 | +LIBOBJS+= op_helper.o helper.o | |
| 329 | +LIBOBJS+= cris-dis.o | |
| 330 | + | |
| 331 | +ifndef CONFIG_USER_ONLY | |
| 332 | +LIBOBJS+= mmu.o | |
| 333 | +endif | |
| 334 | +endif | |
| 335 | + | |
| 327 | 336 | # NOTE: the disassembler code is only needed for debugging |
| 328 | 337 | LIBOBJS+=disas.o |
| 329 | 338 | ifeq ($(findstring i386, $(TARGET_ARCH) $(ARCH)),i386) |
| ... | ... | @@ -461,6 +470,12 @@ VL_OBJS+= ide.o gt64xxx.o pckbd.o ps2.o fdc.o mc146818rtc.o usb-uhci.o acpi.o ds |
| 461 | 470 | VL_OBJS+= piix_pci.o smbus_eeprom.o parallel.o mixeng.o cirrus_vga.o $(SOUND_HW) $(AUDIODRV) |
| 462 | 471 | CPPFLAGS += -DHAS_AUDIO |
| 463 | 472 | endif |
| 473 | +ifeq ($(TARGET_BASE_ARCH), cris) | |
| 474 | +VL_OBJS+= etraxfs.o | |
| 475 | +VL_OBJS+= ptimer.o | |
| 476 | +VL_OBJS+= etraxfs_timer.o | |
| 477 | +VL_OBJS+= etraxfs_ser.o | |
| 478 | +endif | |
| 464 | 479 | ifeq ($(TARGET_BASE_ARCH), sparc) |
| 465 | 480 | ifeq ($(TARGET_ARCH), sparc64) |
| 466 | 481 | VL_OBJS+= sun4u.o ide.o pckbd.o ps2.o vga.o apb_pci.o | ... | ... |
configure
| ... | ... | @@ -53,6 +53,9 @@ case "$cpu" in |
| 53 | 53 | mips64) |
| 54 | 54 | cpu="mips64" |
| 55 | 55 | ;; |
| 56 | + cris) | |
| 57 | + cpu="cris" | |
| 58 | + ;; | |
| 56 | 59 | s390*) |
| 57 | 60 | cpu="s390" |
| 58 | 61 | ;; |
| ... | ... | @@ -497,11 +500,11 @@ fi |
| 497 | 500 | if test -z "$target_list" ; then |
| 498 | 501 | # these targets are portable |
| 499 | 502 | if [ "$softmmu" = "yes" ] ; then |
| 500 | - target_list="i386-softmmu ppc-softmmu sparc-softmmu x86_64-softmmu mips-softmmu mipsel-softmmu mips64-softmmu mips64el-softmmu arm-softmmu ppc64-softmmu ppcemb-softmmu m68k-softmmu sh4-softmmu" | |
| 503 | + target_list="i386-softmmu ppc-softmmu sparc-softmmu x86_64-softmmu mips-softmmu mipsel-softmmu mips64-softmmu mips64el-softmmu arm-softmmu ppc64-softmmu ppcemb-softmmu m68k-softmmu sh4-softmmu cris-softmmu" | |
| 501 | 504 | fi |
| 502 | 505 | # the following are Linux specific |
| 503 | 506 | if [ "$linux_user" = "yes" ] ; then |
| 504 | - target_list="i386-linux-user arm-linux-user armeb-linux-user sparc-linux-user ppc-linux-user mips-linux-user mipsel-linux-user m68k-linux-user alpha-linux-user ppc64-linux-user sh4-linux-user $target_list" | |
| 507 | + target_list="i386-linux-user arm-linux-user armeb-linux-user sparc-linux-user ppc-linux-user mips-linux-user mipsel-linux-user m68k-linux-user alpha-linux-user ppc64-linux-user sh4-linux-user cris-linux-user $target_list" | |
| 505 | 508 | fi |
| 506 | 509 | # the following are Darwin specific |
| 507 | 510 | if [ "$darwin_user" = "yes" ] ; then |
| ... | ... | @@ -782,6 +785,9 @@ elif test "$cpu" = "mips" ; then |
| 782 | 785 | elif test "$cpu" = "mips64" ; then |
| 783 | 786 | echo "ARCH=mips64" >> $config_mak |
| 784 | 787 | echo "#define HOST_MIPS64 1" >> $config_h |
| 788 | +elif test "$cpu" = "cris" ; then | |
| 789 | + echo "ARCH=cris" >> $config_mak | |
| 790 | + echo "#define HOST_CRIS 1" >> $config_h | |
| 785 | 791 | elif test "$cpu" = "s390" ; then |
| 786 | 792 | echo "ARCH=s390" >> $config_mak |
| 787 | 793 | echo "#define HOST_S390 1" >> $config_h |
| ... | ... | @@ -1053,6 +1059,12 @@ elif test "$target_cpu" = "mips64" -o "$target_cpu" = "mips64el" ; then |
| 1053 | 1059 | echo "#define TARGET_ARCH \"mips64\"" >> $config_h |
| 1054 | 1060 | echo "#define TARGET_MIPS 1" >> $config_h |
| 1055 | 1061 | echo "#define TARGET_MIPS64 1" >> $config_h |
| 1062 | +elif test "$target_cpu" = "cris" ; then | |
| 1063 | + echo "TARGET_ARCH=cris" >> $config_mak | |
| 1064 | + echo "#define TARGET_ARCH \"cris\"" >> $config_h | |
| 1065 | + echo "#define TARGET_CRIS 1" >> $config_h | |
| 1066 | + echo "CONFIG_SOFTFLOAT=yes" >> $config_mak | |
| 1067 | + echo "#define CONFIG_SOFTFLOAT 1" >> $config_h | |
| 1056 | 1068 | elif test "$target_cpu" = "sh4" -o "$target_cpu" = "sh4eb" ; then |
| 1057 | 1069 | echo "TARGET_ARCH=sh4" >> $config_mak |
| 1058 | 1070 | echo "#define TARGET_ARCH \"sh4\"" >> $config_h |
| ... | ... | @@ -1135,8 +1147,9 @@ done # for target in $targets |
| 1135 | 1147 | |
| 1136 | 1148 | # build tree in object directory if source path is different from current one |
| 1137 | 1149 | if test "$source_path_used" = "yes" ; then |
| 1138 | - DIRS="tests" | |
| 1150 | + DIRS="tests tests/cris" | |
| 1139 | 1151 | FILES="Makefile tests/Makefile" |
| 1152 | + FILES="$FILES tests/cris/Makefile tests/cris/.gdbinit" | |
| 1140 | 1153 | for dir in $DIRS ; do |
| 1141 | 1154 | mkdir -p $dir |
| 1142 | 1155 | done | ... | ... |
tests/Makefile
| ... | ... | @@ -98,6 +98,11 @@ test2: |
| 98 | 98 | ../$${arch}-linux-user/qemu-$${arch} $${arch}/ls -l linux-test.c ; \ |
| 99 | 99 | done |
| 100 | 100 | |
| 101 | + | |
| 102 | +# testsuite for the CRIS port. | |
| 103 | +test-cris: | |
| 104 | + $(MAKE) -C cris check | |
| 105 | + | |
| 101 | 106 | clean: |
| 102 | 107 | rm -f *~ *.o test-i386.out test-i386.ref \ |
| 103 | 108 | test-x86_64.log test-x86_64.ref qruncom $(TESTS) | ... | ... |