1 # ====================================================================
5 # CalmRISC32 Core Eval Board HAL package configuration data
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.
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.
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
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.
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.
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.
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####
44 # Original data: bartv
48 #####DESCRIPTIONEND####
50 # ====================================================================
52 cdl_package CYGPKG_HAL_CALM32_CEB {
53 display "CalmRISC32 core evaluation board"
54 parent CYGPKG_HAL_CALM32
57 The Core eval board HAL package should be used when targetting the
60 compile hal_diag.c platform.S plf_misc.c ser.c
62 implements CYGINT_HAL_DEBUG_GDB_STUBS
63 implements CYGINT_HAL_DEBUG_GDB_STUBS_BREAK
64 implements CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT
65 implements CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT_GUARANTEED
67 cdl_option CYGBLD_HAL_TARGET_H {
68 display "Variant header"
71 calculated { "<pkgconf/hal_calm32_core.h>" }
72 define -file system.h CYGBLD_HAL_TARGET_H
73 description "Variant header."
76 puts $::cdl_system_header "#define CYGBLD_HAL_PLATFORM_H <pkgconf/hal_calm32_ceb.h>"
77 puts $::cdl_system_header ""
78 puts $::cdl_system_header "/* Make sure we get the CORE type definitions for HAL_PLATFORM_CPU */"
79 puts $::cdl_system_header "#include CYGBLD_HAL_TARGET_H"
80 puts $::cdl_system_header "#define HAL_PLATFORM_BOARD \"Core Eval Board\""
81 puts $::cdl_system_header "#define HAL_PLATFORM_EXTRA \"\""
82 puts $::cdl_system_header ""
87 cdl_component CYG_HAL_STARTUP {
88 display "Startup type"
90 legal_values {"RAM" "ROM"}
93 define -file system.h CYG_HAL_STARTUP
95 Currently only ROM startup type is supported."
98 cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_BAUD {
99 display "Diagnostic serial port baud rate"
104 This option selects the baud rate used for the diagnostic port.
105 Note: this should match the value chosen for the GDB port if the
106 diagnostic and GDB port are the same."
109 cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_BAUD {
110 display "GDB serial port baud rate"
115 This option controls the baud rate used for the GDB connection."
118 cdl_option CYGBLD_BUILD_GDB_STUBS {
119 display "Build GDB stub ROM image"
121 parent CYGBLD_GLOBAL_OPTIONS
122 requires { CYG_HAL_STARTUP == "ROM" }
123 requires CYGSEM_HAL_ROM_MONITOR
124 requires CYGBLD_BUILD_COMMON_GDB_STUBS
125 requires CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
126 requires ! CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT
127 requires ! CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT
128 requires ! CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT
129 requires ! CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM
132 This option enables the building of the GDB stubs for the
133 board. The common HAL controls takes care of most of the
134 build process, but the final conversion from ELF image to
135 binary data is handled by the platform CDL, allowing
136 relocation of the data if necessary."
139 <PREFIX>/bin/gdb_module.bin : <PREFIX>/bin/gdb_module.img
140 $(OBJCOPY) -O binary $< $@
145 cdl_option CYGNUM_HAL_BREAKPOINT_LIST_SIZE {
146 display "Number of breakpoints supported by the HAL."
150 This option determines the number of breakpoints supported by the HAL."
153 cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS {
154 display "Number of communication channels on the board"
159 cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL {
160 display "Debug serial port"
162 legal_values 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1
165 The Atlas board has only one serial port. This option
166 chooses which port will be used to connect to a host
170 cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL {
171 display "Diagnostic serial port"
173 legal_values 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1
176 The Atlas board has only one serial port. This option
177 chooses which port will be used for diagnostic output."
180 cdl_component CYGHWR_MEMORY_LAYOUT {
181 display "Memory layout"
184 calculated { CYG_HAL_STARTUP == "RAM" ? "calm32_ceb_ram" : \
187 cdl_option CYGHWR_MEMORY_LAYOUT_LDI {
188 display "Memory layout linker script fragment"
191 define -file system.h CYGHWR_MEMORY_LAYOUT_LDI
192 calculated { CYG_HAL_STARTUP == "RAM" ? "<pkgconf/mlt_calm32_ceb_ram.ldi>" : \
193 "<pkgconf/mlt_calm32_ceb_rom.ldi>" }
196 cdl_option CYGHWR_MEMORY_LAYOUT_H {
197 display "Memory layout header file"
200 define -file system.h CYGHWR_MEMORY_LAYOUT_H
201 calculated { CYG_HAL_STARTUP == "RAM" ? "<pkgconf/mlt_calm32_ceb_ram.h>" : \
202 "<pkgconf/mlt_calm32_ceb_rom.h>" }
206 cdl_option CYGSEM_HAL_USE_ROM_MONITOR {
207 display "Work with a ROM monitor"
209 legal_values { "Generic" "GDB_stubs" }
210 default_value { CYG_HAL_STARTUP == "RAM" ? "Generic" : 0 }
211 parent CYGPKG_HAL_ROM_MONITOR
212 requires { CYG_HAL_STARTUP == "RAM" }
214 Support can be enabled for three different varieties of ROM monitor.
215 This support changes various eCos semantics such as the encoding
216 of diagnostic output, or the overriding of hardware interrupt
218 Firstly there is \"Generic\" support which prevents the HAL
219 from overriding the hardware vectors that it does not use, to
220 instead allow an installed ROM monitor to handle them. This is
221 the most basic support which is likely to be common to most
222 implementations of ROM monitor.
223 \"CygMon\" provides support for the Cygnus ROM Monitor.
224 And finally, \"GDB_stubs\" provides support when GDB stubs are
225 included in the ROM monitor or boot ROM."
228 cdl_option CYGSEM_HAL_ROM_MONITOR {
229 display "Behave as a ROM monitor"
232 parent CYGPKG_HAL_ROM_MONITOR
233 requires { CYG_HAL_STARTUP == "ROM" }
235 Enable this option if this program is to be used as a ROM monitor,
236 i.e. applications will be loaded into RAM on the board, and this
237 ROM monitor may process exceptions or interrupts generated from the
238 application. This enables features such as utilizing a separate
239 interrupt stack when exceptions are generated."
242 cdl_component CYGPKG_REDBOOT_HAL_OPTIONS {
243 display "Redboot HAL options"
246 parent CYGPKG_REDBOOT
247 active_if CYGPKG_REDBOOT
249 This option lists the target's requirements for a valid Redboot
252 cdl_option CYGBLD_BUILD_REDBOOT_BIN {
253 display "Build Redboot ROM binary image"
254 active_if CYGBLD_BUILD_REDBOOT
257 description "This option enables the conversion of the Redboot ELF
258 image to a binary image suitable for ROM programming."
260 compile -library=libextras.a
263 <PREFIX>/bin/redboot.srec : <PREFIX>/bin/redboot.elf
264 $(OBJCOPY) --strip-all $< $(@:.srec=.img)
265 $(OBJCOPY) -O srec $< $@