Mercurial > ecos
comparison packages/hal/arm/sa11x0/assabet/current/cdl/hal_arm_sa11x0_assabet.cdl @ 108:ff3f181b64bd ecos-sw-2000-07-04
Merge from eCos master repository on 2000-07-04-20:42:44-BST
| author | jlarmour |
|---|---|
| date | Tue, 04 Jul 2000 20:17:21 +0000 |
| parents | |
| children | 84e4bde58b26 |
comparison
equal
deleted
inserted
replaced
| 107:7f461c3a372c | 108:ff3f181b64bd |
|---|---|
| 1 # ==================================================================== | |
| 2 # | |
| 3 # hal_arm_sa11x0_assabet.cdl | |
| 4 # | |
| 5 # ARM SA1110/Assabet platform HAL package configuration data | |
| 6 # | |
| 7 # ==================================================================== | |
| 8 #####COPYRIGHTBEGIN#### | |
| 9 # | |
| 10 # ------------------------------------------- | |
| 11 # The contents of this file are subject to the Red Hat eCos Public License | |
| 12 # Version 1.1 (the "License"); you may not use this file except in | |
| 13 # compliance with the License. You may obtain a copy of the License at | |
| 14 # http://www.redhat.com/ | |
| 15 # | |
| 16 # Software distributed under the License is distributed on an "AS IS" | |
| 17 # basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the | |
| 18 # License for the specific language governing rights and limitations under | |
| 19 # the License. | |
| 20 # | |
| 21 # The Original Code is eCos - Embedded Configurable Operating System, | |
| 22 # released September 30, 1998. | |
| 23 # | |
| 24 # The Initial Developer of the Original Code is Red Hat. | |
| 25 # Portions created by Red Hat are | |
| 26 # Copyright (C) 1998, 1999, 2000 Red Hat, Inc. | |
| 27 # All Rights Reserved. | |
| 28 # ------------------------------------------- | |
| 29 # | |
| 30 #####COPYRIGHTEND#### | |
| 31 # ==================================================================== | |
| 32 ######DESCRIPTIONBEGIN#### | |
| 33 # | |
| 34 # Author(s): gthomas | |
| 35 # Original data: gthomas | |
| 36 # Contributors: | |
| 37 # Date: 2000-05-08 | |
| 38 # | |
| 39 #####DESCRIPTIONEND#### | |
| 40 # | |
| 41 # ==================================================================== | |
| 42 cdl_package CYGPKG_HAL_ARM_SA11X0_ASSABET { | |
| 43 display "ARM SA1110/Assabet evaluation board" | |
| 44 parent CYGPKG_HAL_ARM_SA11X0 | |
| 45 hardware | |
| 46 include_dir cyg/hal | |
| 47 define_header hal_arm_sa11x0_assabet.h | |
| 48 description " | |
| 49 This HAL platform package provides generic | |
| 50 support for the Intel StrongARM SA1110 based evalation board, | |
| 51 known as 'assabet'." | |
| 52 | |
| 53 compile assabet_misc.c | |
| 54 | |
| 55 implements CYGINT_HAL_DEBUG_GDB_STUBS | |
| 56 implements CYGINT_HAL_DEBUG_GDB_STUBS_BREAK | |
| 57 implements CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT | |
| 58 implements CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT_GUARANTEED | |
| 59 | |
| 60 define_proc { | |
| 61 puts $::cdl_system_header "#define CYGBLD_HAL_TARGET_H <pkgconf/hal_arm.h>" | |
| 62 puts $::cdl_system_header "#define CYGBLD_HAL_VARIANT_H <pkgconf/hal_arm_sa11x0.h>" | |
| 63 puts $::cdl_system_header "#define CYGBLD_HAL_PLATFORM_H <pkgconf/hal_arm_sa11x0_assabet.h>" | |
| 64 } | |
| 65 | |
| 66 cdl_component CYG_HAL_STARTUP { | |
| 67 display "Startup type" | |
| 68 flavor data | |
| 69 default_value {"RAM"} | |
| 70 legal_values {"RAM" "ROM"} | |
| 71 no_define | |
| 72 define -file system.h CYG_HAL_STARTUP | |
| 73 description " | |
| 74 When targetting the Assabet eval board it is possible to build | |
| 75 the system for either RAM bootstrap or ROM bootstrap(s). Select | |
| 76 'ram' when building programs to load into RAM using eCos GDB | |
| 77 stubs. Select 'rom' when building a stand-alone application | |
| 78 which will be put into ROM, or for the special case of | |
| 79 building the eCos GDB stubs themselves." | |
| 80 } | |
| 81 | |
| 82 # Assabet board has only 1 serial port useable for diagnostic/GDB | |
| 83 ## define CYGHWR_HAL_ARM_SA11X0_DIAG_PORT 1 | |
| 84 # FIXME - make this fixed. | |
| 85 cdl_option CYGHWR_HAL_ARM_SA11X0_DIAG_PORT { | |
| 86 display "Diagnostic serial port" | |
| 87 flavor data | |
| 88 legal_values 0 0 | |
| 89 default_value 0 | |
| 90 description " | |
| 91 The Assabet evaluation boards has only one serial port." | |
| 92 } | |
| 93 | |
| 94 cdl_option CYGHWR_HAL_ARM_SA11X0_DIAG_BAUD { | |
| 95 display "Diagnostic serial port baud rate" | |
| 96 flavor data | |
| 97 legal_values 9600 19200 38400 115200 | |
| 98 default_value 38400 | |
| 99 description " | |
| 100 This option selects the baud rate used for the diagnostic port. | |
| 101 Note: this should match the value chosen for the GDB port if the | |
| 102 diagnostic and GDB port are the same." | |
| 103 } | |
| 104 | |
| 105 cdl_option CYGHWR_HAL_ARM_SA11X0_GDB_PORT { | |
| 106 display "GDB serial port" | |
| 107 flavor data | |
| 108 legal_values 0 0 | |
| 109 default_value 0 | |
| 110 description " | |
| 111 The Assabet evaluation boards has only one serial port." | |
| 112 } | |
| 113 | |
| 114 cdl_option CYGHWR_HAL_ARM_SA11X0_GDB_BAUD { | |
| 115 display "GDB serial port baud rate" | |
| 116 flavor data | |
| 117 legal_values 9600 19200 38400 115200 | |
| 118 default_value 38400 | |
| 119 description " | |
| 120 This option selects the baud rate used for the diagnostic port. | |
| 121 Note: this should match the value chosen for the GDB port if the | |
| 122 diagnostic and GDB port are the same." | |
| 123 } | |
| 124 | |
| 125 cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS { | |
| 126 display "Number of communication channels on the board" | |
| 127 flavor data | |
| 128 calculated 1 | |
| 129 } | |
| 130 | |
| 131 cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL { | |
| 132 display "Debug serial port" | |
| 133 flavor data | |
| 134 legal_values 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1 | |
| 135 default_value 0 | |
| 136 description " | |
| 137 The assabet board has only one serial port. This option | |
| 138 chooses which port will be used to connect to a host | |
| 139 running GDB." | |
| 140 } | |
| 141 | |
| 142 cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL { | |
| 143 display "Diagnostic serial port" | |
| 144 flavor data | |
| 145 legal_values 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1 | |
| 146 default_value 0 | |
| 147 description " | |
| 148 The assabet board has only one serial port. This option | |
| 149 chooses which port will be used for diagnostic output." | |
| 150 } | |
| 151 | |
| 152 cdl_component CYGBLD_GLOBAL_OPTIONS { | |
| 153 display "Global build options" | |
| 154 flavor none | |
| 155 no_define | |
| 156 description " | |
| 157 Global build options including control over | |
| 158 compiler flags, linker flags and choice of toolchain." | |
| 159 | |
| 160 | |
| 161 parent CYGPKG_NONE | |
| 162 | |
| 163 cdl_option CYGBLD_GLOBAL_COMMAND_PREFIX { | |
| 164 display "Global command prefix" | |
| 165 flavor data | |
| 166 no_define | |
| 167 default_value { "arm-elf" } | |
| 168 description " | |
| 169 This option specifies the command prefix used when | |
| 170 invoking the build tools." | |
| 171 } | |
| 172 | |
| 173 cdl_option CYGBLD_GLOBAL_CFLAGS { | |
| 174 display "Global compiler flags" | |
| 175 flavor data | |
| 176 no_define | |
| 177 default_value { "-mcpu=strongarm1100 -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2 -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions -fvtable-gc -finit-priority" } | |
| 178 description " | |
| 179 This option controls the global compiler flags which are used to | |
| 180 compile all packages by default. Individual packages may define | |
| 181 options which override these global flags." | |
| 182 } | |
| 183 | |
| 184 cdl_option CYGBLD_GLOBAL_LDFLAGS { | |
| 185 display "Global linker flags" | |
| 186 flavor data | |
| 187 no_define | |
| 188 default_value { "-Wl,--gc-sections -Wl,-static -Wl,-N -g -O2 -nostdlib" } | |
| 189 description " | |
| 190 This option controls the global linker flags. Individual | |
| 191 packages may define options which override these global flags." | |
| 192 } | |
| 193 | |
| 194 cdl_option CYGBLD_BUILD_GDB_STUBS { | |
| 195 display "Build GDB stub ROM image" | |
| 196 default_value 0 | |
| 197 requires { CYG_HAL_STARTUP == "ROM" } | |
| 198 requires CYGSEM_HAL_ROM_MONITOR | |
| 199 requires CYGBLD_BUILD_COMMON_GDB_STUBS | |
| 200 requires CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS | |
| 201 requires CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT | |
| 202 requires CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT | |
| 203 requires ! CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT | |
| 204 requires ! CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM | |
| 205 no_define | |
| 206 description " | |
| 207 This option enables the building of the GDB stubs for the | |
| 208 board. The common HAL controls takes care of most of the | |
| 209 build process, but the final conversion from ELF image to | |
| 210 binary data is handled by the platform CDL, allowing | |
| 211 relocation of the data if necessary." | |
| 212 | |
| 213 make -priority 320 { | |
| 214 <PREFIX>/bin/gdb_module.bin : <PREFIX>/bin/gdb_module.img | |
| 215 $(OBJCOPY) --remove-section=.fixed_vectors -O binary $< $@ | |
| 216 } | |
| 217 } | |
| 218 } | |
| 219 | |
| 220 cdl_component CYGPKG_HAL_ARM_SA11X0_ASSABET_OPTIONS { | |
| 221 display "StrongARM SA1110/ASSABET build options" | |
| 222 flavor none | |
| 223 no_define | |
| 224 description " | |
| 225 Package specific build options including control over | |
| 226 compiler flags used only in building this package, | |
| 227 and details of which tests are built." | |
| 228 | |
| 229 | |
| 230 cdl_option CYGPKG_HAL_ARM_SA11X0_ASSABET_CFLAGS_ADD { | |
| 231 display "Additional compiler flags" | |
| 232 flavor data | |
| 233 no_define | |
| 234 default_value { "" } | |
| 235 description " | |
| 236 This option modifies the set of compiler flags for | |
| 237 building the StrongARM Assabet HAL. These flags are used in addition | |
| 238 to the set of global flags." | |
| 239 } | |
| 240 | |
| 241 cdl_option CYGPKG_HAL_ARM_SA11X0_ASSABET_CFLAGS_REMOVE { | |
| 242 display "Supressed compiler flags" | |
| 243 flavor data | |
| 244 no_define | |
| 245 default_value { "" } | |
| 246 description " | |
| 247 This option modifies the set of compiler flags for | |
| 248 building the StrongARM Assabet HAL. These flags are removed from | |
| 249 the set of global flags if present." | |
| 250 } | |
| 251 | |
| 252 cdl_option CYGPKG_HAL_ARM_SA11X0_ASSABET_TESTS { | |
| 253 display "StrongARM SA1110/Assabet tests" | |
| 254 flavor data | |
| 255 no_define | |
| 256 # calculated { "tests/dram-test" } | |
| 257 calculated { "" } | |
| 258 description " | |
| 259 This option specifies the set of tests for the StrongARM Assabet HAL." | |
| 260 } | |
| 261 } | |
| 262 | |
| 263 cdl_component CYGHWR_MEMORY_LAYOUT { | |
| 264 display "Memory layout" | |
| 265 flavor data | |
| 266 no_define | |
| 267 calculated { CYG_HAL_STARTUP == "RAM" ? "arm_sa11x0_assabet_ram" : \ | |
| 268 "arm_sa11x0_assabet_rom" } | |
| 269 | |
| 270 cdl_option CYGHWR_MEMORY_LAYOUT_LDI { | |
| 271 display "Memory layout linker script fragment" | |
| 272 flavor data | |
| 273 no_define | |
| 274 define -file system.h CYGHWR_MEMORY_LAYOUT_LDI | |
| 275 calculated { CYG_HAL_STARTUP == "RAM" ? "<pkgconf/mlt_arm_sa11x0_assabet_ram.ldi>" : \ | |
| 276 "<pkgconf/mlt_arm_sa11x0_assabet_rom.ldi>" } | |
| 277 } | |
| 278 | |
| 279 cdl_option CYGHWR_MEMORY_LAYOUT_H { | |
| 280 display "Memory layout header file" | |
| 281 flavor data | |
| 282 no_define | |
| 283 define -file system.h CYGHWR_MEMORY_LAYOUT_H | |
| 284 calculated { CYG_HAL_STARTUP == "RAM" ? "<pkgconf/mlt_arm_sa11x0_assabet_ram.h>" : \ | |
| 285 "<pkgconf/mlt_arm_sa11x0_assabet_rom.h>" } | |
| 286 } | |
| 287 } | |
| 288 | |
| 289 cdl_option CYGSEM_HAL_ROM_MONITOR { | |
| 290 display "Behave as a ROM monitor" | |
| 291 flavor bool | |
| 292 default_value 0 | |
| 293 parent CYGPKG_HAL_ROM_MONITOR | |
| 294 requires { CYG_HAL_STARTUP == "ROM" } | |
| 295 description " | |
| 296 Enable this option if this program is to be used as a ROM monitor, | |
| 297 i.e. applications will be loaded into RAM on the board, and this | |
| 298 ROM monitor may process exceptions or interrupts generated from the | |
| 299 application. This enables features such as utilizing a separate | |
| 300 interrupt stack when exceptions are generated." | |
| 301 } | |
| 302 | |
| 303 cdl_option CYGSEM_HAL_USE_ROM_MONITOR { | |
| 304 display "Work with a ROM monitor" | |
| 305 flavor booldata | |
| 306 legal_values { "Generic" "GDB_stubs" } | |
| 307 default_value { CYG_HAL_STARTUP == "RAM" ? "GDB_stubs" : 0 } | |
| 308 parent CYGPKG_HAL_ROM_MONITOR | |
| 309 requires { CYG_HAL_STARTUP == "RAM" } | |
| 310 description " | |
| 311 Support can be enabled for different varieties of ROM monitor. | |
| 312 This support changes various eCos semantics such as the encoding | |
| 313 of diagnostic output, or the overriding of hardware interrupt | |
| 314 vectors. | |
| 315 Firstly there is \"Generic\" support which prevents the HAL | |
| 316 from overriding the hardware vectors that it does not use, to | |
| 317 instead allow an installed ROM monitor to handle them. This is | |
| 318 the most basic support which is likely to be common to most | |
| 319 implementations of ROM monitor. | |
| 320 \"GDB_stubs\" provides support when GDB stubs are included in | |
| 321 the ROM monitor or boot ROM." | |
| 322 } | |
| 323 | |
| 324 } |
