source: rtems/make/custom/dmv177.cfg @ d102375e

Last change on this file since d102375e was d102375e, checked in by Joel Sherrill <joel.sherrill@…>, on May 28, 2000 at 5:52:30 PM

Removed definition of PPC_ABI and PPC_ASM as there are now defaults
that reflect the GNU toolset.

  • Property mode set to 100644
File size: 4.2 KB
Line 
1#
2#  Config file for a PowerPC 603e based DY-4 VMEbus Single Board Computer.
3#  This BSP should work with the following models:
4#
5#     + SVME-171/DMV-171
6#     + SVME-176/DMV-176
7#
8#  $Id$
9#
10
11include $(RTEMS_ROOT)/make/custom/default.cfg
12
13RTEMS_CPU=powerpc
14RTEMS_CPU_MODEL=ppc603e
15
16# This is the actual bsp directory used during the build process.
17RTEMS_BSP_FAMILY=dmv177
18
19#  This section makes the target dependent options file.
20
21#  NDEBUG (C library)
22#     if defined asserts do not generate code.  This is commonly used
23#     as a command line option.
24#
25#  RTEMS_TEST_NO_PAUSE (RTEMS tests)
26#     do not pause between screens of output in the rtems tests
27#
28#  RTEMS_DEBUG (RTEMS)
29#     If defined, debug checks in RTEMS and support library code are enabled.
30#
31#  CONSOLE_USE_POLLED     (psim_bsp)
32#  CONSOLE_USE_INTERRUPTS (psim_bsp)
33#     The psim console driver has the structure to operate in either
34#     polled or interrupt mode.  However both modes only trap to the
35#     monitor currently.
36#
37#  PPC_VECTOR_FILE_BASE (ppc)
38#     This defines the base address of the exception table.
39#     NOTE: Vectors are actually at 0xFFF00000 but file starts at offset 0x0100
40#
41#  PPC_USE_SPRG (RTEMS PowerPC port)
42#     If defined, then the PowerPC specific code in RTEMS will use some
43#     of the special purpose registers to slightly optimize interrupt
44#     response time.  The use of these registers can conflict with
45#     other tools like debuggers.
46#
47#  PPC_USE_DATA_CACHE (RTEMS PowerPC port/BSP)
48#     If defined, then the PowerPC specific code in RTEMS will use
49#     data cache instructions to optimize the context switch code.
50#     This code can conflict with debuggers or emulators.  It is known
51#     to break the Corelis PowerPC emulator with at least some combinations
52#     of PowerPC 603e revisions and emulator versions.
53#     The BSP actually contains the call that enables this.
54#
55#  PPC_USE_INSTRUCTION_CACHE (RTEMS PowerPC port/BSP)
56#     If defined, then the PowerPC specific code in RTEMS will use
57#     data cache instructions to optimize the context switch code.
58#     This code can conflict with debuggers or emulators.
59#     The BSP actually contains the call that enables this.
60
61define make-target-options
62        @echo "/* #define NDEBUG 1 */ "                            >>$@
63        @echo "#define RTEMS_TEST_NO_PAUSE 1"                      >>$@
64        @echo "/* #define RTEMS_DEBUG  1 */"                       >>$@
65        @echo "#define CONSOLE_USE_INTERRUPTS 0"                   >>$@
66        @echo "#define CONSOLE_USE_POLLED !CONSOLE_USE_INTERRUPTS" >>$@
67        @echo "#define PPC_VECTOR_FILE_BASE 0x0100"                >>$@
68        @echo "#define PPC_USE_SPRG 0"                             >>$@
69        @echo "#define PPC_USE_DATA_CACHE 0"                       >>$@
70        @echo "#define PPC_USE_INSTRUCTION_CACHE 1"                >>$@
71endef
72
73#  This contains the compiler options necessary to select the CPU model
74#  and (hopefully) optimize for it.
75#
76CPU_CFLAGS = -mcpu=603
77
78# optimize flag: typically -0, could use -O4 or -fast
79# -O4 is ok for RTEMS
80# NOTE: some level of -O may be actually required by inline assembler
81CFLAGS_OPTIMIZE_V=-O4 -fno-keep-inline-functions
82
83# Define this to yes if this target supports a real-time clock.
84HAS_RTC=yes
85
86# The following is a ld command file which works without using the
87# -specs system in gcc 2.8.  IT HAS NEVER BEEN TESTED WITH THIS BSP!!!
88#       $(LD) $(XLDFLAGS) -T $(LINKCMDS) \
89#         -o $@ -u atexit -u __vectors -u download_entry $(LINK_FILES)
90#       $(LD) $(XLDFLAGS) -Ttext 0x20000 \
91#         -o $@ -u atexit -u __vectors -u download_entry $(LINK_FILES)
92
93#       $(CC) -mmvme -mrtems -nostartfiles -mcpu=603 \
94#           -o $(basename $@).exe -L $(PROJECT_RELEASE)/lib \
95#            $(START_FILE) $(LINK_OBJS) \
96#            $(LD_LIBS) \
97#           -Wl,-\( -Wl,-lc -Wl,-lrtemsall -Wl,-lgcc -Wl,-\)
98define make-exe
99        $(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) \
100            -o $(basename $@).nxe $(LINK_OBJS) $(LINK_LIBS)
101        $(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).i
102        $(SED) -e 's/.$$//' -e '/^S0/d' $(basename $@).i | \
103            $(PACKHEX) > $(basename $@).exe
104        $(NM) -g -n $(basename $@).nxe > $(basename $@).num
105        $(SIZE) $(basename $@).nxe
106        $(STRIP) $(basename $@).nxe
107endef
108
109# Miscellaneous additions go here
110
111# Let the HWAPI know which set of drivers to build
112DRIVER_ARCHITECTURE=vmebus
Note: See TracBrowser for help on using the repository browser.