comparison packages/hal/arm/integrator/current/cdl/hal_arm_integrator.cdl @ 208:e0c0827131d1 ecos

Merge from eCos master repository on 2002-05-20-20:11:54-BST
author jlarmour
date Mon, 20 May 2002 22:19:26 +0000
parents 67850532eebb
children d2c90368aeef
comparison
equal deleted inserted replaced
207:74c807ddde34 208:e0c0827131d1
3 # hal_arm_integrator.cdl 3 # hal_arm_integrator.cdl
4 # 4 #
5 # INTEGRATOR board HAL package configuration data 5 # INTEGRATOR board HAL package configuration data
6 # 6 #
7 # ==================================================================== 7 # ====================================================================
8 #####COPYRIGHTBEGIN#### 8 #####ECOSGPLCOPYRIGHTBEGIN####
9 # 9 # -------------------------------------------
10 # ------------------------------------------- 10 # This file is part of eCos, the Embedded Configurable Operating System.
11 # The contents of this file are subject to the Red Hat eCos Public License 11 # Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
12 # Version 1.1 (the "License"); you may not use this file except in 12 #
13 # compliance with the License. You may obtain a copy of the License at 13 # eCos is free software; you can redistribute it and/or modify it under
14 # http://www.redhat.com/ 14 # the terms of the GNU General Public License as published by the Free
15 # 15 # Software Foundation; either version 2 or (at your option) any later version.
16 # Software distributed under the License is distributed on an "AS IS" 16 #
17 # basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the 17 # eCos is distributed in the hope that it will be useful, but WITHOUT ANY
18 # License for the specific language governing rights and limitations under 18 # WARRANTY; without even the implied warranty of MERCHANTABILITY or
19 # the License. 19 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
20 # 20 # for more details.
21 # The Original Code is eCos - Embedded Configurable Operating System, 21 #
22 # released September 30, 1998. 22 # You should have received a copy of the GNU General Public License along
23 # 23 # with eCos; if not, write to the Free Software Foundation, Inc.,
24 # The Initial Developer of the Original Code is Red Hat. 24 # 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
25 # Portions created by Red Hat are 25 #
26 # Copyright (C) 1998, 1999, 2000 Red Hat, Inc. 26 # As a special exception, if other files instantiate templates or use macros
27 # All Rights Reserved. 27 # or inline functions from this file, or you compile this file and link it
28 # ------------------------------------------- 28 # with other works to produce a work based on this file, this file does not
29 # 29 # by itself cause the resulting work to be covered by the GNU General Public
30 #####COPYRIGHTEND#### 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####
31 # ==================================================================== 40 # ====================================================================
32 ######DESCRIPTIONBEGIN#### 41 ######DESCRIPTIONBEGIN####
33 # 42 #
34 # Author(s): David A Rusling 43 # Author(s): David A Rusling
35 # Original data: gthomas 44 # Original data: gthomas
53 compile hal_diag.c integrator_misc.c 62 compile hal_diag.c integrator_misc.c
54 63
55 implements CYGINT_HAL_DEBUG_GDB_STUBS 64 implements CYGINT_HAL_DEBUG_GDB_STUBS
56 implements CYGINT_HAL_DEBUG_GDB_STUBS_BREAK 65 implements CYGINT_HAL_DEBUG_GDB_STUBS_BREAK
57 implements CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT 66 implements CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT
58 implements CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT_NOT_GUARANTEED
59 implements CYGINT_HAL_ARM_THUMB_ARCH
60 implements CYGINT_HAL_ARM_BIGENDIAN
61 implements CYGINT_HAL_ARM_ARCH_ARM7
62 implements CYGINT_HAL_ARM_ARCH_ARM9
63 67
64 define_proc { 68 define_proc {
65 puts $::cdl_system_header "#define CYGBLD_HAL_TARGET_H <pkgconf/hal_arm.h>" 69 puts $::cdl_system_header "#define CYGBLD_HAL_TARGET_H <pkgconf/hal_arm.h>"
66 puts $::cdl_system_header "#define CYGBLD_HAL_PLATFORM_H <pkgconf/hal_arm_integrator.h>" 70 puts $::cdl_system_header "#define CYGBLD_HAL_PLATFORM_H <pkgconf/hal_arm_integrator.h>"
67 puts $::cdl_system_header "#define CYGBLD_HAL_PLATFORM_IO_H <cyg/hal/plf_io.h>"
68 puts $::cdl_header "" 71 puts $::cdl_header ""
69 puts $::cdl_header "#define HAL_PLATFORM_CPU \"ARM 7TDMI\""
70 puts $::cdl_header "#define HAL_PLATFORM_BOARD \"INTEGRATOR\"" 72 puts $::cdl_header "#define HAL_PLATFORM_BOARD \"INTEGRATOR\""
71 puts $::cdl_header "#define HAL_PLATFORM_EXTRA \"\"" 73 puts $::cdl_header "#define HAL_PLATFORM_EXTRA \"\""
72 puts $::cdl_header "" 74 puts $::cdl_header ""
73 } 75 }
74 76
75 77 cdl_component CYGPKG_HAL_ARM_INTEGRATOR_ARM7 {
78 display "ARM 7 specialization"
79 active_if !CYGPKG_HAL_ARM_ARM9
80 calculated !CYGPKG_HAL_ARM_ARM9
81
82 implements CYGINT_HAL_ARM_ARCH_ARM7
83
84 define_proc {
85 puts $::cdl_header "#define HAL_PLATFORM_CPU \"ARM 7TDMI\""
86 }
87 }
88
89 cdl_component CYGPKG_HAL_ARM_INTEGRATOR_ARM9 {
90 display "ARM 9 specialization"
91 active_if CYGPKG_HAL_ARM_ARM9
92 calculated CYGPKG_HAL_ARM_ARM9
93
94 requires CYGPKG_HAL_ARM_ARM9_ARM966E
95
96 define_proc {
97 puts $::cdl_header "#define HAL_PLATFORM_CPU \"ARM 9\""
98 }
99
100 }
101
76 cdl_component CYG_HAL_STARTUP { 102 cdl_component CYG_HAL_STARTUP {
77 display "Startup type" 103 display "Startup type"
78 flavor data 104 flavor data
79 legal_values {"RAM" "ROM"} 105 legal_values {"RAM" "ROM" "ROMRAM"}
80 default_value {"RAM"} 106 default_value {"RAM"}
81 no_define 107 no_define
82 define -file system.h CYG_HAL_STARTUP 108 define -file system.h CYG_HAL_STARTUP
83 description " 109 description "
84 When targetting the INTEGRATOR eval board it is possible to build 110 When targetting the INTEGRATOR eval board it is possible to build
88 when building a stand-alone application which will be put 114 when building a stand-alone application which will be put
89 into ROM." 115 into ROM."
90 116
91 } 117 }
92 118
93 cdl_option CYGHWR_HAL_ARM_INTEGRATOR_PCI_MEM_MAP_BASE {
94 display "Base of memory accessible via PCI space"
95 flavor data
96 legal_values 0 to 0x80000000
97 default_value 0x80000000
98 active_if CYGPKG_IO_PCI
99 description "
100 This option determines the base of the INTEGRATOR memory
101 which can be accessed via the PCI bus. Change in 256kB
102 increments."
103 }
104
105 cdl_option CYGHWR_HAL_ARM_INTEGRATOR_PCI_MEM_MAP_SIZE {
106 display "Size of memory accessible via PCI space"
107 flavor data
108 legal_values 0 to 0x100000
109 default_value 0x100000
110 active_if CYGPKG_IO_PCI
111 description "
112 This option determines the size of the INTEGRATOR memory
113 which can be accessed via the PCI bus. Change in 256kB
114 increments."
115 }
116
117 cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_DEFAULT { 119 cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_DEFAULT {
118 display "Default console channel." 120 display "Default console channel."
119 flavor data 121 flavor data
120 calculated 0 122 calculated 0
121 } 123 }
127 default_value 38400 129 default_value 38400
128 description " 130 description "
129 This option selects the baud rate used for the diagnostic port. 131 This option selects the baud rate used for the diagnostic port.
130 Note: this should match the value chosen for the GDB port if the 132 Note: this should match the value chosen for the GDB port if the
131 diagnostic and GDB port are the same." 133 diagnostic and GDB port are the same."
132 }
133
134 cdl_option CYGHWR_HAL_ARM_INTEGRATOR_GDB_PORT {
135 display "GDB serial port"
136 flavor data
137 legal_values 0 1
138 default_value 1
139 description "
140 The INTEGRATOR board has two separate serial ports. This option
141 chooses which of these ports will be used to connect to a host
142 running GDB."
143 } 134 }
144 135
145 cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_BAUD { 136 cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_BAUD {
146 display "GDB serial port baud rate" 137 display "GDB serial port baud rate"
147 flavor data 138 flavor data
172 cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL { 163 cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL {
173 display "Debug serial port" 164 display "Debug serial port"
174 active_if CYGPRI_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_CONFIGURABLE 165 active_if CYGPRI_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_CONFIGURABLE
175 flavor data 166 flavor data
176 legal_values 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1 167 legal_values 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1
177 default_value 1 168 default_value 0
178 description " 169 description "
179 The INTEGRATOR board has two serial ports. This option 170 The INTEGRATOR board has two serial ports. This option
180 chooses which port will be used to connect to a host 171 chooses which port will be used to connect to a host
181 running GDB." 172 running GDB."
182 } 173 }
184 cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL { 175 cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL {
185 display "Diagnostic serial port" 176 display "Diagnostic serial port"
186 active_if CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE 177 active_if CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE
187 flavor data 178 flavor data
188 legal_values 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1 179 legal_values 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1
189 default_value 0 180 default_value CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_DEFAULT
190 description " 181 description "
191 The INTEGRATOR board has two serial ports. This option 182 The INTEGRATOR board has two serial ports. This option
192 chooses which port will be used for diagnostic output." 183 chooses which port will be used for diagnostic output."
193 } 184 }
194 185
235 226
236 cdl_option CYGBLD_GLOBAL_CFLAGS { 227 cdl_option CYGBLD_GLOBAL_CFLAGS {
237 display "Global compiler flags" 228 display "Global compiler flags"
238 flavor data 229 flavor data
239 no_define 230 no_define
240 default_value { (CYGBLD_ARM_ENABLE_THUMB_INTERWORK && CYGHWR_HAL_ARM_BIGENDIAN) ? "-mthumb-interwork -mbig-endian -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2 -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions -fvtable-gc -finit-priority" : 231 default_value {
241 CYGBLD_ARM_ENABLE_THUMB_INTERWORK ? "-mthumb-interwork -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2 -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions -fvtable-gc -finit-priority" : 232 CYGPKG_HAL_ARM_INTEGRATOR_ARM9 ? "-mcpu=arm9 -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2 -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions -fvtable-gc -finit-priority" :
242 (CYGHWR_HAL_ARM_CPU_FAMILY == "ARM9") && CYGHWR_HAL_ARM_BIGENDIAN ? "-mcpu=arm9 -mbig-endian -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2 -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions -fvtable-gc -finit-priority" : 233 "-mcpu=arm7tdmi -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2 -fno-schedule-insns -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions -fvtable-gc -finit-priority"
243 (CYGHWR_HAL_ARM_CPU_FAMILY == "ARM9") && ! CYGHWR_HAL_ARM_BIGENDIAN ? "-mcpu=arm9 -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2 -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions -fvtable-gc -finit-priority" : 234 }
244 (CYGHWR_HAL_ARM_CPU_FAMILY != "ARM9") && CYGHWR_HAL_ARM_BIGENDIAN ? "-mcpu=arm7tdmi -mbig-endian -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2 -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions -fvtable-gc -finit-priority" : 235
245 "-mcpu=arm7tdmi -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2 -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions -fvtable-gc -finit-priority" }
246 description " 236 description "
247 This option controls the global compiler flags which are used to 237 This option controls the global compiler flags which are used to
248 compile all packages by default. Individual packages may define 238 compile all packages by default. Individual packages may define
249 options which override these global flags." 239 options which override these global flags."
250 } 240 }
251 241
252 cdl_option CYGBLD_GLOBAL_LDFLAGS { 242 cdl_option CYGBLD_GLOBAL_LDFLAGS {
253 display "Global linker flags" 243 display "Global linker flags"
254 flavor data 244 flavor data
255 no_define 245 no_define
256 default_value { ((CYGHWR_THUMB || CYGSEM_HAL_ROM_MONITOR) && CYGHWR_HAL_ARM_BIGENDIAN) ? "-mthumb-interwork -mbig-endian -g -nostdlib -Wl,--gc-sections -Wl,-static" : 246 default_value {
257 (CYGHWR_THUMB || CYGSEM_HAL_ROM_MONITOR) ? "-mthumb-interwork -g -nostdlib -Wl,--gc-sections -Wl,-static" : 247 CYGPKG_HAL_ARM_INTEGRATOR_ARM9 ? "-Wl,-Map,map -mcpu=arm9 -g -nostdlib -Wl,--gc-sections -Wl,-static" :
258 (CYGHWR_HAL_ARM_CPU_FAMILY == "ARM9") && CYGHWR_HAL_ARM_BIGENDIAN ? "-mcpu=arm9 -mbig-endian -g -nostdlib -Wl,--gc-sections -Wl,-static" : 248 "-Wl,-Map,map -mcpu=arm7tdmi -g -nostdlib -Wl,--gc-sections -Wl,-static" }
259 (CYGHWR_HAL_ARM_CPU_FAMILY == "ARM9") && ! CYGHWR_HAL_ARM_BIGENDIAN ? "-mcpu=arm9 -g -nostdlib -Wl,--gc-sections -Wl,-static" :
260 (CYGHWR_HAL_ARM_CPU_FAMILY != "ARM9") && CYGHWR_HAL_ARM_BIGENDIAN ? "-mcpu=arm7tdmi -mbig-endian -g -nostdlib -Wl,--gc-sections -Wl,-static" :
261 "-mcpu=arm7tdmi -g -nostdlib -Wl,--gc-sections -Wl,-static" }
262 description " 249 description "
263 This option controls the global linker flags. Individual 250 This option controls the global linker flags. Individual
264 packages may define options which override these global flags." 251 packages may define options which override these global flags."
265 } 252 }
266 253
267 cdl_option CYGBLD_BUILD_GDB_STUBS { 254 cdl_option CYGBLD_BUILD_GDB_STUBS {
268 display "Build GDB stub ROM image" 255 display "Build GDB stub ROM image"
269 default_value 0 256 default_value 0
270 requires CYGBLD_BUILD_COMMON_GDB_STUBS 257 requires CYGBLD_BUILD_COMMON_GDB_STUBS
271 requires { CYG_HAL_STARTUP == "ROM" } 258 requires { CYG_HAL_STARTUP != "RAM" }
272 requires CYGSEM_HAL_ROM_MONITOR 259 requires CYGSEM_HAL_ROM_MONITOR
273 requires CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS 260 requires CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
274 requires CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT 261 requires CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT
275 requires CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT 262 requires CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT
276 requires ! CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT 263 requires ! CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT
341 328
342 cdl_component CYGHWR_MEMORY_LAYOUT { 329 cdl_component CYGHWR_MEMORY_LAYOUT {
343 display "Memory layout" 330 display "Memory layout"
344 flavor data 331 flavor data
345 no_define 332 no_define
346 calculated { CYG_HAL_STARTUP == "RAM" ? "arm_integrator_ram" : \ 333 calculated { CYG_HAL_STARTUP == "RAM" ? "arm_integrator_ram" : \
347 "arm_integrator_rom" } 334 CYG_HAL_STARTUP == "ROMRAM" ? "arm_integrator_romram" : \
335 "arm_integrator_rom" }
348 336
349 cdl_option CYGHWR_MEMORY_LAYOUT_LDI { 337 cdl_option CYGHWR_MEMORY_LAYOUT_LDI {
350 display "Memory layout linker script fragment" 338 display "Memory layout linker script fragment"
351 flavor data 339 flavor data
352 no_define 340 no_define
353 define -file system.h CYGHWR_MEMORY_LAYOUT_LDI 341 define -file system.h CYGHWR_MEMORY_LAYOUT_LDI
354 calculated { CYG_HAL_STARTUP == "RAM" ? "<pkgconf/mlt_arm_integrator_ram.ldi>" : \ 342 calculated { CYG_HAL_STARTUP == "RAM" ? "<pkgconf/mlt_arm_integrator_ram.ldi>" : \
355 "<pkgconf/mlt_arm_integrator_rom.ldi>" } 343 CYG_HAL_STARTUP == "ROMRAM" ? "<pkgconf/mlt_arm_integrator_romram.ldi>" : \
344 "<pkgconf/mlt_arm_integrator_rom.ldi>" }
356 } 345 }
357 346
358 cdl_option CYGHWR_MEMORY_LAYOUT_H { 347 cdl_option CYGHWR_MEMORY_LAYOUT_H {
359 display "Memory layout header file" 348 display "Memory layout header file"
360 flavor data 349 flavor data
361 no_define 350 no_define
362 define -file system.h CYGHWR_MEMORY_LAYOUT_H 351 define -file system.h CYGHWR_MEMORY_LAYOUT_H
363 calculated { CYG_HAL_STARTUP == "RAM" ? "<pkgconf/mlt_arm_integrator_ram.h>" : \ 352 calculated { CYG_HAL_STARTUP == "RAM" ? "<pkgconf/mlt_arm_integrator_ram.h>" : \
364 "<pkgconf/mlt_arm_integrator_rom.h>" } 353 CYG_HAL_STARTUP == "ROMRAM" ? "<pkgconf/mlt_arm_integrator_romram.h>" : \
354 "<pkgconf/mlt_arm_integrator_rom.h>" }
365 } 355 }
366 } 356 }
367 357
368 358
369 cdl_option CYGSEM_HAL_ROM_MONITOR { 359 cdl_option CYGSEM_HAL_ROM_MONITOR {
370 display "Behave as a ROM monitor" 360 display "Behave as a ROM monitor"
371 flavor bool 361 flavor bool
372 default_value 0 362 default_value 0
373 parent CYGPKG_HAL_ROM_MONITOR 363 parent CYGPKG_HAL_ROM_MONITOR
374 requires { CYG_HAL_STARTUP == "ROM" } 364 requires { CYG_HAL_STARTUP != "RAM" }
375 description " 365 description "
376 Enable this option if this program is to be used as a ROM monitor, 366 Enable this option if this program is to be used as a ROM monitor,
377 i.e. applications will be loaded into RAM on the board, and this 367 i.e. applications will be loaded into RAM on the board, and this
378 ROM monitor may process exceptions or interrupts generated from the 368 ROM monitor may process exceptions or interrupts generated from the
379 application. This enables features such as utilizing a separate 369 application. This enables features such as utilizing a separate
436 active_if CYGPKG_REDBOOT 426 active_if CYGPKG_REDBOOT
437 description " 427 description "
438 This option lists the target's requirements for a valid Redboot 428 This option lists the target's requirements for a valid Redboot
439 configuration." 429 configuration."
440 430
441 cdl_option CYGBLD_BUILD_REDBOOT_BIN { 431 requires { !CYGPKG_REDBOOT_FLASH || (CYGBLD_REDBOOT_MIN_IMAGE_SIZE == 0x40000) }
442 display "Build Redboot ROM binary image" 432 requires { !CYGOPT_REDBOOT_FIS_REDBOOT_BACKUP }
443 active_if CYGBLD_BUILD_REDBOOT 433
434 cdl_option CYGBLD_BUILD_REDBOOT_BIN_ROM {
435 display "Build Redboot ROM startup ROM binary image"
436 active_if { CYGBLD_BUILD_REDBOOT && CYG_HAL_STARTUP == "ROM" }
444 default_value 1 437 default_value 1
445 no_define 438 no_define
446 description "This option enables the conversion of the Redboot ELF 439 description "This option enables the conversion of the Redboot ELF
447 image to a binary image suitable for ROM programming." 440 image to S-Record and binary image suitable for ROM
441 programming."
448 442
449 make -priority 325 { 443 make -priority 325 {
450 <PREFIX>/bin/redboot.bin : <PREFIX>/bin/redboot.elf 444 <PREFIX>/bin/redboot.bin : <PREFIX>/bin/redboot.elf
451 $(OBJCOPY) --strip-debug $< $(@:.bin=.img) 445 $(OBJCOPY) --strip-debug $< $(@:.bin=.img)
452 $(OBJCOPY) -O srec $< $(@:.bin=.srec) 446 $(OBJCOPY) -O srec --gap-fill 0 $< $(@:.bin=.srec)
453 $(OBJCOPY) -O binary $< $@ 447 $(OBJCOPY) -O binary $< $@
454 } 448 }
455 } 449 }
450
451 cdl_option CYGBLD_BUILD_REDBOOT_BIN_ROMRAM {
452 display "Build Redboot ROMRAM startup ROM binary image"
453 active_if { CYGBLD_BUILD_REDBOOT && CYG_HAL_STARTUP == "ROMRAM" }
454 default_value 1
455 no_define
456 description "This option enables the conversion of the Redboot ELF
457 image to S-Record and binary images suitable for ROM
458 programming."
459
460 make -priority 325 {
461 <PREFIX>/bin/redboot.bin : <PREFIX>/bin/redboot.elf
462 $(OBJCOPY) --strip-debug $< $(@:.bin=.img)
463 $(OBJCOPY) -O srec --adjust-vma 0x24000000 --gap-fill 0 $< $(@:.bin=.srec)
464 $(OBJCOPY) -O binary $< $@
465 }
466 }
467
468
456 } 469 }
457 } 470 }