OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [rtos/] [ecos-3.0/] [packages/] [hal/] [cortexm/] [stm32/] [var/] [current/] [cdl/] [hal_cortexm_stm32.cdl] - Blame information for rev 786

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 786 skrzyp
##==========================================================================
2
##
3
##      hal_cortexm_stm32.cdl
4
##
5
##      Cortex-M STM32 variant HAL configuration data
6
##
7
##==========================================================================
8
## ####ECOSGPLCOPYRIGHTBEGIN####
9
## -------------------------------------------
10
## This file is part of eCos, the Embedded Configurable Operating System.
11
## Copyright (C) 2008, 2011 Free Software Foundation, 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
16
## version.
17
##
18
## eCos is distributed in the hope that it will be useful, but WITHOUT
19
## ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
20
## FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
21
## for more details.
22
##
23
## You should have received a copy of the GNU General Public License
24
## along with eCos; if not, write to the Free Software Foundation, Inc.,
25
## 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
26
##
27
## As a special exception, if other files instantiate templates or use
28
## macros or inline functions from this file, or you compile this file
29
## and link it with other works to produce a work based on this file,
30
## this file does not by itself cause the resulting work to be covered by
31
## the GNU General Public License. However the source code for this file
32
## must still be made available in accordance with section (3) of the GNU
33
## General Public License v2.
34
##
35
## This exception does not invalidate any other reasons why a work based
36
## on this file might be covered by the GNU General Public License.
37
## -------------------------------------------
38
## ####ECOSGPLCOPYRIGHTEND####
39
##==========================================================================
40
#######DESCRIPTIONBEGIN####
41
##
42
## Author(s):    nickg
43
## Contributors: jld
44
## Date:         2008-07-30
45
##
46
######DESCRIPTIONEND####
47
##
48
##==========================================================================
49
 
