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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [rtos/] [ecos-2.0/] [packages/] [hal/] [mips/] [tx49/] [v2_0/] [cdl/] [hal_mips_tx49.cdl] - Blame information for rev 197

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 27 unneback
# ====================================================================
2
#
3
#      hal_mips_tx49.cdl
4
#
5
#      MIPS/TX49 variant architectural HAL package configuration data
6
#
7
# ====================================================================
8
#####ECOSGPLCOPYRIGHTBEGIN####
9
## -------------------------------------------
10
## This file is part of eCos, the Embedded Configurable Operating System.
11
## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, 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 version.
16
##
17
## eCos is distributed in the hope that it will be useful, but WITHOUT ANY
18
## WARRANTY; without even the implied warranty of MERCHANTABILITY or
19
## FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
20
## for more details.
21
##
22
## You should have received a copy of the GNU General Public License along
23
## with eCos; if not, write to the Free Software Foundation, Inc.,
24
## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
25
##
26
## As a special exception, if other files instantiate templates or use macros
27
## or inline functions from this file, or you compile this file and link it
28
## with other works to produce a work based on this file, this file does not
29
## by itself cause the resulting work to be covered by the GNU General Public
30
## License. However the source code for this file must still be made available
31
## in accordance with section (3) of the GNU General Public License.
32
##
33
## This exception does not invalidate any other reasons why a work based on
34
## this file might be covered by the GNU General Public License.
35
##
36
## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.
37
## at http://sources.redhat.com/ecos/ecos-license/
38
## -------------------------------------------
39
#####ECOSGPLCOPYRIGHTEND####
40
# ====================================================================
41
######DESCRIPTIONBEGIN####
42
#
43
# Author(s):      jskov
44
# Original data:  bartv, nickg
45
# Contributors:
46
# Date:           2000-05-15
47
#
48
#####DESCRIPTIONEND####
49
#
50
# ====================================================================
51
 
52
cdl_package CYGPKG_HAL_MIPS_TX49 {
53
    display       "TX49 variant"
54
    parent        CYGPKG_HAL_MIPS
55
    hardware
56
    include_dir   cyg/hal
57
    define_header hal_mips_tx49.h
58
    description   "
59
           The TX49 architecture HAL package provides generic support
60
           for this processor architecture. It is also necessary to
61
           select a specific target platform HAL package."
62
 
63
    cdl_component CYGPKG_HAL_MIPS_TX4955 {
64
        display       "TX4955 microprocessor"
65
        default_value 1
66
        implements    CYGINT_HAL_MIPS_VARIANT
67
        description "
68
            The TMPR4955F microprocessor. This is an embedded part that in
69
            addition to the TX49 processor core has built in peripherals
70
            such as memory controllers, DMA controllers, serial ports and
71
            timers/counters."
72
 
73
        define_proc {
74
            # Sizes are configurable (on the core). Should be configurable.
75
            puts $::cdl_header "#define CYGHWR_HAL_DCACHE_SIZE 32768"
76
            puts $::cdl_header "#define CYGHWR_HAL_ICACHE_SIZE 32768"
77
        }
78
 
79
        cdl_option CYGHWR_HAL_MIPS_64BIT {
80
            display    "Variant 64 bit architecture support"
81
            description "
82
                While the TX49 is a 64bit CPU, only its 32bit mode is
83
                currently supported in eCos."
84
            calculated 0
85
        }
86
 
87
        # This is optional (on the core). Should be configurable.
88
        cdl_option CYGHWR_HAL_MIPS_FPU {
89
            display    "Variant FPU support"
90
            calculated 1
91
        }
92
 
93
        cdl_interface CYGINT_HAL_MIPS_FPU_64BIT {
94
            display "Variant 64 bit FPU support interface"
95
        }
96
 
97
        cdl_option CYGHWR_HAL_MIPS_FPU_64BIT {
98
            display    "Variant 64 bit FPU support"
99
            calculated { CYGINT_HAL_MIPS_FPU_64BIT == 1 ? 1 : 0 }
100
        }
101
 
102
        cdl_option CYGHWR_HAL_MIPS_FPU_32BIT {
103
            display    "Variant 32 bit FPU support"
104
            calculated { CYGINT_HAL_MIPS_FPU_64BIT == 0 ? 1 : 0 }
105
        }
106
 
107
        # FGRn+1 is most significant part of the FGRn&FGRn+1 pair of FPRn/2
108
        # This is true for BE mips2 mode at least. Not sure about fp64 mode
109
        cdl_option CYGPKG_HAL_MIPS_DOUBLE_LSBFIRST {
110
            active_if CYGHWR_HAL_MIPS_FPU_32BIT
111
            calculated 1
112
        }
113
 
114
        cdl_interface CYGINT_HAL_MIPS_MSBFIRST {
115
            no_define
116
            display    "CPU Variant big-endian interface"
117
        }
118
 
119
        cdl_option CYGPKG_HAL_MIPS_MSBFIRST {
120
            display    "CPU Variant big-endian"
121
            calculated { CYGINT_HAL_MIPS_MSBFIRST == 0 ? 0 : 1 }
122
        }
123
 
124
        cdl_option CYGPKG_HAL_MIPS_LSBFIRST {
125
            display    "CPU Variant little-endian"
126
            calculated { CYGINT_HAL_MIPS_MSBFIRST != 0 ? 0 : 1 }
127
        }
128
    }
129
 
130
    define_proc {
131
        puts $::cdl_header "#include "
132
    }
133
 
134
    compile       var_misc.c variant.S
135
 
136
    make {
137
        /lib/target.ld: /src/mips_tx49.ld
138
        $(CC) -E -P -Wp,-MD,target.tmp -DEXTRAS=1 -xc $(INCLUDE_PATH) $(CFLAGS) -o $@ $<
139
        @echo $@ ": \\" > $(notdir $@).deps
140
        @tail +2 target.tmp >> $(notdir $@).deps
141
        @echo >> $(notdir $@).deps
142
        @rm target.tmp
143
    }
144
 
145
    cdl_option CYGBLD_LINKER_SCRIPT {
146
        display "Linker script"
147
        flavor data
148
        no_define
149
        calculated  { "src/mips_tx49.ld" }
150
    }
151
}

powered by: WebSVN 2.1.0

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