OpenCores
URL https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk

Subversion Repositories openrisc_me

[/] [openrisc/] [trunk/] [rtos/] [ecos-2.0/] [packages/] [hal/] [powerpc/] [ec555/] [v2_0/] [cdl/] [hal_powerpc_ec555.cdl] - Blame information for rev 27

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

Line No. Rev Author Line
1 27 unneback
# ====================================================================
2
#
3
#      hal_powerpc_cme555.cdl
4
#
5
#      PowerPC/cme555 board HAL package configuration data
6
#
7
# ====================================================================
8
#####ECOSGPLCOPYRIGHTBEGIN####
9
## -------------------------------------------
10
## This file is part of eCos, the Embedded Configurable Operating System.
11
## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
12
##
13
## eCos is free software; you can redistribute it and/or modify it under
14
## the terms of the GNU General Public License as published by the Free
15
## Software Foundation; either version 2 or (at your option) any later version.
16
##
17
## eCos is distributed in the hope that it will be useful, but WITHOUT ANY
18
## WARRANTY; without even the implied warranty of MERCHANTABILITY or
19
## FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
20
## for more details.
21
##
22
## You should have received a copy of the GNU General Public License along
23
## with eCos; if not, write to the Free Software Foundation, Inc.,
24
## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
25
##
26
## As a special exception, if other files instantiate templates or use macros
27
## or inline functions from this file, or you compile this file and link it
28
## with other works to produce a work based on this file, this file does not
29
## by itself cause the resulting work to be covered by the GNU General Public
30
## License. However the source code for this file must still be made available
31
## in accordance with section (3) of the GNU General Public License.
32
##
33
## This exception does not invalidate any other reasons why a work based on
34
## this file might be covered by the GNU General Public License.
35
##
36
## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.
37
## at http://sources.redhat.com/ecos/ecos-license/
38
## -------------------------------------------
39
#####ECOSGPLCOPYRIGHTEND####
40
# ====================================================================
41
######DESCRIPTIONBEGIN####
42
#
43
# Author(s):      Bob Koninckx
44
# Original data:  bartv
45
# Contributors:
46
# Date:           1999-11-02
47
#
48
#####DESCRIPTIONEND####
49
#
50
# ====================================================================
51
 
