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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [rtos/] [ecos-3.0/] [packages/] [io/] [wallclock/] [current/] [cdl/] [wallclock.cdl] - Blame information for rev 825

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

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

powered by: WebSVN 2.1.0

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