]> git.kernelconcepts.de Git - karo-tx-redboot.git/blob - packages/hal/arm/mx51/var/v2_0/cdl/hal_arm_soc.cdl
TX51 pre-release
[karo-tx-redboot.git] / packages / hal / arm / mx51 / var / v2_0 / cdl / hal_arm_soc.cdl
1 # ====================================================================
2 #####ECOSGPLCOPYRIGHTBEGIN####
3 ## -------------------------------------------
4 ## This file is part of eCos, the Embedded Configurable Operating System.
5 ## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
6 ##
7 ## eCos is free software; you can redistribute it and/or modify it under
8 ## the terms of the GNU General Public License as published by the Free
9 ## Software Foundation; either version 2 or (at your option) any later version.
10 ##
11 ## eCos is distributed in the hope that it will be useful, but WITHOUT ANY
12 ## WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 ## FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
14 ## for more details.
15 ##
16 ## You should have received a copy of the GNU General Public License along
17 ## with eCos; if not, write to the Free Software Foundation, Inc.,
18 ## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
19 ##
20 ## As a special exception, if other files instantiate templates or use macros
21 ## or inline functions from this file, or you compile this file and link it
22 ## with other works to produce a work based on this file, this file does not
23 ## by itself cause the resulting work to be covered by the GNU General Public
24 ## License. However the source code for this file must still be made available
25 ## in accordance with section (3) of the GNU General Public License.
26 ##
27 ## This exception does not invalidate any other reasons why a work based on
28 ## this file might be covered by the GNU General Public License.
29 ##
30 ## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.
31 ## at http://sources.redhat.com/ecos/ecos-license/
32 ## -------------------------------------------
33 #####ECOSGPLCOPYRIGHTEND####
34 # ====================================================================
35 ######DESCRIPTIONBEGIN####
36 #
37 # Author(s):      gthomas
38 # Original data:  gthomas
39 # Contributors:
40 # Date:           2000-05-08
41 #
42 #####DESCRIPTIONEND####
43 #
44 # ====================================================================
45 cdl_package CYGPKG_HAL_ARM_MX51 {
46     display       "Freescale SoC architecture"
47     parent        CYGPKG_HAL_ARM
48     hardware
49     include_dir   cyg/hal
50     define_header hal_arm_soc.h
51     description   "
52         This HAL variant package provides generic
53         support for the Freescale SoC. It is also
54         necessary to select a specific target platform HAL
55         package."
56
57     implements    CYGINT_HAL_ARM_ARCH_ARM9
58     implements    CYGINT_HAL_VIRTUAL_VECTOR_COMM_BAUD_SUPPORT
59
60     # Let the architectural HAL see this variant's interrupts file -
61     # the SoC has no variation between targets here.
62     define_proc {
63         puts $::cdl_header "#define CYGBLD_HAL_VAR_INTS_H <cyg/hal/hal_var_ints.h>"
64         puts $::cdl_system_header "#define CYGBLD_HAL_ARM_VAR_IO_H"
65
66         puts $::cdl_header "#define CYGPRI_KERNEL_TESTS_DHRYSTONE_PASSES 1000000"
67     }
68
69     compile       soc_diag.c soc_misc.c
70     compile -library=libextras.a cmds.c
71
72     cdl_option CYGHWR_MX51_TO2 {
73         display       "MX51 Tapeout 2.0 support"
74         default_value 1
75         description   "
76             When this option is enabled, it indicates support for
77             MX51 Tapeout 2.0"
78         define_proc {
79             puts $::cdl_system_header "#define IMX51_TO_2"
80         }
81     }
82
83     cdl_option CYGHWR_MX51_MDDR {
84         display       "MX51 mDDR memory support"
85         default_value 0
86         description   "
87             When this option is enabled, it indicates support for
88             mDDR memory on MX51"
89         define_proc {
90             puts $::cdl_system_header "#define IMX51_MDDR"
91         }
92     }
93
94     cdl_option CYGHWR_HAL_ARM_SOC_PROCESSOR_CLOCK {
95         display       "Processor clock rate"
96         active_if     { CYG_HAL_STARTUP == "ROM" }
97         flavor        data
98         legal_values  150000 200000
99         default_value { CYGHWR_HAL_ARM_SOC_PROCESSOR_CLOCK_OVERRIDE_DEFAULT ?
100                         CYGHWR_HAL_ARM_SOC_PROCESSOR_CLOCK_OVERRIDE_DEFAULT : 150000}
101         description   "
102            The processor can run at various frequencies.
103            These values are expressed in KHz.  Note that there are
104            several steppings of the rate to run at different
105            maximum frequencies.  Check the specs to make sure that your
106            particular processor can run at the rate you select here."
107     }
108
109     # Real-time clock/counter specifics
110     cdl_component CYGNUM_HAL_RTC_CONSTANTS {
111         display       "Real-time clock constants"
112         flavor        none
113         no_define
114
115         cdl_option CYGNUM_HAL_RTC_NUMERATOR {
116             display       "Real-time clock numerator"
117             flavor        data
118             calculated    1000000000
119         }
120         cdl_option CYGNUM_HAL_RTC_DENOMINATOR {
121             display       "Real-time clock denominator"
122             flavor        data
123             default_value 100
124             description   "
125               This option selects the heartbeat rate for the real-time clock.
126               The rate is specified in ticks per second.  Change this value
127               with caution - too high and your system will become saturated
128               just handling clock interrupts, too low and some operations
129               such as thread scheduling may become sluggish."
130         }
131         cdl_option CYGNUM_HAL_RTC_PERIOD {
132             display       "Real-time clock period"
133             flavor        data
134             calculated    (3686400/CYGNUM_HAL_RTC_DENOMINATOR)        ;# Clock for OS Timer is 3.6864MHz
135         }
136     }
137
138     # Control over hardware layout.
139     cdl_interface     CYGHWR_HAL_ARM_SOC_UART1 {
140         display   "UART1 available as diagnostic/debug channel"
141         description "
142           The chip has multiple serial channels which may be
143           used for different things on different platforms.  This
144           interface allows a platform to indicate that the specified
145           serial port can be used as a diagnostic and/or debug channel."
146     }
147
148     cdl_interface     CYGHWR_HAL_ARM_SOC_UART2 {
149         display   "UART2 available as diagnostic/debug channel"
150         description "
151           The chip has multiple serial channels which may be
152           used for different things on different platforms.  This
153           interface allows a platform to indicate that the specified
154           serial port can be used as a diagnostic and/or debug channel."
155     }
156
157     cdl_interface     CYGHWR_HAL_ARM_SOC_UART3 {
158         display   "UART3 available as diagnostic/debug channel"
159         description "
160           The chip has multiple serial channels which may be
161           used for different things on different platforms.  This
162           interface allows a platform to indicate that the specified
163           serial port can be used as a diagnostic and/or debug channel."
164     }
165
166     cdl_interface     CYGHWR_HAL_ARM_SOC_UART4 {
167         display   "UART4 available as diagnostic/debug channel"
168         description "
169           The chip has multiple serial channels which may be
170           used for different things on different platforms.  This
171           interface allows a platform to indicate that the specified
172           serial port can be used as a diagnostic and/or debug channel."
173     }
174
175     cdl_interface     CYGHWR_HAL_ARM_SOC_UART5 {
176         display   "UART5 available as diagnostic/debug channel"
177         description "
178           The chip has multiple serial channels which may be
179           used for different things on different platforms.  This
180           interface allows a platform to indicate that the specified
181           serial port can be used as a diagnostic and/or debug channel."
182     }
183 }