]> git.karo-electronics.de Git - karo-tx-redboot.git/blob - packages/hal/mn10300/stb/v2_0/cdl/hal_mn10300_am33_stb.cdl
Initial revision
[karo-tx-redboot.git] / packages / hal / mn10300 / stb / v2_0 / cdl / hal_mn10300_am33_stb.cdl
1 # ====================================================================
2 #
3 #      hal_mn10300_am33_stb.cdl
4 #
5 #      AM33/STB 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):      jskov
44 # Original data:  nick, bartv
45 # Contributors:
46 # Date:           1999-11-02
47 #
48 #####DESCRIPTIONEND####
49 #
50 # ====================================================================
51
52 cdl_package CYGPKG_HAL_MN10300_AM33_STB {
53     display  "stb evaluation board"
54     parent        CYGPKG_HAL_MN10300
55     requires      CYGPKG_HAL_MN10300_AM33
56     define_header hal_mn10300_am33_stb.h
57     include_dir   cyg/hal
58     description   "
59            The STB HAL package should be used when targetting the
60            actual hardware for the AM33 STB evaluation board."
61
62     compile       hal_diag.c plf_stub.c plf_misc.c
63
64     implements    CYGINT_HAL_DEBUG_GDB_STUBS
65     implements    CYGINT_HAL_DEBUG_GDB_STUBS_BREAK
66
67     requires CYGSEM_HAL_UNCACHED_FLASH_ACCESS == 1;
68
69     define_proc {
70         puts $::cdl_system_header "#define CYGBLD_HAL_TARGET_H   <pkgconf/hal_mn10300_am33.h>"
71         puts $::cdl_system_header "#define CYGBLD_HAL_PLATFORM_H <pkgconf/hal_mn10300_am33_stb.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 STB board it is possible to build
83            the system for either RAM bootstrap or ROM bootstrap. The
84            former generally requires that the board is equipped with
85            GDB stub ROMs or equivalent software
86            that allows gdb to download the eCos application
87            on to the board. The latter typically requires that the
88            eCos application be blown into EPROMs or equivalent
89            technology. If a JTAG debugger is avaiable, it is also
90            possible to download ROM executables into either SDRAM cards
91            or program them into a FLASH ROM."
92     }
93
94     cdl_option CYGBLD_ROM_SLOT {
95         display          "ROM startup slot"
96         flavor data
97         legal_values     {"ROM" "SRAM1"}
98         default_value    {"ROM"}
99         description      "
100            This option can be used to request that the image is to be
101            linked to be run from the SRAM1 SLOT (0x82400000) rather than
102            the system boot ROM slot (0x40000000).
103            "
104    }
105
106     cdl_option CYGHWR_HAL_MN10300_AM33_STB_DIAG_PORT {
107         display          "Diagnostic Serial Port"
108         flavor data
109         legal_values     0 1
110         default_value    0
111         description      "
112            The STB board has three separate serial ports, of which only
113            ports 0 and 2 are brought out to the front panel. This option
114            chooses which of these ports will be used for diagnostic output.
115            At present only port 0 is supported."
116    }
117
118    cdl_option CYGHWR_HAL_MN10300_AM33_STB_DIAG_BAUD {
119        display          "Diagnostic Serial Port Baud Rate"
120        flavor data
121        legal_values     9600 19200 38400 115200
122        default_value    38400
123        define           CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_BAUD
124        description      "
125            This option selects the baud rate used for the diagnostic port.
126            Note: this should match the value chosen for the GDB port if the
127            diagnostic and GDB port are the same."
128    }
129
130    cdl_option CYGHWR_HAL_MN10300_AM33_STB_GDB_PORT {
131        display          "GDB Serial Port"
132        flavor data
133        legal_values     0 1
134        default_value    0
135        description      "
136            The VRC4373 board has two separate serial ports.  This option
137            chooses which of these ports will be used to connect to a host
138            running GDB."
139    }
140
141    cdl_option CYGHWR_HAL_MN10300_AM33_STB_GDB_BAUD {
142        display          "GDB Serial Port Baud Rate"
143        flavor data
144        legal_values     9600 19200 38400 115200
145        default_value    38400
146        description      "
147            This option controls the baud rate used for the GDB connection."
148    }
149
150     cdl_option CYGSEM_HAL_AM33_PLF_USES_SERIAL0 {
151         display       "ASB2303 uses AM33 SERIAL0"
152         flavor        bool
153         default_value 1
154         description   "
155             Enable this option if AM33 SERIAL0 is to be used as a virtual vector
156             communications channel."
157     }
158
159     cdl_option CYGSEM_HAL_AM33_PLF_USES_SERIAL1 {
160         display       "ASB2303 uses AM33 SERIAL1"
161         flavor        bool
162         default_value 1
163         description   "
164             Enable this option if AM33 SERIAL1 is to be used as a virtual vector
165             communications channel."
166     }
167
168
169     # Real-time clock/counter specifics
170     cdl_option CYGHWR_HAL_MN10300_PROCESSOR_OSC_DEFAULT {
171         display       "Processor clock rate"
172         calculated    30375000
173         flavor        data
174     }
175
176     cdl_component CYGBLD_GLOBAL_OPTIONS {
177         display "Global build options"
178         flavor  none
179         parent  CYGPKG_NONE
180         description   "
181             Global build options including control over
182             compiler flags, linker flags and choice of toolchain."
183
184
185         cdl_option CYGBLD_GLOBAL_COMMAND_PREFIX {
186             display "Global command prefix"
187             flavor  data
188             no_define
189             default_value { "mn10300-elf" }
190             description "
191                 This option specifies the command prefix used when
192                 invoking the build tools."
193         }
194
195         cdl_option CYGBLD_GLOBAL_CFLAGS {
196             display "Global compiler flags"
197             flavor  data
198             no_define
199             default_value { "-mam33 -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2 -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions -fvtable-gc -finit-priority" }
200             description   "
201                 This option controls the global compiler flags which
202                 are used to compile all packages by
203                 default. Individual packages may define
204                 options which override these global flags."
205         }
206
207         cdl_option CYGBLD_GLOBAL_LDFLAGS {
208             display "Global linker flags"
209             flavor  data
210             no_define
211             default_value { "-mam33 -g -nostdlib -Wl,--gc-sections -Wl,-static" }
212             description   "
213                 This option controls the global linker flags. Individual
214                 packages may define options which override these global flags."
215         }
216
217         cdl_option CYGBLD_BUILD_GDB_STUBS {
218             display "Build GDB stub ROM image"
219             default_value 0
220             requires { CYG_HAL_STARTUP == "ROM" }
221             requires CYGSEM_HAL_ROM_MONITOR
222             requires CYGBLD_BUILD_COMMON_GDB_STUBS
223             requires CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
224             requires ! CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT
225             requires ! CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT
226             requires ! CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT
227             requires ! CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM
228             no_define
229             description "
230                 This option enables the building of the GDB stubs for the
231                 board. The common HAL controls takes care of most of the
232                 build process, but the final conversion from ELF image to
233                 binary data is handled by the platform CDL, allowing
234                 relocation of the data if necessary."
235
236             make -priority 320 {
237                 <PREFIX>/bin/gdb_module.bin : <PREFIX>/bin/gdb_module.img
238                 $(OBJCOPY) -O binary $< $@
239             }
240         }
241     }
242
243     cdl_option CYGNUM_HAL_BREAKPOINT_LIST_SIZE {
244         display       "Number of breakpoints supported by the HAL."
245         flavor        data
246         default_value 25
247         description   "
248             This option determines the number of breakpoints supported by the HAL."
249     }
250
251     cdl_component CYGHWR_MEMORY_LAYOUT {
252         display "Memory layout"
253         flavor data
254         no_define
255         calculated { CYG_HAL_STARTUP == "RAM" ? "mn10300_am33_stb_ram" : \
256                      CYGBLD_ROM_SLOT == "ROM" ? "mn10300_am33_stb_rom" : \
257                                                 "mn10300_am33_stb_sram1" }
258
259         cdl_option CYGHWR_MEMORY_LAYOUT_LDI {
260             display "Memory layout linker script fragment"
261             flavor data
262             no_define
263             define -file system.h CYGHWR_MEMORY_LAYOUT_LDI
264             calculated { CYG_HAL_STARTUP == "RAM" ? "<pkgconf/mlt_mn10300_am33_stb_ram.ldi>" : \
265                          CYGBLD_ROM_SLOT == "ROM" ? "<pkgconf/mlt_mn10300_am33_stb_rom.ldi>" : \
266                                                     "<pkgconf/mlt_mn10300_am33_stb_sram1.ldi>" }
267         }
268
269         cdl_option CYGHWR_MEMORY_LAYOUT_H {
270             display "Memory layout header file"
271             flavor data
272             no_define
273             define -file system.h CYGHWR_MEMORY_LAYOUT_H
274             calculated { CYG_HAL_STARTUP == "RAM" ? "<pkgconf/mlt_mn10300_am33_stb_ram.h>" : \
275                          CYGBLD_ROM_SLOT == "ROM" ? "<pkgconf/mlt_mn10300_am33_stb_rom.h>" : \
276                                                     "<pkgconf/mlt_mn10300_am33_stb_sram1.h>" }
277         }
278     }
279
280     cdl_option CYGSEM_HAL_USE_ROM_MONITOR {
281         display       "Work with a ROM monitor"
282         flavor        booldata
283         legal_values  { "GDB_stubs" }
284         default_value { CYG_HAL_STARTUP == "RAM" ? "GDB_stubs" : 0 }
285         requires      { CYG_HAL_STARTUP == "RAM" }
286         parent        CYGPKG_HAL_ROM_MONITOR
287         description   "
288             Support can be enabled for boot ROMs or ROM monitors which contain
289             GDB stubs. This support changes various eCos semantics such as
290             the encoding of diagnostic output, and the overriding of hardware
291             interrupt vectors."
292     }
293
294     cdl_option CYGSEM_HAL_ROM_MONITOR {
295         display       "Behave as a ROM monitor"
296         flavor        bool
297         default_value 0
298         parent        CYGPKG_HAL_ROM_MONITOR
299         requires      { CYG_HAL_STARTUP == "ROM" }
300         description   "
301             Enable this option if this program is to be used as a ROM monitor,
302             i.e. applications will be loaded into RAM on the board, and this
303             ROM monitor may process exceptions or interrupts generated from the
304             application. This enables features such as utilizing a separate
305             interrupt stack when exceptions are generated."
306     }
307 }