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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [rtos/] [ecos-3.0/] [packages/] [hal/] [powerpc/] [cogent/] [current/] [cdl/] [hal_powerpc_cogent.cdl] - Blame information for rev 786

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 786 skrzyp
# ====================================================================
2
#
3
#      hal_powerpc_cogent.cdl
4
#
5
#      PowerPC/Cogent 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, 2003 Free Software Foundation, 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
16
## version.
17
##
18
## eCos is distributed in the hope that it will be useful, but WITHOUT
19
## ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
20
## FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
21
## for more details.
22
##
23
## You should have received a copy of the GNU General Public License
24
## along with eCos; if not, write to the Free Software Foundation, Inc.,
25
## 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
26
##
27
## As a special exception, if other files instantiate templates or use
28
## macros or inline functions from this file, or you compile this file
29
## and link it with other works to produce a work based on this file,
30
## this file does not by itself cause the resulting work to be covered by
31
## the GNU General Public License. However the source code for this file
32
## must still be made available in accordance with section (3) of the GNU
33
## General Public License v2.
34
##
35
## This exception does not invalidate any other reasons why a work based
36
## on this file might be covered by the GNU General Public License.
37
## -------------------------------------------
38
## ####ECOSGPLCOPYRIGHTEND####
39
# ====================================================================
40
######DESCRIPTIONBEGIN####
41
#
42
# Author(s):      jskov
43
# Original data:  bartv
44
# Contributors:
45
# Date:           1999-11-02
46
#
47
#####DESCRIPTIONEND####
48
#
49
# ====================================================================
50
 
51
cdl_package CYGPKG_HAL_POWERPC_COGENT {
52
    display       "Cogent PowerPC evaluation board"
53
    parent        CYGPKG_HAL_POWERPC
54
    requires      CYGPKG_HAL_POWERPC_MPC8xx
55
    define_header hal_powerpc_cogent.h
56
    include_dir   cyg/hal
57
    description   "
58
        The cogent HAL package provides the support needed to run
59
        eCos on a Cogent board equipped with a PowerPC processor."
60
 
61
    compile       hal_diag.c plf_misc.c cogent.S plf_stub.c
62
 
63
    implements    CYGINT_HAL_DEBUG_GDB_STUBS
64
    implements    CYGINT_HAL_DEBUG_GDB_STUBS_BREAK
65
    implements    CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT
66
 
67
    requires      { CYGHWR_HAL_POWERPC_MPC8XX == "823" }
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 cogent 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   3
96
        description      "
97
            Channel 0: Serial A, Channel 1: Serial B, Channel 2: LCD"
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    1
105
        description      "
106
           The Cogent 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 Cogent board has two serial ports and an LCD.  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    33.330
125
        description      "
126
           MPC8xx development boards have various system clock speeds
127
           depending on the processor fitted.  Select the clock speed
128
           appropriate for your board so that the system can set the serial
129
           baud rate correctly, amongst other things."
130
    }
131
 
132
    # Real-time clock/counter specifics
133
    cdl_component CYGNUM_HAL_RTC_CONSTANTS {
134
        display       "Real-time clock constants."
135
        description   "
136
            Period is busclock/16/100."
137
        flavor        none
138
 
139
        cdl_option CYGNUM_HAL_RTC_NUMERATOR {
140
            display       "Real-time clock numerator"
141
            flavor        data
142
            default_value 1000000000
143
        }
144
        cdl_option CYGNUM_HAL_RTC_DENOMINATOR {
145
            display       "Real-time clock denominator"
146
            flavor        data
147
            default_value 100
148
        }
149
        cdl_option CYGNUM_HAL_RTC_PERIOD {
150
            display       "Real-time clock period"
151
            flavor        data
152
            default_value { (((CYGHWR_HAL_POWERPC_BOARD_SPEED*1000000)/16)/CYGNUM_HAL_RTC_DENOMINATOR) }
153
        }
154
    }
155
 
