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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [rtos/] [ecos-3.0/] [packages/] [hal/] [mips/] [arch/] [current/] [cdl/] [hal_mips.cdl] - Blame information for rev 786

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 786 skrzyp
# ====================================================================
2
#
3
#      hal_mips.cdl
4
#
5
#      MIPS 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 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):      jskov
43
# Original data:  bartv, nickg
44
# Contributors:
45
# Date:           1999-11-02
46
#
47
#####DESCRIPTIONEND####
48
#
49
# ====================================================================
50
 
51
cdl_package CYGPKG_HAL_MIPS {
52
    display "MIPS architecture"
53
    parent        CYGPKG_HAL
54
    hardware
55
    include_dir   cyg/hal
56
    define_header hal_mips.h
57
    description   "
58
        The MIPS architecture HAL package provides generic support
59
        for this processor architecture. It is also necessary to
60
        select a CPU variant and a specific target platform HAL
61
        package."
62
 
63
    cdl_interface CYGINT_HAL_MIPS_VARIANT {
64
        display  "Number of variant implementations in this configuration"
65
        requires 1 == CYGINT_HAL_MIPS_VARIANT
66
    }
67
 
68
    compile       hal_misc.c context.S mips-stub.c mipsfp.c
69
    compile       hal_syscall.c
70
 
71
    make {
72
        /lib/vectors.o : /src/vectors.S
73
        $(CC) -Wp,-MD,vectors.tmp $(INCLUDE_PATH) $(CFLAGS) -c -o $@ $<
74
        @echo $@ ": \\" > $(notdir $@).deps
75
        @tail -n +2 vectors.tmp >> $(notdir $@).deps
76
        @echo >> $(notdir $@).deps
77
        @rm vectors.tmp
78
    }
79
 
80
    define_proc {
81
        puts $::cdl_header "#define HAL_ARCH_PROGRAM_NEW_STACK hal_arch_program_new_stack"
82
    }
83
 
84
    cdl_option CYGHWR_HAL_MIPS_CPU_FREQ {
85
        display "CPU frequency"
86
        flavor  data
87
        legal_values 0 to 1000000
88
        default_value 50
89
        description "
90
           This option contains the frequency of the CPU in MegaHertz.
91
           Choose the frequency to match the processor you have. This
92
           may affect thing like serial device, interval clock and
93
           memory access speed settings."
94
    }
95
 
96
    cdl_option CYGDBG_HAL_MIPS_DEBUG_GDB_CTRLC_SUPPORT {
97
        display "Architecture GDB CTRLC support"
98
        calculated { CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT || CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT }
99
        active_if { CYGINT_HAL_DEBUG_GDB_CTRLC_UNSUPPORTED == 0 }
100
        description "
101
            If either the CTRLC or BREAK support options in hal.h are set
102
            then set our own option to turn on shared generic support for
103
            control C handling."
104
    }
105
 
106
    cdl_option CYGSEM_HAL_MIPS_EMULATE_UNIMPLEMENTED_FPU_OPS {
107
        display  "Emulate unimplemented FPU opcodes"
108
        flavor   bool
109
        default_value 1
110
        description "
111
           Enabling this option will include a hook in the exception
112
           processing so that Unimplemented Operation FPU exceptions
113
           may be handled. This option has no effect if there is no
114
           hardware floating-point unit. Note that not all situations
115
           in which an exception is raised may be handled. If not, the
116
           exception will be passed on as normal through the standard
117
           exception delivery mechanism."
118
    }
119
 
120
    cdl_interface CYGINT_HAL_MIPS_STUB_REPRESENT_32BIT_AS_64BIT {
121
        display  "Represent 32-bit registers as 64-bit to GDB"
122
        flavor booldata
123
        description "
124
        This interface may be implemented by MIPS variant or platform HALs
125
        to instruct the MIPS stub to interwork correctly with GDB which
126
        expects 64-bit register values, even in application code which has
127
        been compiled as 32-bit.  Do not use this for real 64-bit code."
128
    }
129
 
130
    cdl_interface CYGINT_HAL_MIPS_INTERRUPT_RETURN_KEEP_SR_IM {
131
        display  "Interrupt return keeps interrupt mask bits in SR"
132
        description "
133
        On some MIPS variants, the status register (SR) contains a number
134
        of interrupt mask bits (IM\[0..7\]).  Default behavior is to restore
135
        the whole SR over an interrupt.  This means that if the ISR
136
        modifies those bits, the change is lost when the interrupt returns.
137
        If this interface is implemented, changes made to the SR IM bits by
138
        an ISR will instead be preserved.
139
        Variants whose HAL_INTERRUPT_MASK() routines (et al) modify the IM
140
        bits in the SR should implement this interface to get the necessary
141
        preserving behavior."
142
    }
143
 
144
    cdl_component CYGPKG_REDBOOT_MIPS_OPTIONS {
145
        display       "Redboot for MIPS options"
146
        flavor        none
147
        no_define
148
        parent        CYGPKG_REDBOOT
149
        active_if     CYGPKG_REDBOOT
150
        description   "
151
            This option lists the target's requirements for a valid Redboot
152
            configuration."
153
 
154
        cdl_component CYGSEM_REDBOOT_MIPS_LINUX_BOOT {
155
            active_if      CYGBLD_BUILD_REDBOOT_WITH_EXEC
156
            display        "Support booting Linux via RedBoot"
157
            flavor         bool
158
            default_value  1
159
            description    "
160
               This option allows RedBoot to support booting of a Linux kernel."
161
            compile -library=libextras.a redboot_linux_exec.c
162
 
163
            cdl_option CYGDAT_REDBOOT_MIPS_LINUX_BOOT_ENTRY {
164
                display        "Default kernel entry address"
165
                flavor         data
166
                default_value  0x80100750
167
            }
168
 
169
            cdl_option CYGDAT_REDBOOT_MIPS_LINUX_BOOT_ARGV_ADDR {
170
                display        "Default argv address"
171
                flavor         data
172
                default_value  0x80080000
173
            }
174
 
175
            cdl_option CYGDAT_REDBOOT_MIPS_LINUX_BOOT_COMMAND_LINE {
176
                display        "Default COMMAND_LINE"
177
                flavor         data
178
                default_value  { "" }
179
            }
180
        }
181
    }
182
 
183
}

powered by: WebSVN 2.1.0

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