]> git.kernelconcepts.de Git - karo-tx-redboot.git/blob - packages/hal/arm/mx25/var/v2_0/cdl/hal_arm_soc.cdl
unified MX27, MX25, MX37 trees
[karo-tx-redboot.git] / packages / hal / arm / mx25 / 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_MX25 {
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_MX25_MDDR {
73         display       "mDDR/DDR2 support"
74         default_value 0
75         description   "
76            When this option is enabled, it indicates support
77            for Mobile DDR on the MX25 3stack CPU board.  mDDR
78            was used on TO1.0 boards.  Subsequent boards use
79            DDR2 memory."
80         define_proc {
81            puts $::cdl_system_header "#define MEMORY_MDDR_ENABLE"
82         }
83     }
84
85     cdl_option CYGHWR_HAL_ARM_SOC_PROCESSOR_CLOCK {
86         display       "Processor clock rate"
87         active_if     { CYG_HAL_STARTUP == "ROM" }
88         flavor        data
89         legal_values  150000 200000
90         default_value { CYGHWR_HAL_ARM_SOC_PROCESSOR_CLOCK_OVERRIDE_DEFAULT ?
91                         CYGHWR_HAL_ARM_SOC_PROCESSOR_CLOCK_OVERRIDE_DEFAULT : 150000}
92         description   "
93            The processor can run at various frequencies.
94            These values are expressed in KHz.  Note that there are
95            several steppings of the rate to run at different
96            maximum frequencies.  Check the specs to make sure that your
97            particular processor can run at the rate you select here."
98     }
99
100     # Real-time clock/counter specifics
101     cdl_component CYGNUM_HAL_RTC_CONSTANTS {
102         display       "Real-time clock constants"
103         flavor        none
104         no_define
105
106         cdl_option CYGNUM_HAL_RTC_NUMERATOR {
107             display       "Real-time clock numerator"
108             flavor        data
109             calculated    1000000000
110         }
111         cdl_option CYGNUM_HAL_RTC_DENOMINATOR {
112             display       "Real-time clock denominator"
113             flavor        data
114             default_value 100
115             description   "
116               This option selects the heartbeat rate for the real-time clock.
117               The rate is specified in ticks per second.  Change this value
118               with caution - too high and your system will become saturated
119               just handling clock interrupts, too low and some operations
120               such as thread scheduling may become sluggish."
121         }
122         cdl_option CYGNUM_HAL_RTC_PERIOD {
123             display       "Real-time clock period"
124             flavor        data
125             calculated    (3686400/CYGNUM_HAL_RTC_DENOMINATOR)        ;# Clock for OS Timer is 3.6864MHz
126         }
127     }
128
129     # Control over hardware layout.
130     cdl_interface     CYGHWR_HAL_ARM_SOC_UART1 {
131         display   "UART1 available as diagnostic/debug channel"
132         description "
133           The chip has multiple serial channels which may be
134           used for different things on different platforms.  This
135           interface allows a platform to indicate that the specified
136           serial port can be used as a diagnostic and/or debug channel."
137     }
138
139     cdl_interface     CYGHWR_HAL_ARM_SOC_UART2 {
140         display   "UART2 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_UART3 {
149         display   "UART3 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_UART4 {
158         display   "UART4 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_UART5 {
167         display   "UART5 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 }