summaryrefslogtreecommitdiffstats
path: root/make/custom/erc32.cfg
diff options
context:
space:
mode:
Diffstat (limited to 'make/custom/erc32.cfg')
-rw-r--r--make/custom/erc32.cfg17
1 files changed, 13 insertions, 4 deletions
diff --git a/make/custom/erc32.cfg b/make/custom/erc32.cfg
index b5621caf54..598b82fb2a 100644
--- a/make/custom/erc32.cfg
+++ b/make/custom/erc32.cfg
@@ -8,8 +8,12 @@
include $(RTEMS_ROOT)/make/custom/default.cfg
RTEMS_CPU=sparc
-RTEMS_CPU_MODEL=erc32
+ifeq ($(RTEMS_CPU_MODEL),erc32nfp)
+MSOFT_FLOAT = -msoft-float
+else
+RTEMS_CPU_MODEL=erc32
+endif
# This is the actual bsp directory used during the build process.
RTEMS_BSP_FAMILY=erc32
@@ -19,10 +23,10 @@ RTEMS_BSP_FAMILY=erc32
ifeq ($(RTEMS_USE_GCC272),yes)
# -mno-v8 says not to use v8 level instructions. i.e. use v7 only
# FIXME: This known not to work with gcc's >= gcc-2.95
-CPU_CFLAGS = -mno-v8 -mcypress
+CPU_CFLAGS = -mno-v8 -mcypress $(MSOFT_FLOAT)
else
# -mcpu=cypress says to optimize for a Cypress 60x chipset
-CPU_CFLAGS = -mcpu=cypress
+CPU_CFLAGS = -mcpu=cypress $(MSOFT_FLOAT)
endif
# optimize flag: typically -0, could use -O4 or -fast
@@ -51,13 +55,18 @@ CFLAGS_OPTIMIZE_V=-O4
# FPU_REVB (erc32_bsp)
# If defined, enables work-around for bug 3.14 in FPU rev.B or rev.C
#
+# CPU_U32_FIX (all)
+# Needed to align received TCP/IP packets since SPARC does not
+# support unaligned memory access.
+#
define make-target-options
@echo "#define NO_TABLE_MOVE 1" >>$@
@echo "#define CONSOLE_USE_INTERRUPTS 0" >>$@
@echo "#define CONSOLE_USE_POLLED !CONSOLE_USE_INTERRUPTS" >>$@
@echo "/* #define SIMSPARC_FAST_IDLE 1 */" >>$@
- @echo "#define FPU_REVB 1" >>$@
+ @echo "/* #define FPU_REVB 1 */" >>$@
+ @echo "#define CPU_U32_FIX 1" >>$@
endef
# The following are definitions of make-exe which will work using ld as