]> git.karo-electronics.de Git - karo-tx-redboot.git/blob - packages/hal/m68k/mcf52xx/mcf5272/mcf5272c3/plf/v2_0/cdl/hal_m68k_mcf52xx_mcf5272_mcf5272c3.cdl
Initial revision
[karo-tx-redboot.git] / packages / hal / m68k / mcf52xx / mcf5272 / mcf5272c3 / plf / v2_0 / cdl / hal_m68k_mcf52xx_mcf5272_mcf5272c3.cdl
1 # ====================================================================
2 #
3 #      hal_m68k_mcf52xx_mcf5272_mcf5272c3.cdl
4 #
5 #      Motorola mcf5272c3 evaluation 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
42 cdl_package CYGPKG_HAL_M68K_MCF52xx_MCF5272_MCF5272C3 {
43     display         "Motorola mcf5272c3 evaluation board"
44     parent          CYGPKG_HAL_M68K_MCF52xx_MCF5272
45     define_header   hal_m68k_mcf52xx_mcf5272_mcf5272c3.h
46     include_dir     cyg/hal
47
48     description   "The  Motorola  mcf5272c3  evaluation  board  platform   HAL
49                 package should be used when targeting the actual hardware  for
50                 the Motorola mcf5272c3 evaluation board platform."
51
52     define_proc {
53         puts $::cdl_header "#include <pkgconf/hal_m68k_mcf52xx_mcf5272.h>"
54     }
55
56     compile     plf_startup.c hal_diag.c
57
58 #    implements      CYGINT_HAL_DEBUG_GDB_STUBS
59 #    implements      CYGINT_HAL_DEBUG_GDB_STUBS_BREAK
60
61     define_proc {
62         puts $::cdl_system_header "#define CYGBLD_HAL_TARGET_H   <pkgconf/hal_m68k.h>"
63         puts $::cdl_system_header "#define CYGBLD_HAL_VARIANT_H <pkgconf/hal_m68k_mcf52xx_mcf5272.h>"
64         puts $::cdl_system_header "#define CYGBLD_HAL_PLATFORM_H <pkgconf/hal_m68k_mcf52xx_mcf5272_mcf5272c3.h>"
65     }
66
67     cdl_component CYG_HAL_STARTUP {
68         display         "Startup type"
69         flavor          data
70         legal_values    {"RAM" "ROM"}
71         default_value   {"RAM"}
72             no_define
73             define -file system.h CYG_HAL_STARTUP
74
75         description   "When targeting the Motorola mcf5272c3 evaluation  board
76                     it is expected that the image will be downloaded into  RAM
77                     via the Motorola dBUG monitor."
78
79     }
80
81     cdl_option CYGHWR_HAL_SYSTEM_CLOCK_MHZ {
82        display          "System clock speed in MHz"
83        flavor data
84        legal_values     66
85        default_value    66
86
87        description    "This  option  identifies  the  system  clock  that  the
88                     processor uses.  This value is used to set clock  dividers
89                     for some devices."
90
91     }
92
93     cdl_option CYGHWR_HAL_M68K_MCF52xx_MCF5272_MCF5272C3_DIAG_BAUD {
94        display          "Diagnostic Serial Port Baud Rate"
95        flavor data
96        legal_values     9600 19200 38400 115200
97        default_value    9600
98
99        description    "This  option  selects  the  baud  rate  used  for   the
100                     diagnostic port.  Note: this should match the value chosen
101                     for the GDB port if  the diagnostic and  GDB port are  the
102                     same."
103
104     }
105
106     cdl_option CYGHWR_HAL_M68K_MCF52xx_MCF5272_MCF5272C3_GDB_BAUD {
107        display          "GDB Serial Port Baud Rate"
108        flavor data
109        legal_values     9600 19200 38400 115200
110        default_value    9600
111
112        description    "This option controls  the baud  rate used  for the  GDB
113                     connection."
114
115     }
116
117     # Real-time clock/counter specifics
118     cdl_component CYGNUM_HAL_RTC_CONSTANTS {
119         display       "Real-time clock constants."
120         flavor        none
121
122         description   "Set the periodic timer  on  the  mcf5272  to  1  ms  or
123                     1000000 ns."
124
125         cdl_option CYGNUM_HAL_RTC_NUMERATOR {
126             display       "Real-time clock numerator"
127             flavor        data
128             default_value 1000000000
129         }
130         cdl_option CYGNUM_HAL_RTC_DENOMINATOR {
131             display       "Real-time clock denominator"
132             flavor        data
133             default_value 1000
134         }
135         cdl_option CYGNUM_HAL_RTC_PERIOD {
136             display       "Real-time clock period"
137             flavor        data
138             default_value 1000000
139         }
140     }
141
142     cdl_component CYGBLD_GLOBAL_OPTIONS {
143         display "Global build options"
144         flavor  none
145         parent  CYGPKG_NONE
146
147         description   "Global build  options including  control over  compiler
148                     flags, linker flags and choice of toolchain."
149
150         cdl_option CYGBLD_GLOBAL_COMMAND_PREFIX {
151             display "Global command prefix"
152             flavor  data
153             no_define
154             default_value { "m68k-elf" }
155
156             description       "This option specifies  the command prefix  used
157                             when invoking the build tools."
158
159         }
160
161         cdl_option CYGBLD_GLOBAL_CFLAGS {
162             display "Global compiler flags"
163             flavor  data
164             no_define
165             default_value { "-m5200 -malign-int -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2 -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions -fvtable-thunks=3 -finit-priority -fomit-frame-pointer" }
166             description       "This option controls the global compiler  flags
167                             which are used to compile all packages by default.
168                             Individual  packages  may  define  options   which
169                             override these global flags."
170
171         }
172
173         cdl_option CYGBLD_GLOBAL_LDFLAGS {
174             display "Global linker flags"
175             flavor  data
176             no_define
177             default_value { "-m5200 -g -nostdlib -Wl,--gc-sections -Wl,-static" }
178
179             description       "This option controls  the global linker  flags.
180                             Individual  packages  may  define  options   which
181                             override these global flags."
182
183         }
184
185         cdl_option CYGBLD_BUILD_GDB_STUBS {
186             display "Build GDB stub ROM image"
187             default_value 0
188             requires { CYG_HAL_STARTUP == "ROM" }
189             requires CYGSEM_HAL_ROM_MONITOR
190             requires CYGBLD_BUILD_COMMON_GDB_STUBS
191             requires CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
192             requires ! CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT
193             requires ! CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT
194             requires ! CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT
195             requires ! CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM
196             no_define
197
198             description       "This option enables the  building  of  the  GDB
199                             stubs for the  board.   The  common  HAL  controls
200                             takes care of most of  the build process, but  the
201                             final conversion from ELF image to binary data  is
202                             handled by the  platform CDL, allowing  relocation
203                             of the data if necessary."
204
205             make -priority 320 {
206                 <PREFIX>/bin/gdb_module.srec : <PREFIX>/bin/gdb_module.img
207                 $(OBJCOPY) -O srec $< $@
208             }
209         }
210     }
211
212     cdl_component CYGHWR_MEMORY_LAYOUT {
213         display "Memory layout"
214         flavor data
215         no_define
216         calculated { CYG_HAL_STARTUP == "RAM" ? "m68k_mcf52xx_mcf5272_mcf5272c3_ram" : \
217                                                 "m68k_mcf52xx_mcf5272_mcf5272c3_rom" }
218
219         cdl_option CYGHWR_MEMORY_LAYOUT_LDI {
220             display "Memory layout linker script fragment"
221             flavor data
222             no_define
223             define -file system.h CYGHWR_MEMORY_LAYOUT_LDI
224             calculated { CYG_HAL_STARTUP == "RAM" ? "<pkgconf/mlt_m68k_mcf52xx_mcf5272_mcf5272c3_ram.ldi>" : \
225                                                     "<pkgconf/mlt_m68k_mcf52xx_mcf5272_mcf5272c3_rom.ldi>" }
226         }
227
228         cdl_option CYGHWR_MEMORY_LAYOUT_H {
229             display "Memory layout header file"
230             flavor data
231             no_define
232             define -file system.h CYGHWR_MEMORY_LAYOUT_H
233             calculated { CYG_HAL_STARTUP == "RAM" ? "<pkgconf/mlt_m68k_mcf52xx_mcf5272_mcf5272c3_ram.h>" : \
234                                                     "<pkgconf/mlt_m68k_mcf52xx_mcf5272_mcf5272c3_rom.h>" }
235         }
236     }
237
238     cdl_option CYGSEM_HAL_USE_ROM_MONITOR {
239         display       "Work with a ROM monitor"
240         flavor        booldata
241         legal_values  { "GDB_stubs" }
242         default_value { CYG_HAL_STARTUP == "RAM" ? "GDB_stubs" : 0 }
243         requires      { CYG_HAL_STARTUP == "RAM" }
244         parent        CYGPKG_HAL_ROM_MONITOR
245
246         description       "Support  can  be  enabled  for  boot  ROMs  or  ROM
247                         monitors  which  contain  GDB  stubs.   This   support
248                         changes various eCos semantics such as the encoding of
249                         diagnostic output,  and  the  overriding  of  hardware
250                         interrupt vectors."
251
252     }
253
254     cdl_option CYGSEM_HAL_ROM_MONITOR {
255         display       "Behave as a ROM monitor"
256         flavor        bool
257         default_value 0
258         parent        CYGPKG_HAL_ROM_MONITOR
259         requires      { CYG_HAL_STARTUP == "ROM" }
260
261         description       "Enable this option if this program is to be used as
262                         a ROM monitor, i.e.  applications will be loaded  into
263                         RAM on the  board, and  this ROM  monitor may  process
264                         exceptions   or   interrupts   generated   from    the
265                         application.  This enables features such as  utilizing
266                         a  separate  interrupt   stack  when  exceptions   are
267                         generated."
268
269     }
270 }