summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2004-11-10 22:18:12 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2004-11-10 22:18:12 +0000
commit5dba5174494202d76f142e2d3d07601d10629f07 (patch)
tree325d775dd5fb5500a265cb24e03ebd2cc7390a06
parent2004-11-10 Richard Campbell <richard.campbell@oarcorp.com> (diff)
downloadrtems-5dba5174494202d76f142e2d3d07601d10629f07.tar.bz2
2004-11-10 Richard Campbell <richard.campbell@oarcorp.com>
* custom/Makefile.am: Add MVME2100 BSP. * custom/mvme2100.cfg: New file.
-rw-r--r--make/ChangeLog5
-rw-r--r--make/custom/Makefile.am6
-rw-r--r--make/custom/mvme2100.cfg47
3 files changed, 55 insertions, 3 deletions
diff --git a/make/ChangeLog b/make/ChangeLog
index 04efded01c..017ea4ac1b 100644
--- a/make/ChangeLog
+++ b/make/ChangeLog
@@ -1,3 +1,8 @@
+2004-11-10 Richard Campbell <richard.campbell@oarcorp.com>
+
+ * custom/Makefile.am: Add MVME2100 BSP.
+ * custom/mvme2100.cfg: New file.
+
2003-09-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
custom/ppcn_60x.cfg: Remove -fvolatile-global -fvolatile from CFLAGS.
diff --git a/make/custom/Makefile.am b/make/custom/Makefile.am
index b42a5041ad..0203bdd352 100644
--- a/make/custom/Makefile.am
+++ b/make/custom/Makefile.am
@@ -10,11 +10,11 @@ rtems_make_custom_DATA = default.cfg
EXTRA_DIST = Cygwin-posix.cfg FreeBSD-posix.cfg HPUX9-posix.cfg \
Linux-posix.cfg Solaris-posix.cfg bare.cfg cvme961.cfg dmv152.cfg \
- dmv177.cfg efi332.cfg efi68k.cfg erc32.cfg erc32nfp.cfg eth_comm.cfg \
+ dmv177.cfg efi332.cfg efi68k.cfg ep1a.cfg erc32.cfg erc32nfp.cfg eth_comm.cfg \
gen68302.cfg gen68340.cfg gen68360.cfg gen68360_040.cfg gensh1.cfg \
helas403.cfg i386ex.cfg idp.cfg jmr3904.cfg leon1.cfg leon2.cfg \
- mcp750.cfg mvme136.cfg mvme147.cfg mvme147s.cfg \
- mvme162.cfg mvme162lx.cfg mvme167.cfg mvme2307.cfg no_bsp.cfg \
+ mcp750.cfg mvme136.cfg mvme147.cfg mvme147s.cfg mvme162.cfg mvme162lx.cfg \
+ mvme167.cfg mvme2100.cfg mvme2307.cfg no_bsp.cfg \
ods68302.cfg p4000.cfg p4600.cfg p4650.cfg pc386.cfg \
portsw.cfg posix.cfg ppcn_60x.cfg psim.cfg score603e.cfg shsim.cfg \
simhppa.cfg ts_386ex.cfg
diff --git a/make/custom/mvme2100.cfg b/make/custom/mvme2100.cfg
new file mode 100644
index 0000000000..951261787d
--- /dev/null
+++ b/make/custom/mvme2100.cfg
@@ -0,0 +1,47 @@
+#
+# Config file for Motorola MVME2100 -- a MPC8240 VMEBus board
+#
+# $Id$
+#
+
+include $(RTEMS_ROOT)/make/custom/default.cfg
+
+RTEMS_CPU=powerpc
+RTEMS_CPU_MODEL=mpc8240
+RTEMS_PPC_EXCEPTION_PROCESSING_MODEL=new
+
+# This is the actual bsp directory used during the build process.
+RTEMS_BSP_FAMILY=motorola_powerpc
+
+# This contains the compiler options necessary to select the CPU model
+# and (hopefully) optimize for it.
+CPU_CFLAGS = -mcpu=603e -Dmpc603e -Dppc603e
+
+# optimize flag: typically -0, could use -O4 or -fast
+# -O4 is ok for RTEMS
+# NOTE2: some level of -O may be actually required by inline assembler (at least
+# -O2 so far.
+# NOTE2 Apparently nobody really knows the status or r2 and r13.
+# As far as I know, small data are pointer impose a very specific compliation
+# model => not used.
+# Currently the sdata2 and sbss2 sections are empty => r2 is not used...
+CFLAGS_OPTIMIZE_V=-O4 -mmultiple -mstring -mstrict-align
+
+# debug flags: typically none, but at least -O1 is required due to this
+# BSP using inlined code
+CFLAGS_DEBUG_V = -O1 -mmultiple -mstring -mstrict-align
+
+define make-exe
+ $(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) \
+ -o $(basename $@).nxe $(LINK_OBJS) $(LINK_LIBS)
+ $(NM) -g -n $(basename $@).nxe > $(basename $@).num
+ $(SIZE) $(basename $@).nxe
+ $(OBJCOPY) -O binary -R .comment -S $(basename $@).nxe rtems
+ gzip -vf9 rtems
+ $(LD) -o $@ $(PROJECT_RELEASE)/lib/bootloader.o --just-symbols=$(basename $@).nxe \
+ -b binary rtems.gz -T $(PROJECT_RELEASE)/lib/ppcboot.lds \
+ -Map $(basename $@).map && chmod 755 $@
+ rm -f rtems.gz
+endef
+
+# Miscellaneous additions go here