unified MX27, MX25, MX37 trees
[karo-tx-redboot.git] / packages / hal / arm / mx31 / 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_MX31 {
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_HAL_ARM_SOC_PROCESSOR_CLOCK {
73         display       "Processor clock rate"
74         active_if     { CYG_HAL_STARTUP == "ROM" }
75         flavor        data
76         legal_values  150000 200000
77         default_value { CYGHWR_HAL_ARM_SOC_PROCESSOR_CLOCK_OVERRIDE_DEFAULT ?
78                         CYGHWR_HAL_ARM_SOC_PROCESSOR_CLOCK_OVERRIDE_DEFAULT : 150000}
79         description   "
80            The processor can run at various frequencies.
81            These values are expressed in KHz.  Note that there are
82            several steppings of the rate to run at different
83            maximum frequencies.  Check the specs to make sure that your
84            particular processor can run at the rate you select here."
85     }
86
87     # Real-time clock/counter specifics
88     cdl_component CYGNUM_HAL_RTC_CONSTANTS {
89         display       "Real-time clock constants"
90         flavor        none
91         no_define
92     
93         cdl_option CYGNUM_HAL_RTC_NUMERATOR {
94             display       "Real-time clock numerator"
95             flavor        data
96             calculated    1000000000
97         }
98         cdl_option CYGNUM_HAL_RTC_DENOMINATOR {
99             display       "Real-time clock denominator"
100             flavor        data
101             default_value 100
102             description   "
103               This option selects the heartbeat rate for the real-time clock.
104               The rate is specified in ticks per second.  Change this value
105               with caution - too high and your system will become saturated
106               just handling clock interrupts, too low and some operations
107               such as thread scheduling may become sluggish."
108         }
109         cdl_option CYGNUM_HAL_RTC_PERIOD {
110             display       "Real-time clock period"
111             flavor        data
112             calculated    (3686400/CYGNUM_HAL_RTC_DENOMINATOR)        ;# Clock for OS Timer is 3.6864MHz
113         }
114     }
115
116     # Control over hardware layout.  
117     cdl_interface     CYGHWR_HAL_ARM_SOC_UART1 {
118         display   "UART1 available as diagnostic/debug channel"
119         description "
120           The chip has multiple serial channels which may be
121           used for different things on different platforms.  This
122           interface allows a platform to indicate that the specified
123           serial port can be used as a diagnostic and/or debug channel."
124     }
125
126     cdl_interface     CYGHWR_HAL_ARM_SOC_UART2 {
127         display   "UART2 available as diagnostic/debug channel"
128         description "
129           The chip has multiple serial channels which may be
130           used for different things on different platforms.  This
131           interface allows a platform to indicate that the specified
132           serial port can be used as a diagnostic and/or debug channel."
133     }
134
135     cdl_interface     CYGHWR_HAL_ARM_SOC_UART3 {
136         display   "UART3 available as diagnostic/debug channel"
137         description "
138           The chip has multiple serial channels which may be
139           used for different things on different platforms.  This
140           interface allows a platform to indicate that the specified
141           serial port can be used as a diagnostic and/or debug channel."
142     }
143
144     cdl_interface     CYGHWR_HAL_ARM_SOC_UART4 {
145         display   "UART4 available as diagnostic/debug channel"
146         description "
147           The chip has multiple serial channels which may be
148           used for different things on different platforms.  This
149           interface allows a platform to indicate that the specified
150           serial port can be used as a diagnostic and/or debug channel."
151     }
152
153     cdl_interface     CYGHWR_HAL_ARM_SOC_UART5 {
154         display   "UART5 available as diagnostic/debug channel"
155         description "
156           The chip has multiple serial channels which may be
157           used for different things on different platforms.  This
158           interface allows a platform to indicate that the specified
159           serial port can be used as a diagnostic and/or debug channel."
160     }
161
162 }