OpenCores
URL https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk

Subversion Repositories openrisc_2011-10-31

[/] [openrisc/] [trunk/] [rtos/] [rtems/] [make/] [custom/] [mcp750.cfg] - Blame information for rev 562

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 30 unneback
#
2
#  Config file for Motorola MCP750 -- a MPC750 CompactPCI board
3
#
4
#  $Id: mcp750.cfg,v 1.2 2001-09-27 12:02:52 chris Exp $
5
#
6
 
7
include $(RTEMS_ROOT)/make/custom/default.cfg
8
 
9
RTEMS_CPU=powerpc
10
RTEMS_CPU_MODEL=mpc750
11
RTEMS_PPC_EXCEPTION_PROCESSING_MODEL=new
12
 
13
# This is the actual bsp directory used during the build process.
14
RTEMS_BSP_FAMILY=motorola_powerpc
15
 
16
#  This section makes the target dependent options file.
17
 
18
#  NDEBUG (C library)
19
#     if defined asserts do not generate code.  This is commonly used
20
#     as a command line option.
21
#
22
#  RTEMS_TEST_NO_PAUSE (RTEMS tests)
23
#     do not pause between screens of output in the rtems tests
24
#
25
#  RTEMS_DEBUG (RTEMS)
26
#     If defined, debug checks in RTEMS and support library code are enabled.
27
#
28
#  PPC_VECTOR_FILE_BASE (ppc)
29
#     This defines the base address of the exception table.
30
#     NOTE: Vectors are actually at 0xFFF00000 but file starts at offset 0x0100
31
#
32
#  PPC_USE_SPRG (RTEMS PowerPC port)
33
#     If defined, then the PowerPC specific code in RTEMS will use some
34
#     of the special purpose registers to slightly optimize interrupt
35
#     response time.  The use of these registers can conflict with
36
#     other tools like debuggers.
37
#
38
#  PPC_USE_DATA_CACHE (RTEMS PowerPC port)
39
#     If defined, then the PowerPC specific code in RTEMS will use
40
#     data cache instructions to optimize the context switch code.
41
#     This code can conflict with debuggers or emulators.
42
#
43
 
44
define make-target-options
45
        @echo "/* #define NDEBUG 1 */ "                        >>$@
46
        @echo "#define RTEMS_TEST_NO_PAUSE 1"                  >>$@
47
        @echo "/* #define RTEMS_DEBUG  1 */"                   >>$@
48
        @echo "#define PPCN_60X_USE_DINK 0"                   >>$@
49
        @echo "#define PPCN_60X_USE_NONE 1"                   >>$@
50
        @echo "#define PPC_USE_DATA_CACHE 1"                   >>$@
51
        @echo "#define PPC_VECTOR_FILE_BASE 0x0100"            >>$@
52
        @echo "#define PPC_USE_SPRG  1"                        >>$@
53
endef
54
 
55
#  This contains the compiler options necessary to select the CPU model
56
#  and (hopefully) optimize for it.
57
#
58
# NOTE : cheking egcc 1.1.1 source code shows that the last know processor
59
# is the 604 model and that this is the default generation option.
60
#
61
CPU_CFLAGS = -mcpu=750
62
 
63
# optimize flag: typically -0, could use -O4 or -fast
64
# -O4 is ok for RTEMS
65
# NOTE2: some level of -O may be actually required by inline assembler (at least
66
# -O2 so far.
67
# NOTE2 Apparently nobody really knows the status or r2 and r13.
68
# As far as I know, small data are pointer impose a very specific compliation
69
# model => not used.
70
# Currently the sdata2 and sbss2 sections are empty => r2 is not used...
71
CFLAGS_OPTIMIZE_V=-O4 -mmultiple -mstring -mstrict-align
72
#CFLAGS_OPTIMIZE_V=-O4 -fno-keep-inline-functions -fvolatile-global -fvolatile -mstrict-align -mcpu=750
73
 
74
# debug flags: typically none, but at least -O1 is required due to this
75
# BSP using inlined code
76
CFLAGS_DEBUG_V = -O1 -mmultiple -mstring -mstrict-align
77
 
78
 
79
# The following is a ld command file which works without using the
80
# -specs system in gcc 2.8.  IT HAS NEVER BEEN TESTED WITH THIS BSP!!!
81
#       $(LD) $(XLDFLAGS) -T $(LINKCMDS) \
82
#         -o $@ -u atexit -u __vectors -u download_entry $(LINK_FILES)
83
#       $(LD) $(XLDFLAGS) -Ttext 0x20000 \
84
#         -o $@ -u atexit -u __vectors -u download_entry $(LINK_FILES)
85
 
86
#       $(CC) -mmvme -mrtems -nostartfiles -mcpu=603 \
87
#           -o $(basename $@).exe -L $(PROJECT_RELEASE)/lib \
88
#            $(START_FILE) $(LINK_OBJS) \
89
#            $(LD_LIBS) \
90
#           -Wl,-\( -Wl,-lc -Wl,-lrtemsall -Wl,-lgcc -Wl,-\)
91
define make-exe
92
        $(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) \
93
           -o $@ $(LINK_OBJS) $(LINK_LIBS)
94
        $(NM) -g -n $@ > $(basename $@).num
95
        $(SIZE) $@
96
        test -d ${PROJECT_RELEASE}/bin || mkdir ${PROJECT_RELEASE}/bin
97
        $(CP) $@ $(PROJECT_ROOT)/powerpc-rtems/c/mcp750/lib/libbsp/powerpc/$(RTEMS_BSP_FAMILY)/bootloader/$(ARCH); \
98
        ( cd $(PROJECT_ROOT)/powerpc-rtems/c/mcp750/lib/libbsp/powerpc/$(RTEMS_BSP_FAMILY)/bootloader; \
99
        $(MAKE) bootloader BINARY_LOADED=$@; )
100
        f=`basename $@ .exe`; \
101
        cp $(PROJECT_ROOT)/powerpc-rtems/c/mcp750/lib/libbsp/powerpc/$(RTEMS_BSP_FAMILY)/bootloader/bootloader \
102
            ${PROJECT_RELEASE}/bin/$${f}$(LIB_VARIANT).exe \
103
        && chmod 755 \
104
          ${PROJECT_RELEASE}/bin/$${f}$(LIB_VARIANT).exe
105
endef
106
 
107
# Miscellaneous additions go here
108
 
109
# Let the HWAPI know which set of drivers to build
110
DRIVER_ARCHITECTURE=compactpci

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.