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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [rtos/] [ecos-3.0/] [packages/] [hal/] [m68k/] [mcf52xx/] [mcf5272/] [proc/] [current/] [cdl/] [hal_m68k_mcf5272.cdl] - Blame information for rev 786

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 786 skrzyp
# ====================================================================
2
#
3
#      hal_m68k_mcf5272.cdl
4
#
5
#      Processor settings for a Freescale mcf5272
6
#
7
# ====================================================================
8
# ####ECOSGPLCOPYRIGHTBEGIN####
9
# -------------------------------------------
10
# This file is part of eCos, the Embedded Configurable Operating System.
11
# Copyright (C) 2003, 2004, 2006, 2007, 2008 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):     bartv
43
# Date:          2003-06-04
44
#
45
#####DESCRIPTIONEND####
46
#========================================================================
47
 
48
cdl_package CYGPKG_HAL_M68K_MCF5272 {
49
    display         "MCF5272 ColdFire variant HAL"
50
    doc             ref/hal-m68k-mcf5272.html
51
    parent          CYGPKG_HAL_M68K_MCFxxxx
52
    requires        CYGPKG_HAL_M68K_MCFxxxx
53
    implements      CYGINT_HAL_M68K_VARIANT_CACHE
54
    implements      CYGINT_HAL_M68K_VARIANT_IRAM
55
    hardware
56
    include_dir     cyg/hal
57
 
58
    description   "The mcf5272 M68k/ColdFire processor HAL package provides
59
                generic support for this processor."
60
 
61
    compile     mcf5272.c
62
    define_proc {
63
        puts $::cdl_system_header "#define CYGBLD_HAL_PROC_H   "
64
    }
65
 
66
    cdl_component CYGPKG_HAL_M68K_MCF5272_HARDWARE {
67
        display     "Board-specific details"
68
        flavor      none
69
 
70
        cdl_component CYGHWR_HAL_M68K_MCF5272_GPIO {
71
            display     "Configure GPIO pins"
72
            flavor      none
73
            active_if   CYGHWR_HAL_M68K_MCF5272_BOARD_PINS
74
            script      gpio.cdl
75
 
76
            description "
77
              MCF5272 processors have 48 multi-purpose pins which can
78
              be used for on-chip peripherals or for general purpose I/O.
79
              Provided the platform HAL provides the appropriate information
80
              the processor HAL will automatically set up each pin early on
81
              during system initialization."
82
        }
83
 
84
        cdl_component CYGHWR_HAL_M68K_MCFxxxx_UART0 {
85
            display     "UART0 details"
86
            flavor      bool
87
            default_value { (CYGHWR_HAL_M68K_MCF5272_GPIO_PORTB_PB0 == "txd0") || (CYGHWR_HAL_M68K_MCF5272_GPIO_PORTB_PB1 == "rxd0") }
88
            description "
89
              MCF5272 processors have three built-in UARTs which can be
90
              used for HAL diagnostics or through the serial driver
91
              CYGPKG_DEVS_SERIAL_MCFxxxx. By default support for each
92
              UART is enabled if the relevant GPIO configuration options
93
              are appropriate, disabled otherwise. Users can override this if
94
              necessary, for example if the pins should come up in GPIO mode
95
              but may be switched to UART mode later on."
96
 
97
            cdl_option CYGHWR_HAL_M68K_MCFxxxx_UART0_RTS {
98
                display     "UART0 RTS connected"
99
                flavor      bool
100
                default_value  { CYGHWR_HAL_M68K_MCF5272_GPIO_PORTB_PB3 == "rts0" }
101
                implements      CYGINT_IO_SERIAL_FLOW_CONTROL_HW
102
                description "
103
                  This option enables support elsewhere in the system
104
                  when the UART0 RTS signal is connected to a processor pin."
105
            }
106
 
107
            cdl_option CYGHWR_HAL_M68K_MCFxxxx_UART0_CTS {
108
                display     "UART0 CTS connected"
109
                flavor      bool
110
                default_value  { CYGHWR_HAL_M68K_MCF5272_GPIO_PORTB_PB2 == "cts0" }
111
                implements      CYGINT_IO_SERIAL_FLOW_CONTROL_HW
112
                description "
113
                  This option enables support elsewhere in the system
114
                  when the UART0 CTS signal is connected to a processor pin."
115
            }
116
 
117
            cdl_option CYGHWR_HAL_M68K_MCFxxxx_UART0_RS485_RTS {
118
                display         "UART0 RS485 support"
119
                flavor          bool
120
                default_value   0
121
                active_if       CYGHWR_HAL_M68K_MCFxxxx_UART0_RTS
122
                requires        { CYGHWR_HAL_M68K_MCFxxxx_DIAGNOSTICS_PORT != "uart0" }
123
                description "
124
                  If the UART0 signals are connected to an RS485 transceiver instead of
125
                  an RS232 transceiver and the UART0 RTS line activates that transceiver
126
                  then this option can be enabled. It primarily affects h/w flow control
127
                  and transmit code within the generic mcfxxxx serial driver."
128
            }
129
        }
130
 
131
        cdl_component CYGHWR_HAL_M68K_MCFxxxx_UART1 {
132
            display     "UART1 details"
133
            flavor      bool
134
            default_value { (CYGHWR_HAL_M68K_MCF5272_GPIO_PORTD_PD4 == "txd1") || (CYGHWR_HAL_M68K_MCF5272_GPIO_PORTD_PD1 == "rxd1") }
135
            description "
136
              MCF5272 processors have two built-in UARTs which can be
137
              used for HAL diagnostics or through the serial driver
138
              CYGPKG_DEVS_SERIAL_MCFxxxx. By default support for each
139
              UART is enabled if the relevant GPIO configuration options
140
              are appropriate, disabled otherwise. Users can override this if
141
              necessary, for example if the pins should come up in GPIO mode
142
              but may be switched to UART mode later on."
143
 
144
            cdl_option CYGHWR_HAL_M68K_MCFxxxx_UART1_RTS {
145
                display     "UART1 RTS connected"
146
                flavor      bool
147
                default_value  { CYGHWR_HAL_M68K_MCF5272_GPIO_PORTD_PD3 == "rts1" }
148
                implements      CYGINT_IO_SERIAL_FLOW_CONTROL_HW
149
                description "
150
                  This option enables support elsewhere in the system
151
                  when the UART1 RTS signal is connected to a processor pin."
152
            }
153
 
154
            cdl_option CYGHWR_HAL_M68K_MCFxxxx_UART1_CTS {
155
                display     "UART1 CTS connected"
156
                flavor      bool
157
                default_value  { CYGHWR_HAL_M68K_MCF5272_GPIO_PORTD_PD2 == "cts1" }
158
                implements      CYGINT_IO_SERIAL_FLOW_CONTROL_HW
159
                description "
160
                  This option enables support elsewhere in the system
161
                  when the UART1 CTS signal is connected to a processor pin."
162
            }
163
 
164
            cdl_option CYGHWR_HAL_M68K_MCFxxxx_UART1_RS485_RTS {
165
                display         "UART1 RS485 support"
166
                flavor          bool
167
                default_value   0
168
                active_if       CYGHWR_HAL_M68K_MCFxxxx_UART1_RTS
169
                requires        { CYGHWR_HAL_M68K_MCFxxxx_DIAGNOSTICS_PORT != "uart1" }
170
                description "
171
                  If the UART1 signals are connected to an RS485 transceiver instead of
172
                  an RS232 transceiver and the UART1 RTS line activates that transceiver
173
                  then this option can be enabled. This primarily affects h/w flow control
174
                  and transmit code within the generic mcfxxxx serial driver."
175
            }
176
        }
177
    }
178
 
179
    cdl_option CYGIMP_HAL_M68K_MCF5272_IDLE {
180
        display         "Idle thread behaviour"
181
        flavor          data
182
        legal_values    { "run" "sleep" "stop" }
183
        default_value   { is_loaded(CYGPKG_CPULOAD) ? "run" : "sleep" }
184
        description "
185
            The processor can automatically enter a low power mode whenever
186
          the system is idle. In run mode the cpu just spins. In sleep mode
187
          the cpu clock is disabled but peripherals continue running, and any
188
          interrupt will wake up the cpu. In stop mode the on-chip peripherals
189
          are shut down as well and an external interrupt is required. The
190
          MCF5272 provides finer-grained control over power management via
191
          the PMR power management register but the processor HAL leaves
192
          this to the application."
193
    }
194
 
195
    cdl_option CYGFUN_HAL_M68K_MCF5272_PROFILE_TIMER {
196
        display         "Support profiling"
197
        active_if       CYGPKG_PROFILE_GPROF
198
        default_value   1
199
        implements      CYGINT_PROFILE_HAL_TIMER
200
        compile         mcf5272_profile.S
201
 
202
        description "
203
          The MCF5272 processor HAL can provide support for gprof-based
204
          profiling. This uses timer TMR2 to generate regular interrupts,
205
          and the interrupt handler records the PC at the time of the
206
          interrupt."
207
    }
208
 
209
    cdl_option CYGNUM_HAL_M68K_MCFxxxx_ISR_PRIORITY_MIN {
210
        display     "Lowest permitted interrupt priority"
211
        flavor      data
212
        calculated  1
213
        description "
214
            In the MCF5272 processor HAL interrupt priorities are mapped
215
            directly onto M68K IPL levels, so valid priorities are in the
216
            range 1 to 7. However IPL level 7 is non-maskable so should not
217
            be used by typical eCos code."
218
    }
219
 
220
    cdl_option CYGNUM_HAL_M68K_MCFxxxx_ISR_PRIORITY_MAX {
221
        display     "Lowest permitted interrupt priority"
222
        flavor      data
223
        calculated  6
224
        description "
225
            In the MCF5272 processor HAL interrupt priorities are mapped
226
            directly onto M68K IPL levels, so valid priorities are in the
227
            range 1 to 7. However IPL level 7 is non-maskable so should not
228
            be used by typical eCos code."
229
    }
230
}

powered by: WebSVN 2.1.0

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