annotate packages/hal/arm/lpc2xxx/olpce2294/current/cdl/hal_arm_lpc2xxx_olpce2294.cdl @ 2664:7dbab411425b

* LPC-E2294 development board package * cdl/hal_arm_lpc2xxx_olpce2294.cdl * include/hal_platform_setup.h * include/pkgconf/mlt_arm_lpc2xxx_olpce2294_ram.h * include/pkgconf/mlt_arm_lpc2xxx_olpce2294_ram.ldi * include/pkgconf/mlt_arm_lpc2xxx_olpce2294_rom.h * include/pkgconf/mlt_arm_lpc2xxx_olpce2294_rom.ldi * include/plf_io.h * misc/redboot_ROM.ecm * src/btn_drv.c * src/olpce2294_misc.c * src/redboot_cmds.c
author asl
date Sun, 23 Nov 2008 13:01:13 +0000
parents
children 74dbf4c3f2e1
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2664
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
1 # ====================================================================
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
2 #
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
3 # hal_arm_lpc2xxx_olpce2294.cdl
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
4 #
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
5 # ARM LPC2XXX OLPCE2294 development board package configuration
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
6 # data
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
7 #
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
8 # ====================================================================
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
9 #####ECOSGPLCOPYRIGHTBEGIN####
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
10 ## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
11 ## Copyright (C) 2008 eCosCentric Limited
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
12 ##
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
13 ## eCos is free software; you can redistribute it and/or modify it under
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
14 ## the terms of the GNU General Public License as published by the Free
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
15 ## Software Foundation; either version 2 or (at your option) any later version.
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
16 ##
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
17 ## eCos is distributed in the hope that it will be useful, but WITHOUT ANY
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
18 ## WARRANTY; without even the implied warranty of MERCHANTABILITY or
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
19 ## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
20 ## for more details.
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
21 ##
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
22 ## You should have received a copy of the GNU General Public License along
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
23 ## with eCos; if not, write to the Free Software Foundation, Inc.,
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
24 ## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
25 ##
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
26 ## As a special exception, if other files instantiate templates or use macros
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
27 ## or inline functions from this file, or you compile this file and link it
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
28 ## with other works to produce a work based on this file, this file does not
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
29 ## by itself cause the resulting work to be covered by the GNU General Public
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
30 ## License. However the source code for this file must still be made available
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
31 ## in accordance with section (3) of the GNU General Public License.
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
32 ##
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
33 ## This exception does not invalidate any other reasons why a work based on
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
34 ## this file might be covered by the GNU General Public License.
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
35 ## -------------------------------------------
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
36 #####ECOSGPLCOPYRIGHTEND####
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
37 # ====================================================================
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
38 ######DESCRIPTIONBEGIN####
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
39 #
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
40 # Author(s): Sergei Gavrikov
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
41 # Contributors: Sergei Gavrikov
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
42 # Date: 2008-08-31
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
43 #
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
44 #####DESCRIPTIONEND####
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
45 #
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
46 # ====================================================================
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
47
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
48 cdl_package CYGPKG_HAL_ARM_LPC2XXX_OLPCE2294 {
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
49 display "Olimex LPC-E2294 development board HAL"
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
50 parent CYGPKG_HAL_ARM_LPC2XXX
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
51 define_header hal_arm_lpc2xxx_olpce2294.h
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
52 include_dir cyg/hal
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
53 hardware
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
54 description "
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
55 The OLPCE2294 HAL package provides the support needed to run
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
56 eCos on Olimex LPC-E2294 development board."
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
57
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
58 compile olpce2294_misc.c
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
59
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
60 requires { CYGHWR_HAL_ARM_LPC2XXX == "LPC2294" }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
61
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
62 define_proc {
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
63 puts $::cdl_system_header "#define CYGBLD_HAL_TARGET_H <pkgconf/hal_arm.h>"
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
64 puts $::cdl_system_header "#define CYGBLD_HAL_VARIANT_H <pkgconf/hal_arm_lpc2xxx.h>"
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
65 puts $::cdl_system_header "#define CYGBLD_HAL_PLATFORM_H <pkgconf/hal_arm_lpc2xxx_olpce2294.h>"
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
66 puts $::cdl_header "#define HAL_PLATFORM_CPU \"ARM7TDMI-S\""
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
67 puts $::cdl_header "#define HAL_PLATFORM_BOARD \"Olimex LPC-E2294 development board\""
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
68 puts $::cdl_header "#define HAL_PLATFORM_EXTRA \"\""
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
69 }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
70
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
71 cdl_component CYG_HAL_STARTUP {
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
72 display "Startup type"
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
73 flavor data
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
74 default_value {"RAM"}
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
75 legal_values {"RAM" "ROM"}
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
76 no_define
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
77 define -file system.h CYG_HAL_STARTUP
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
78 description "Choose RAM or ROM startup type."
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
79 }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
80
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
81 cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_DEFAULT {
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
82 display "Default console channel."
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
83 flavor data
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
84 calculated 0
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
85 }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
86
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
87 cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS {
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
88 display "Number of communication channels on the board"
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
89 flavor data
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
90 calculated 3
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
91 description "
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
92 Channel 0: UART0, Channel 1: UART1, Channel 2: LCD."
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
93 }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
94
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
95 cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL {
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
96 display "Debug serial port"
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
97 active_if CYGPRI_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_CONFIGURABLE
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
98 flavor data
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
99 legal_values 0 to 1
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
100 default_value 0
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
101 description "
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
102 Olimex LPC-E2294 board has two serial ports. This option
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
103 chooses which port will be used to connect to a host
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
104 running GDB."
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
105 }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
106
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
107 cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL {
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
108 display "Diagnostic serial port"
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
109 active_if CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
110 flavor data
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
111 legal_values 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
112 default_value CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_DEFAULT
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
113 description "
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
114 Olimex LPC-E2294 board has two serial ports and a LCD. This
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
115 option chooses which port will be used for diagnostic
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
116 output."
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
117 }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
118
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
119 cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_BAUD {
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
120 display "Diagnostic serial port baud rate"
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
121 flavor data
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
122 legal_values 9600 19200 38400 57600 115200
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
123 default_value 38400
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
124 description "
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
125 This option selects the baud rate used for the diagnostic
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
126 port."
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
127 }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
128
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
129 cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_BAUD {
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
130 display "GDB serial port baud rate"
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
131 flavor data
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
132 legal_values 9600 19200 38400 57600 115200
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
133 default_value 38400
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
134 description "
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
135 This option controls the baud rate used for the GDB
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
136 connection."
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
137 }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
138
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
139 # Real-time clock/counter specifics
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
140 cdl_option CYGNUM_HAL_ARM_LPC2XXX_XTAL_FREQ {
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
141 display "CPU xtal frequency"
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
142 flavor data
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
143 default_value {14745600}
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
144 }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
145
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
146 cdl_option CYGNUM_HAL_ARM_LPC2XXX_PLL_MUL {
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
147 display "CPU PLL multiplier"
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
148 flavor data
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
149 default_value {4}
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
150 }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
151
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
152 cdl_option CYGNUM_HAL_ARM_LPC2XXX_CLOCK_SPEED {
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
153 display "CPU clock speed"
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
154 flavor data
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
155 calculated { CYGNUM_HAL_ARM_LPC2XXX_PLL_MUL *
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
156 CYGNUM_HAL_ARM_LPC2XXX_XTAL_FREQ }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
157 }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
158
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
159 cdl_component CYGBLD_GLOBAL_OPTIONS {
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
160 display "Global build options"
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
161 flavor none
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
162 parent CYGPKG_NONE
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
163 description "
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
164 Global build options including control over compiler flags,
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
165 linker flags and choice of toolchain."
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
166
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
167 cdl_option CYGBLD_GLOBAL_COMMAND_PREFIX {
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
168 display "Global command prefix"
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
169 flavor data
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
170 no_define
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
171 default_value { "arm-eabi" }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
172 description "
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
173 This option specifies the command prefix used when
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
174 invoking the build tools."
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
175 }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
176
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
177 cdl_option CYGBLD_GLOBAL_CFLAGS {
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
178 display "Global compiler flags"
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
179 flavor data
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
180 no_define
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
181 default_value { (CYGHWR_THUMB ? "-mthumb " : "") . (CYGBLD_ARM_ENABLE_THUMB_INTERWORK ? "-mthumb-interwork " : "") . "-mcpu=arm7tdmi -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2 -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions" }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
182 description "
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
183 This option controls the global compiler flags which
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
184 are used to compile all packages by default. Individual
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
185 packages may define options which override these global
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
186 flags."
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
187 }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
188
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
189 cdl_option CYGBLD_GLOBAL_LDFLAGS {
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
190 display "Global linker flags"
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
191 flavor data
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
192 no_define
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
193 default_value { (CYGHWR_THUMB ? "-mthumb " : "") . (CYGBLD_ARM_ENABLE_THUMB_INTERWORK ? "-mthumb-interwork " : "") . "-mcpu=arm7tdmi -Wl,--gc-sections -Wl,-static -g -nostdlib" }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
194 description "
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
195 This option controls the global linker flags. Individual
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
196 packages may define options which override these global
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
197 flags."
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
198 }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
199 }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
200
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
201 cdl_option CYGSEM_HAL_ROM_MONITOR {
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
202 display "Behave as a ROM monitor"
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
203 flavor bool
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
204 default_value 0
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
205 parent CYGPKG_HAL_ROM_MONITOR
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
206 requires { CYG_HAL_STARTUP == "ROM"}
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
207 description "
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
208 Enable this option if this program is to be used as a
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
209 ROM monitor, i.e. applications will be loaded into RAM on
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
210 the board, and this ROM monitor may process exceptions or
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
211 interrupts generated from the application. This enables
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
212 features such as utilizing a separate interrupt stack when
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
213 exceptions are generated."
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
214 }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
215
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
216 cdl_option CYGSEM_HAL_USE_ROM_MONITOR {
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
217 display "Work with a ROM monitor"
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
218 flavor booldata
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
219 legal_values { "Generic" "GDB_stubs" }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
220 default_value { CYG_HAL_STARTUP == "RAM" ? "GDB_stubs" : 0 }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
221 parent CYGPKG_HAL_ROM_MONITOR
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
222 requires { CYG_HAL_STARTUP == "RAM" }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
223 description "
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
224 Support can be enabled for different varieties of ROM
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
225 monitor. This support changes various eCos semantics such
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
226 as the encoding of diagnostic output, or the overriding of
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
227 hardware interrupt vectors.
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
228 Firstly there is \"Generic\" support which prevents the
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
229 HAL from overriding the hardware vectors that it does not
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
230 use, to instead allow an installed ROM monitor to handle
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
231 them. This is the most basic support which is likely to be
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
232 common to most implementations of ROM monitor.
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
233 \"GDB_stubs\" provides support when GDB stubs are included
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
234 in the ROM monitor or boot ROM."
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
235 }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
236
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
237 cdl_component CYGPKG_REDBOOT_HAL_OPTIONS {
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
238 display "Redboot HAL options"
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
239 flavor none
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
240 no_define
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
241 parent CYGPKG_REDBOOT
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
242 active_if CYGPKG_REDBOOT
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
243 description "
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
244 This option lists the target's requirements for a valid
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
245 Redboot configuration."
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
246
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
247 cdl_option CYGBLD_BUILD_REDBOOT_BIN {
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
248 display "Build Redboot ROM binary image"
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
249 active_if CYGBLD_BUILD_REDBOOT
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
250 requires { !CYGBLD_BUILD_REDBOOT_WITH_EXEC }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
251 default_value 1
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
252 no_define
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
253 description "
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
254 This option enables the conversion of the Redboot ELF
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
255 image to a binary image suitable for ROM programming."
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
256
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
257 compile -library=libextras.a redboot_cmds.c
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
258
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
259 make -priority 325 {
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
260 <PREFIX>/bin/redboot.bin : <PREFIX>/bin/redboot.elf
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
261 $(OBJCOPY) --strip-debug $< $(@:.bin=.img)
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
262 $(OBJCOPY) -O srec $< $(@:.bin=.srec)
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
263 $(OBJCOPY) -O ihex $< $(@:.bin=.hex)
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
264 $(OBJCOPY) -O binary $< $@
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
265 }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
266
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
267 }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
268 }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
269
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
270 cdl_component CYGHWR_MEMORY_LAYOUT {
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
271 display "Memory layout"
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
272 flavor data
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
273 no_define
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
274 calculated { (CYG_HAL_STARTUP == "RAM") ? "arm_lpc2xxx_olpce2294_ram" :
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
275 "arm_lpc2xxx_olpce2294_rom" }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
276
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
277 cdl_option CYGHWR_MEMORY_LAYOUT_LDI {
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
278 display "Memory layout linker script fragment"
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
279 flavor data
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
280 no_define
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
281 define -file system.h CYGHWR_MEMORY_LAYOUT_LDI
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
282 calculated { (CYG_HAL_STARTUP == "RAM") ?
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
283 "<pkgconf/mlt_arm_lpc2xxx_olpce2294_ram.ldi>" :
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
284 "<pkgconf/mlt_arm_lpc2xxx_olpce2294_rom.ldi>" }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
285 }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
286
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
287 cdl_option CYGHWR_MEMORY_LAYOUT_H {
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
288 display "Memory layout header file"
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
289 flavor data
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
290 no_define
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
291 define -file system.h CYGHWR_MEMORY_LAYOUT_H
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
292 calculated { (CYG_HAL_STARTUP == "RAM") ?
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
293 "<pkgconf/mlt_arm_lpc2xxx_olpce2294_ram.h>" :
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
294 "<pkgconf/mlt_arm_lpc2xxx_olpce2294_rom.h>" }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
295 }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
296 }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
297 }
7dbab411425b * LPC-E2294 development board package
asl
parents:
diff changeset
298