50
cdl_package CYGPKG_HAL_CORTEXM_STM32 {
51
    display       "Cortex-M3 STM32 Variant"
52
    parent        CYGPKG_HAL_CORTEXM
53
    hardware
54
    include_dir   cyg/hal
55
    define_header hal_cortexm_stm32.h
56
    description   "
57
        This package provides generic support for the ST Cortex-M based STM32
58
        microcontroller family.
59
        It is also necessary to select a variant and platform HAL package."
60
 
61
    compile       hal_diag.c stm32_misc.c
62
 
63
    implements    CYGINT_HAL_DEBUG_GDB_STUBS
64
    implements    CYGINT_HAL_DEBUG_GDB_STUBS_BREAK
65
    implements    CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT
66
    implements    CYGINT_HAL_VIRTUAL_VECTOR_COMM_BAUD_SUPPORT
67
    implements    CYGINT_PROFILE_HAL_TIMER
68
 
69
    requires      { CYGHWR_HAL_CORTEXM == "M3" }
70
 
71
    cdl_option CYGHWR_HAL_CORTEXM_STM32 {
72
        display          "STM32 variant in use"
73
        flavor           data
74
        default_value    {"F103ZE"}
75
        legal_values     {"F103RC" "F103VC" "F103ZC"
76
                          "F103RD" "F103VD" "F103ZD"
77
                          "F103RE" "F103VE" "F103ZE" }
78
        description      "The STM32 has several variants, the main differences
79
                          being in the size of on-chip FLASH and SRAM
80
                          and numbers of some peripherals. This option
81
                          allows the platform HAL to select the specific
82
                          microcontroller fitted."
83
    }
84
 
85
    cdl_option CYGNUM_HAL_CORTEXM_PRIORITY_LEVEL_BITS {
86
        display         "CPU priority levels"
87
        flavor          data
88
        calculated      4
89
        description     "This option defines the number of bits used to
90
                         encode the exception priority levels that this
91
                         variant of the Cortex-M CPU implements."
92
    }
93
 
94
 
95
 
96
    cdl_component CYGHWR_HAL_CORTEXM_STM32_CLOCK {
97
        display         "Clock setup calculations"
98
        default_value   1
99
 
100
        cdl_option CYGHWR_HAL_CORTEXM_STM32_CLOCK_PLL_SOURCE {
101
            display         "PLL input source"
102
            flavor          data
103
            default_value   { "HSE" }
104
            legal_values    { "HSI_HALF" "HSE" "HSE_HALF" }
105
        }
106
 
107
        cdl_option CYGHWR_HAL_CORTEXM_STM32_CLOCK_PLL_MUL {
108
            display         "PLL multiplier"
109
            flavor          data
110
            default_value   9
111
            legal_values    2 to 16
112
        }
113
 
114
        cdl_option CYGHWR_HAL_CORTEXM_STM32_CLOCK_HCLK_DIV {
115
            display         "HCLK divider"
116
            flavor          data
117
            default_value   1
118
            legal_values    { 1 2 4 8 16 64 128 256 512 }
119
        }
120
 
121
        cdl_option CYGHWR_HAL_CORTEXM_STM32_CLOCK_PCLK1_DIV {
122
            display         "PCLK1 divider"
123
            flavor          data
124
            default_value   2
125
            legal_values    { 1 2 4 8 16 }
126
        }
127
 
128
        cdl_option CYGHWR_HAL_CORTEXM_STM32_CLOCK_PCLK2_DIV {
129
            display         "PCLK2 divider"
130
            flavor          data
131
            default_value   1
132
            legal_values    { 1 2 4 8 16 }
133
        }
134
    }
135
 
136
    cdl_option CYGNUM_HAL_KERNEL_COUNTERS_CLOCK_ISR_DEFAULT_PRIORITY {
137
        display       "Clock interrupt ISR priority"
138
        flavor        data
139
        calculated    0xE0
140
        description   "Set clock ISR priority to lowest priority."
141
    }
142
 
143
    cdl_component CYGNUM_HAL_RTC_CONSTANTS {
144
        display       "Real-time clock constants"
145
        flavor        none
146
        no_define
147
        cdl_option CYGNUM_HAL_RTC_NUMERATOR {
148
            display       "Real-time clock numerator"
149
            flavor        data
150
            default_value 1000000000
151
        }
152
        cdl_option CYGNUM_HAL_RTC_DENOMINATOR {
153
            display       "Real-time clock denominator"
154
            flavor        data
155
            default_value 100
156
        }
157
        cdl_option CYGNUM_HAL_RTC_PERIOD {
158
            display       "Real-time clock period"
159
            flavor        data
160
            default_value 1000000 / CYGNUM_HAL_RTC_DENOMINATOR
161
            description   "The period defined here is something of a fake, it is expressed
162
                           in terms of a notional 1MHz clock. The value actually installed
163
                           in the hardware is calculated from the current settings of the
164
                           clock generation hardware."
165
        }
166
    }
167
 
168
 
169
    cdl_interface CYGINT_HAL_STM32_UART0 {
170
        display     "Platform has UART0 serial port"
171
        description "The platform has a socket on UART0."
172
    }
173
 
174
    cdl_interface CYGINT_HAL_STM32_UART1 {
175
        display     "Platform has UART1 serial port"
176
        description "The platform has a socket on UART1."
177
    }
178
 
179
    cdl_interface CYGINT_HAL_STM32_UART2 {
180
        display     "Platform has UART2 serial port"
181
        description "The platform has a socket on UART2."
182
    }
183
 
184
    cdl_interface CYGINT_HAL_STM32_UART3 {
185
        display     "Platform has UART3 serial port"
186
        description "The platform has a socket on UART3."
187
    }
188
 
189
    cdl_interface CYGINT_HAL_STM32_UART4 {
190
        display     "Platform has UART4 serial port"
191
        description "The platform has a socket on UART4."
192
    }
193
 
194
    cdl_option CYGFUN_HAL_CORTEXM_STM32_PROFILE_TIMER {
195
        display       "Use TIM2 for gprof profiling"
196
        active_if     CYGPKG_PROFILE_GPROF
197
        flavor        bool
198
        default_value 1
199
        implements    CYGINT_PROFILE_HAL_TIMER
200
        implements    CYGINT_HAL_COMMON_SAVED_INTERRUPT_STATE_REQUIRED
201
        description   "
202
            The STM32 variant HAL can provide support for gprof-based
203
            profiling. This uses timer TIM2 to generate regular interrupts,
204
            and the interrupt handler records the PC at the time of the
205
            interrupt. Disable this option if you wish to provide
206
            an alternative profiling timer implementation."
207
    }
208
 
209
    cdl_component CYGPKG_HAL_CORTEXM_STM32_OPTIONS {
210
        display "Build options"
211
        flavor  none
212
        description   "
213
            Package specific build options including control over
214
            compiler flags used only in building this package."
215
 
216
        cdl_option CYGPKG_HAL_CORTEXM_STM32_CFLAGS_ADD {
217
            display "Additional compiler flags"
218
            flavor  data
219
            no_define
220
            default_value { "" }
221
            description   "
222
                This option modifies the set of compiler flags for
223
                building the STM32 variant HAL package. These flags are used
224
                in addition to the set of global flags."
225
        }
226
 
227
        cdl_option CYGPKG_HAL_CORTEXM_STM32_CFLAGS_REMOVE {
228
            display "Suppressed compiler flags"
229
            flavor  data
230
            no_define
231
            default_value { "" }
232
            description   "
233
                This option modifies the set of compiler flags for
234
                building the STM32 variant HAL package. These flags are removed from
235
                the set of global flags if present."
236
        }
237
    }
238
 
239
    cdl_option CYGPKG_HAL_CORTEXM_STM32_TESTS {
240
        display "STM32 tests"
241
        active_if      CYGPKG_KERNEL
242
        flavor  data
243
        no_define
244
        calculated { "tests/timers" }
245
        description   "
246
            This option specifies the set of tests for the STM32 HAL."
247
    }
248
 
249
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.