From e9b4274ab2b3c2a8810a7bdb0c4437459db6ce0a Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Fri, 25 May 2001 16:34:14 +0000 Subject: 2000-05-25 Matt Cross * New MRM332 BSP for the Mini RoboMind board based on the 68332 microcontroller designed and build by Mark Castelluccio. For details on the MRM see http://www.robominds.com. * .cvsignore, ChangeLog Makefile.am, README, bsp_specs, clock/.cvsignore, clock/Makefile.am, clock/ckinit.c, configure.in, console/.cvsignore, console/Makefile.am, console/console.c, include/.cvsignore, include/Makefile.am, include/bsp.h, include/mrm332.h, misc/dotests, misc/gdbinit68, misc/interr.c, spurious/.cvsignore, spurious/Makefile.am, spurious/spinit.c, start/.cvsignore, start/Makefile.am, start/start.c, startup/.cvsignore, startup/Makefile.am, startup/bspclean.c, startup/bspstart.c, startup/except_vect_332_ROM.S, startup/linkcmds, startup/linkcmds_ROM, timer/.cvsignore, timer/Makefile.am, timer/timer.c, times, wrapup/.cvsignore, wrapup/Makefile.am: Initial files. --- make/custom/mrm332.cfg | 93 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 93 insertions(+) create mode 100644 make/custom/mrm332.cfg (limited to 'make') diff --git a/make/custom/mrm332.cfg b/make/custom/mrm332.cfg new file mode 100644 index 0000000000..c7938a16c3 --- /dev/null +++ b/make/custom/mrm332.cfg @@ -0,0 +1,93 @@ +# +# Config file for the mrm332 BSP +# +# $Id$ +# + +include $(RTEMS_ROOT)/make/custom/default.cfg + +RTEMS_CPU=m68k +RTEMS_CPU_MODEL=mcpu32 + +# This is the actual bsp directory used during the build process. +RTEMS_BSP_FAMILY=mrm332 + +# This contains the compiler options necessary to select the CPU model +# and (hopefully) optimize for it. +CPU_CFLAGS = -mcpu32 + +# optimize flag: typically -0, could use -O4 or -fast, -O4 is ok for RTEMS +CFLAGS_OPTIMIZE_V=-O4 -fomit-frame-pointer + +# This section makes the target dependent options file. +# NDEBUG (C library) +# if defined asserts do not generate code. This is commonly used +# as a command line option. +# +# RTEMS_TEST_NO_PAUSE (RTEMS tests) +# do not pause between screens of output in the rtems tests +# +# RTEMS_DEBUG (RTEMS) +# If defined, debug checks in RTEMS and support library code are enabled. + +define make-target-options + @echo "/* #define NDEBUG 1 */ " >>$@ + @echo "#define RTEMS_TEST_NO_PAUSE 1" >>$@ + @echo "/* #define RTEMS_DEBUG 1 */" >>$@ +endef + +# The following are definitions of make-exe which will work using ld as +# is currently required. It is expected that as of gcc 2.8, the end user +# will be able to override parts of the compilers specs and link using gcc. + +ifeq ($(RTEMS_USE_GCC272),yes) +define make-exe + $(LD) $(LDFLAGS) -N -T $(LINKCMDS) -o $(basename $@).nxe \ + $(START_FILE) $(LINK_OBJS) --start-group $(LINK_LIBS) --end-group + $(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).i + $(SED) -e 's/.$$//' -e '/^S0/d' $(basename $@).i | \ + $(PACKHEX) > $(basename $@).exe + $(NM) -g -n $(basename $@).nxe > $(basename $@).num + $(SIZE) $(basename $@).nxe +endef +else +ifeq ($(MRM_IN_ROM),yes) +# Build a rommable image - move the .data section after the .text section +# in the image. +CPU_CFLAGS += -qnolinkcmds -T $(PROJECT_ROOT)/mrm332/lib/linkcmds_ROM + +define make-exe + $(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $(basename $@).pxe \ + $(LINK_OBJS) $(LINK_LIBS) + $(OBJCOPY) --adjust-section-vma \ + .data=`m68k-rtems-objdump --section-headers $(basename $@).pxe | \ + awk 'function h2d(x) { x=toupper(x); digits=length(x); s=0 ; \ + for (p=digits; p>0; p--) \ + s += (16^(p-1)) * ( index("0123456789ABCDEF",\ + substr(x,1+digits-p,1)) -1 );\ + return s } ;\ + /\.text/ { base = $$4 ; size = $$3 };\ + END { printf("0x%x", h2d(base) + h2d(size)) }'\ + ` $(basename $@).pxe $(basename $@).nxe + $(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).i + $(SED) -e 's/.$$//' -e '/^S0/d' $(basename $@).i | \ + $(PACKHEX) > $(basename $@).exe + $(NM) -g -n $(basename $@).pxe > $(basename $@).pnum + $(NM) -g -n $(basename $@).nxe > $(basename $@).num + $(SIZE) $(basename $@).nxe +endef +else +define make-exe + $(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $(basename $@).nxe \ + $(LINK_OBJS) $(LINK_LIBS) + $(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).i + $(SED) -e 's/.$$//' -e '/^S0/d' $(basename $@).i | \ + $(PACKHEX) > $(basename $@).exe + $(NM) -g -n $(basename $@).nxe > $(basename $@).num + $(SIZE) $(basename $@).nxe +endef +endif +endif + + +# Miscellaneous additions go here -- cgit v1.2.3