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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [rtos/] [ecos-2.0/] [packages/] [hal/] [sparclite/] [sleb/] [v2_0/] [cdl/] [hal_sparclite_sleb.cdl] - Blame information for rev 174

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 27 unneback
# ====================================================================
2
#
3
#      hal_sparclite_sleb.cdl
4
#
5
#      SPARClite/SLEB target 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):      jskov
44
# Original data:  hmt
45
# Contributors:
46
# Date:           1999-11-01
47
#
48
#####DESCRIPTIONEND####
49
#
50
# ====================================================================
51
 
52
cdl_package CYGPKG_HAL_SPARCLITE_SLEB {
53
    display  "SPARClite MB8683x evaluation board"
54
    parent        CYGPKG_HAL_SPARCLITE
55
    define_header hal_sparclite_sleb.h
56
    include_dir   cyg/hal
57
    description   "
58
        The SPARClite evaluation board HAL package is provided for use
59
        with the Fujitsu MB8683x boards."
60
 
61
    compile       hal_priv.c hal_cygm.S hal_diag.c
62
 
63
    define_proc {
64
        puts $::cdl_system_header "#define CYGBLD_HAL_TARGET_H   "
65
        puts $::cdl_system_header "#define CYGBLD_HAL_PLATFORM_H "
66
        puts $::cdl_header "#define CYGHWR_HAL_SPARCLITE_HAS_ASR17 /* true for SLEBs */"
67
    }
68
 
69
    cdl_component CYG_HAL_STARTUP {
70
        display       "Startup type"
71
        flavor        data
72
        legal_values  {"RAM" "ROM"}
73
        default_value {"RAM"}
74
        no_define
75
        define -file system.h CYG_HAL_STARTUP
76
        description   "
77
           When targetting the SPARClite Evaluation Board it is possible to
78
           build the system for either RAM bootstrap or ROM bootstrap. The
79
           former generally requires that the board is equipped with ROMs
80
           containing the Cygmon ROM monitor or equivalent software that
81
           allows gdb to download the eCos application on to the board. The
82
           latter typically requires that the eCos application be blown
83
           into EPROMs or equivalent technology."
84
    }
85
 
86
    cdl_option CYGHWR_HAL_SPARCLITE_MULTIPLE_VECTOR_TRAPPING {
87
        display       "Multiple vector trapping (MVT)"
88
        default_value 0
89
        description   "
90
            Use Multiple Vector Trapping (MVT) rather than Single Vector
91
            Trapping (SVT); SVT is a feature of SPARClite CPUs which saves
92
            code RAM at a cost of perhaps slower interrupt and trap dispatch
93
            time, depending on cache behavior.  This includes speed of
94
            handling register window underflow and overflow, a feature of
95
            deep function call stacks on SPARC.  MVT requires 4kB of code
96
            space for trap vectors; in contrast SVT uses fewer than 20
97
            instructions for trap decoding."
98
    }
99
 
100
    cdl_option CYGIMP_HAL_SPARCLITE_COPY_VECTORS_TO_RAM {
101
        display       "Copy vectors to RAM"
102
        default_value 0
103
        description   "
104
            Copy the vectors and trap code out of the executable image
105
            to separate RAM.  With ROM startup, performance might be gained
106
            by copying the vectors into RAM; this includes the code for
107
            handling register window under/overflow.  Enable this with
108
            RAM startup to simulate the code and data sizes of an eventual
109
            ROM image.  Note: if MVT is not selected with ROM start, the
110
            trap code (including register window handling) is copied
111
            to RAM regardless; that code is small."
112
    }
113
 
114
 
115
    cdl_component CYG_HAL_USE_ROM_MONITOR_CYGMON {
116
        display       "Use ROM monitor CygMon"
117
        default_value 1
118
        active_if     { CYG_HAL_STARTUP == "RAM" }
119
        description   "
120
            This is defined by default to allow interworking with
121
            CygMon and thus GDB so that Breakpoints and ^C interrupts
122
            and the like work.  Disable it if building to run with the
123
            native Fujitsu boot proms (NOT CYGMON) ie. a
124
            load-and-go type startup by means of
125
             (gdb) target sparclite udp sleb0
126
            or
127
             (gdb) target sparclite serial /dev/ttyS0
128
            as opposed to the CygMon way:
129
             (gdb) set remotebaud 19200
130
             (gdb) target remote /dev/ttyS0
131
            Such builds will load-and-go when using CygMon, but
132
            load-and-go is all the interaction you get."
133
 
134
        cdl_option CYG_KERNEL_DIAG_GDB {
135
            display       "Output diag strings as \$O packets"
136
            default_value 1
137
            description   "
138
                If using CygMon it's generally helpful to wrap output
139
                characters in the GDB protocol as \$O packets; This
140
                option enables this by means of calling into CygMon
141
                through the vectors provided; this therefore also
142
                works with eg. ethernet debugging.
143
 
144
                Disable this option and output goes direct, in clear,
145
                to serial port 0 (CON1)."
146
        }
147
 
148
        cdl_option CYG_KERNEL_DIAG_GDB_SERIAL_DIRECT {
149
            display       "Output diag strings as \$O packets on serial"
150
            active_if     CYG_KERNEL_DIAG_GDB
151
            default_value 0
152
            description   "
153
                However, you might want to force GDB-encoded output to
154
                the serial port NOT using CygMon to perform the
155
                formatting; this is really only here as a debugging
156
                option, in case GDB is behaving oddly.  Enable this
157
                option to make GDB \$O packets come out the serial port
158
                (CON1)"
159
        }
160
    }
161
 
162
    # Real-time clock/counter specifics
163
    cdl_component CYGNUM_HAL_RTC_CONSTANTS {
164
        display       "Real-time clock constants."
165
        flavor        none
166
 
167
        cdl_option CYGNUM_HAL_RTC_NUMERATOR {
168
            display       "Real-time clock numerator"
169
            flavor        data
170
            calculated    1000000000
171
        }
172
        cdl_option CYGNUM_HAL_RTC_DENOMINATOR {
173
            display       "Real-time clock denominator"
174
            flavor        data
175
            calculated    100
176
        }
177
        cdl_option CYGNUM_HAL_RTC_PERIOD {
178
            display       "Real-time clock period"
179
            flavor        data
180
            calculated    9999
181
        }
182
    }
183
 
184
    cdl_component CYGBLD_GLOBAL_OPTIONS {
185
        display "Global build options"
186
        flavor  none
187
        description   "
188
            Global build options including control over
189
            compiler flags, linker flags and choice of toolchain."
190
 
191
 
192
        parent  CYGPKG_NONE
193
 
194
        cdl_option CYGBLD_GLOBAL_COMMAND_PREFIX {
195
            display "Global command prefix"
196
            flavor  data
197
            no_define
198
            default_value { "sparclite-elf" }
199
            description "
200
                This option specifies the command prefix used when
201
                invoking the build tools."
202
        }
203
 
204
        cdl_option CYGBLD_GLOBAL_CFLAGS {
205
            display "Global compiler flags"
206
            flavor  data
207
            no_define
208
            default_value { "-msoft-float -mcpu=sparclite -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2 -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions -fvtable-gc -finit-priority" }
209
            description   "
210
                This option controls the global compiler flags which
211
                are used to compile all packages by
212
                default. Individual packages may define
213
                options which override these global flags."
214
        }
215
 
216
        cdl_option CYGBLD_GLOBAL_LDFLAGS {
217
            display "Global linker flags"
218
            flavor  data
219
            no_define
220
            default_value { "-msoft-float -mcpu=sparclite -g -nostdlib -Wl,--gc-sections -Wl,-static" }
221
            description   "
222
                This option controls the global linker flags. Individual
223
                packages may define options which override these global flags."
224
        }
225
    }
226
 
227
    cdl_component CYGPKG_HAL_SPARCLITE_SLEB_OPTIONS {
228
        display "SPARClite MB8683x build options"
229
        flavor  none
230
        description   "
231
            Package specific build options including control over
232
            compiler flags used only in building this package,
233
            and details of which tests are built."
234
 
235
 
236
        cdl_option CYGPKG_HAL_SPARCLITE_SLEB_CFLAGS_ADD {
237
            display "Additional compiler flags"
238
            flavor  data
239
            no_define
240
            default_value { "" }
241
            description   "
242
                This option modifies the set of compiler flags for
243
                building the SPARClite MB8683x HAL. These flags are used in addition
244
                to the set of global flags."
245
        }
246
 
247
        cdl_option CYGPKG_HAL_SPARCLITE_SLEB_CFLAGS_REMOVE {
248
            display "Suppressed compiler flags"
249
            flavor  data
250
            no_define
251
            default_value { "" }
252
            description   "
253
                This option modifies the set of compiler flags for
254
                building the SPARClite MB8683x HAL. These flags are removed from
255
                the set of global flags if present."
256
        }
257
 
258
        cdl_option CYGPKG_HAL_SPARCLITE_SLEB_TESTS {
259
            display "SPARClite MB8683x tests"
260
            flavor  data
261
            no_define
262
            calculated { "tests/slebstak tests/slebintr tests/slebtime" }
263
            description   "
264
                This option specifies the set of tests for the SPARClite MB8683x HAL."
265
        }
266
    }
267
 
268
    cdl_component CYGHWR_MEMORY_LAYOUT {
269
        display "Memory layout"
270
        flavor data
271
        no_define
272
        calculated { CYG_HAL_STARTUP == "RAM" ? "sparclite_sleb_ram" : \
273
                                                "sparclite_sleb_rom" }
274
 
275
        cdl_option CYGHWR_MEMORY_LAYOUT_LDI {
276
            display "Memory layout linker script fragment"
277
            flavor data
278
            no_define
279
            define -file system.h CYGHWR_MEMORY_LAYOUT_LDI
280
            calculated { CYG_HAL_STARTUP == "RAM" ? "" : \
281
                                                    "" }
282
        }
283
 
284
        cdl_option CYGHWR_MEMORY_LAYOUT_H {
285
            display "Memory layout header file"
286
            flavor data
287
            no_define
288
            define -file system.h CYGHWR_MEMORY_LAYOUT_H
289
            calculated { CYG_HAL_STARTUP == "RAM" ? "" : \
290
                                                     "" }
291
        }
292
    }
293
}

powered by: WebSVN 2.1.0

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