52
cdl_package CYGPKG_HAL_POWERPC_EC555 {
53
    display       "EC555 MPC555 development board"
54
    parent        CYGPKG_HAL_POWERPC
55
    requires      CYGPKG_HAL_POWERPC_MPC5xx
56
    define_header hal_powerpc_ec555.h
57
    include_dir   cyg/hal
58
    description   "
59
        The EC555 HAL package provides the support needed to run
60
        eCos on an EC555 development board from Wuerz elektronik."
61
 
62
    compile       hal_diag.c plf_misc.c ec555.S plf_stub.c
63
 
64
    implements    CYGINT_HAL_DEBUG_GDB_STUBS
65
    implements    CYGINT_HAL_DEBUG_GDB_STUBS_BREAK
66
    implements    CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT
67
    implements    CYGINT_HAL_VIRTUAL_VECTOR_COMM_BAUD_SUPPORT
68
 
69
    define_proc {
70
        puts $::cdl_system_header "#define CYGBLD_HAL_TARGET_H   "
71
        puts $::cdl_system_header "#define CYGBLD_HAL_PLATFORM_H "
72
    }
73
 
74
    cdl_component CYG_HAL_STARTUP {
75
        display       "Startup type"
76
        flavor        data
77
        legal_values  {"RAM" "ROM"}
78
        default_value {"RAM"}
79
        no_define
80
        define -file system.h CYG_HAL_STARTUP
81
        description   "
82
           When targetting the ec555 board it is possible to build
83
           the system for either RAM bootstrap or ROM bootstrap. RAM
84
           bootstrap generally requires that the board
85
           is equipped with ROMs containing a suitable ROM monitor or
86
           equivalent software that allows GDB to download the eCos
87
           application on to the board. The ROM bootstrap typically
88
           requires that the eCos application be blown into EPROMs or
89
           equivalent technology."
90
    }
91
 
92
    cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS {
93
        display      "Number of communication channels on the board"
94
        flavor       data
95
        calculated   2
96
        description      "
97
            Channel 0: Serial A, Channel 1: Serial B"
98
    }
99
 
100
    cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL {
101
        display          "Debug serial port"
102
        flavor data
103
        legal_values     0 to 1
104
        default_value    0
105
        description      "
106
           The ec555 board has two serial ports. This option
107
           chooses which port will be used to connect to a host
108
           running GDB."
109
    }
110
 
111
    cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL {
112
        display          "Diagnostic serial port"
113
        flavor data
114
        legal_values     0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1
115
        default_value    1
116
        description      "
117
           The ec555 board has two serial ports.  This option
118
           chooses which port will be used for diagnostic output."
119
    }
120
 
121
    cdl_option CYGHWR_HAL_POWERPC_BOARD_SPEED {
122
        display          "Development board clock speed (MHz)"
123
        flavor           data
124
        default_value    40
125
        description      "
126
             The development boards is fitted with a 4MHz crystal. This frequency
127
             is internally boosted to maximum 40MHz. The value is fixed to the
128
             maximum."
129
    }
130
 
131
    cdl_option CYGHWR_HAL_POWERPC_FORCE_VECTOR_BASE_LOW {
132
        display          "Force vector base at address 0x0000 0000"
133
        flavor           bool
134
        calculated       1
135
        description      "
136
             The powerpc architecture allows the vectorbase to live at either
137
             0x0000 0000 or 0xfff0 0000. Since the CME-555 has no memory at the
138
             high addresses, vectors may never be located at 0xfff0 0000 for this
139
             board. They can be still be copied though if the internal flash is
140
             disabled and relocated to somewhere else"
141
    }
142
 
143
    cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_BAUD {
144
        display          "Baud rate for serial ports"
145
        flavor           data
146
        legal_values     300 600 1200 2400 4800 9600 14400 19200 28800 38400 57600 115200
147
        default_value    38400
148
        description      "
149
             This option determines the baud rate that will be used on both the console
150
             cannel and the debug channel."
151
    }
152
 
153
    # Real-time clock/counter specifics
154
    cdl_component CYGNUM_HAL_RTC_CONSTANTS {
155
        display       "Real-time clock constants."
156
        description   "
157
            Period is busclock/16/100."
158
        flavor        none
159
 
160
        cdl_option CYGNUM_HAL_RTC_NUMERATOR {
161
            display       "Real-time clock numerator"
162
            flavor        data
163
            calculated    1000000000
164
        }
165
        cdl_option CYGNUM_HAL_RTC_DENOMINATOR {
166
            display       "Real-time clock denominator"
167
            flavor        data
168
            calculated    100
169
        }
170
        cdl_option CYGNUM_HAL_RTC_PERIOD {
171
            display       "Real-time clock period"
172
            flavor        data
173
            calculated    { (((CYGHWR_HAL_POWERPC_BOARD_SPEED*1000000)/16)/100) }
174
        }
175
    }
176
 
177
    cdl_component CYGBLD_GLOBAL_OPTIONS {
178
        display "Global build options"
179
        flavor  none
180
        parent  CYGPKG_NONE
181
        description   "
182
            Global build options including control over
183
            compiler flags, linker flags and choice of toolchain."
184
 
185
 
186
        cdl_option CYGBLD_GLOBAL_COMMAND_PREFIX {
187
            display "Global command prefix"
188
            flavor  data
189
            no_define
190
            default_value { "powerpc-eabi" }
191
            description "
192
                This option specifies the command prefix used when
193
                invoking the build tools."
194
        }
195
 
196
        cdl_option CYGBLD_GLOBAL_CFLAGS {
197
            display "Global compiler flags"
198
            flavor  data
199
            no_define
200
            default_value { "-mcpu=505 -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2 -ffunction-sections -fdata-sections -mmultiple -fno-rtti -fno-exceptions -finit-priority" }
201
            description   "
202
                This option controls the global compiler flags which
203
                are used to compile all packages by
204
                default. Individual packages may define
205
                options which override these global flags."
206
        }
207
 
208
        cdl_option CYGBLD_GLOBAL_LDFLAGS {
209
            display "Global linker flags"
210
            flavor  data
211
            no_define
212
            default_value { "-mcpu=505 -g -nostdlib -Wl,--gc-sections -Wl,-static" }
213
            description   "
214
                This option controls the global linker flags. Individual
215
                packages may define options which override these global flags."
216
        }
217
 
218
        cdl_option CYGBLD_BUILD_GDB_STUBS {
219
            display "Build GDB stub ROM image"
220
            default_value 0
221
            requires { CYG_HAL_STARTUP == "ROM" }
222
            requires CYGSEM_HAL_ROM_MONITOR
223
            requires CYGBLD_BUILD_COMMON_GDB_STUBS
224
            requires CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
225
            requires CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT
226
            requires CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT
227
            requires ! CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT
228
            requires ! CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM
229
            no_define
230
            description "
231
                This option enables the building of the GDB stubs for the
232
                board. The common HAL controls takes care of most of the
233
                build process, but the final conversion from ELF image to
234
                binary data is handled by the platform CDL, allowing
235
                relocation of the data if necessary."
236
 
237
            make -priority 320 {
238
                /bin/gdb_module.bin : /bin/gdb_module.img
239
                $(OBJCOPY) -O binary $< $@
240
            }
241
        }
242
    }
243
 
244
    cdl_component CYGHWR_MEMORY_LAYOUT {
245
        display "Memory layout"
246
        flavor data
247
        no_define
248
        calculated { CYG_HAL_STARTUP == "RAM" ? "powerpc_ec555_ram" : \
249
                                                "powerpc_ec555_rom" }
250
 
251
        cdl_option CYGHWR_MEMORY_LAYOUT_LDI {
252
            display "Memory layout linker script fragment"
253
            flavor data
254
            no_define
255
            define -file system.h CYGHWR_MEMORY_LAYOUT_LDI
256
            calculated { CYG_HAL_STARTUP == "RAM" ? "" : \
257
                                                    "" }
258
        }
259
 
260
        cdl_option CYGHWR_MEMORY_LAYOUT_H {
261
            display "Memory layout header file"
262
            flavor data
263
            no_define
264
            define -file system.h CYGHWR_MEMORY_LAYOUT_H
265
            calculated { CYG_HAL_STARTUP == "RAM" ? "" : \
266
                                                    "" }
267
        }
268
    }
269
 
270
    cdl_option CYGSEM_HAL_ROM_MONITOR {
271
        display       "Behave as a ROM monitor"
272
        flavor        bool
273
        default_value 0
274
        parent        CYGPKG_HAL_ROM_MONITOR
275
        requires      { CYG_HAL_STARTUP == "ROM" }
276
        description   "
277
            Enable this option if this program is to be used as a ROM monitor,
278
            i.e. applications will be loaded into RAM on the board, and this
279
            ROM monitor may process exceptions or interrupts generated from the
280
            application. This enables features such as utilizing a separate
281
            interrupt stack when exceptions are generated."
282
    }
283
}

powered by: WebSVN 2.1.0

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