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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [rtos/] [ecos-2.0/] [packages/] [io/] [wallclock/] [v2_0/] [cdl/] [wallclock.cdl] - Blame information for rev 174

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 27 unneback
# ====================================================================
2
#
3
#      wallclock.cdl
4
#
5
#      eCos wallclock 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:  nickg
45
# Contributors:
46
# Date:           1999-07-13
47
#
48
#####DESCRIPTIONEND####
49
#
50
# ====================================================================
51
 
52
cdl_package CYGPKG_IO_WALLCLOCK {
53
    display       "Wallclock device"
54
    include_dir   cyg/io
55
 
56
    define_header wallclock.h
57
    description   "
58
        The wallclock device provides real time stamps, as opposed
59
        to the eCos kernel timers which typically just count the
60
        number of clock ticks since the hardware was powered up.
61
        Depending on the target platform this device may involve
62
        interacting with a suitable clock chip, or it may be
63
        emulated by using the kernel timers."
64
 
65
    compile       wallclock.cxx
66
 
67
    cdl_interface CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS {
68
        display       "Number of wallclock hardware implementations"
69
        no_define
70
    }
71
 
72
    cdl_interface CYGINT_WALLCLOCK_IMPLEMENTATIONS {
73
        display       "Number of wallclock implementations"
74
        no_define
75
        requires      1 == CYGINT_WALLCLOCK_IMPLEMENTATIONS
76
    }
77
 
78
    cdl_interface CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED {
79
        display       "Wallclock driver supports set/get mode"
80
        no_define
81
    }
82
 
83
    cdl_option CYGSEM_WALLCLOCK_MODE {
84
        display       "Wallclock mode"
85
        flavor        data
86
        legal_values  { "init_get" "set_get" }
87
        default_value { CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED ? \
88
                        "set_get" : "init_get" }
89
        requires      { CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED || \
90
                        CYGSEM_WALLCLOCK_MODE == "init_get" }
91
        no_define
92
        description   "
93
            The wallclock driver can be used in one of two
94
            modes. Set/get mode allows time to be kept during power
95
            off (assuming there's a battery backed clock). Init/get
96
            mode is slightly smaller and can be used when there is no
97
            battery backed clock - in this mode time 0 is the time of
98
            the board power up."
99
    }
100
 
101
    cdl_option CYGSEM_WALLCLOCK_SET_GET_MODE {
102
        display     "Wallclock set/get mode"
103
        calculated  { CYGSEM_WALLCLOCK_MODE == "set_get" ? 1 : 0 }
104
    }
105
 
106
    cdl_component CYGPKG_IO_WALLCLOCK_IMPLEMENTATION {
107
        display "Wallclock implementation"
108
        flavor none
109
        no_define
110
        description "Implementations of the wallclock device."
111
 
112
        cdl_option CYGPKG_WALLCLOCK_EMULATE {
113
            default_value { 0 == CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS }
114
            display       "Wallclock emulator"
115
            implements    CYGINT_WALLCLOCK_IMPLEMENTATIONS
116
            compile       emulate.cxx
117
            requires      CYGPKG_KERNEL
118
            define_proc {
119
                puts $::cdl_header "#undef CYGSEM_WALLCLOCK_SET_GET_MODE"
120
            }
121
            description   "
122
                When this option is enabled, a wallclock device will be
123
                emulated using the kernel real-time clock."
124
        }
125
 
126
        cdl_option CYGIMP_WALLCLOCK_NONE {
127
            display       "No wallclock"
128
            default_value { !CYGPKG_KERNEL && 0 == CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS }
129
            implements    CYGINT_WALLCLOCK_IMPLEMENTATIONS
130
            description   "Disables the wallclock."
131
        }
132
    }
133
 
134
    cdl_component CYGPKG_IO_WALLCLOCK_OPTIONS {
135
        display "Wallclock build options"
136
        flavor  none
137
        description   "
138
            Package specific build options including control over
139
            compiler flags used only in building this package,
140
            and details of which tests are built."
141
 
142
 
143
        cdl_option CYGPKG_IO_WALLCLOCK_CFLAGS_ADD {
144
            display "Additional compiler flags"
145
            flavor  data
146
            no_define
147
            default_value { "" }
148
            description   "
149
                This option modifies the set of compiler flags for
150
                building the wallclock device. These flags are used in addition
151
                to the set of global flags."
152
        }
153
 
154
        cdl_option CYGPKG_IO_WALLCLOCK_CFLAGS_REMOVE {
155
            display "Suppressed compiler flags"
156
            flavor  data
157
            no_define
158
            default_value { "" }
159
            description   "
160
                This option modifies the set of compiler flags for
161
                building the wallclock device. These flags are removed from
162
                the set of global flags if present."
163
        }
164
 
165
        cdl_option CYGPKG_IO_WALLCLOCK_TESTS {
166
            display "Wallclock tests"
167
            flavor  data
168
            no_define
169
            calculated { CYGPKG_KERNEL ? "tests/wallclock tests/wallclock2" : "" }
170
            description   "
171
                This option specifies the set of tests for the
172
                wallclock device."
173
        }
174
    }
175
}

powered by: WebSVN 2.1.0

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