156
    cdl_component CYGBLD_GLOBAL_OPTIONS {
157
        display "Global build options"
158
        flavor  none
159
        parent  CYGPKG_NONE
160
        description   "
161
            Global build options including control over
162
            compiler flags, linker flags and choice of toolchain."
163
 
164
 
165
        cdl_option CYGBLD_GLOBAL_COMMAND_PREFIX {
166
            display "Global command prefix"
167
            flavor  data
168
            no_define
169
            default_value { "powerpc-eabi" }
170
            description "
171
                This option specifies the command prefix used when
172
                invoking the build tools."
173
        }
174
 
175
        cdl_option CYGBLD_GLOBAL_CFLAGS {
176
            display "Global compiler flags"
177
            flavor  data
178
            no_define
179
            default_value { CYGBLD_GLOBAL_WARNFLAGS . "-msoft-float -mcpu=860 -g -O2 -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions " }
180
            description   "
181
                This option controls the global compiler flags which
182
                are used to compile all packages by
183
                default. Individual packages may define
184
                options which override these global flags."
185
        }
186
 
187
        cdl_option CYGBLD_GLOBAL_LDFLAGS {
188
            display "Global linker flags"
189
            flavor  data
190
            no_define
191
            default_value { "-msoft-float -mcpu=860 -g -nostdlib -Wl,--gc-sections -Wl,-static" }
192
            description   "
193
                This option controls the global linker flags. Individual
194
                packages may define options which override these global flags."
195
        }
196
 
197
        cdl_option CYGBLD_BUILD_GDB_STUBS {
198
            display "Build GDB stub ROM image"
199
            default_value 0
200
            requires { CYG_HAL_STARTUP == "ROM" }
201
            requires CYGSEM_HAL_ROM_MONITOR
202
            requires CYGBLD_BUILD_COMMON_GDB_STUBS
203
            requires CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
204
            requires CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT
205
            requires CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT
206
            requires ! CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT
207
            requires ! CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM
208
            no_define
209
            description "
210
                This option enables the building of the GDB stubs for the
211
                board. The common HAL controls takes care of most of the
212
                build process, but the final conversion from ELF image to
213
                binary data is handled by the platform CDL, allowing
214
                relocation of the data if necessary."
215
 
216
            make -priority 320 {
217
                /bin/gdb_module.bin : /bin/gdb_module.img
218
                $(OBJCOPY) -O binary $< $@
219
            }
220
        }
221
    }
222
 
223
    cdl_component CYGHWR_MEMORY_LAYOUT {
224
        display "Memory layout"
225
        flavor data
226
        no_define
227
        calculated { CYG_HAL_STARTUP == "RAM" ? "powerpc_cogent_ram" : \
228
                                                "powerpc_cogent_rom" }
229
 
230
        cdl_option CYGHWR_MEMORY_LAYOUT_LDI {
231
            display "Memory layout linker script fragment"
232
            flavor data
233
            no_define
234
            define -file system.h CYGHWR_MEMORY_LAYOUT_LDI
235
            calculated { CYG_HAL_STARTUP == "RAM" ? "" : \
236
                                                    "" }
237
        }
238
 
239
        cdl_option CYGHWR_MEMORY_LAYOUT_H {
240
            display "Memory layout header file"
241
            flavor data
242
            no_define
243
            define -file system.h CYGHWR_MEMORY_LAYOUT_H
244
            calculated { CYG_HAL_STARTUP == "RAM" ? "" : \
245
                                                    "" }
246
        }
247
    }
248
 
249
    cdl_option CYGSEM_HAL_ROM_MONITOR {
250
        display       "Behave as a ROM monitor"
251
        flavor        bool
252
        default_value 0
253
        parent        CYGPKG_HAL_ROM_MONITOR
254
        requires      { CYG_HAL_STARTUP == "ROM" }
255
        description   "
256
            Enable this option if this program is to be used as a ROM monitor,
257
            i.e. applications will be loaded into RAM on the board, and this
258
            ROM monitor may process exceptions or interrupts generated from the
259
            application. This enables features such as utilizing a separate
260
            interrupt stack when exceptions are generated."
261
    }
262
}

powered by: WebSVN 2.1.0

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