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

Subversion Repositories openrisc

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

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

Line No. Rev Author Line
1 27 unneback
# ====================================================================
2
#
3
#      watchdog.cdl
4
#
5
#      eCos watchdog 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_WATCHDOG {
53
    display       "Watchdog IO device"
54
    define_header watchdog.h
55
    include_dir   cyg/io
56
    description   "
57
        The watchdog IO device allows applications to make use of a
58
        timer facility. Depending on the underlying hardware device
59
        driver, a watchdog timeout will either cause a board reset
60
        or an action routine to be called. The application must call
61
        the watchdog reset function at regular intervals, or else the
62
        device will timeout. The assumption is that the watchdog timer
63
        should never trigger unless there has been a serious fault in
64
        either the hardware or the software."
65
 
66
    compile       watchdog.cxx
67
 
68
    cdl_interface CYGINT_WATCHDOG_HW_IMPLEMENTATIONS {
69
        display       "Number of watchdog hardware implementations"
70
        no_define
71
    }
72
 
73
    cdl_interface CYGINT_WATCHDOG_IMPLEMENTATIONS {
74
        display       "Number of watchdog implementations"
75
        no_define
76
        requires      1 == CYGINT_WATCHDOG_IMPLEMENTATIONS
77
    }
78
 
79
    cdl_component CYGPKG_IO_WATCHDOG_IMPLEMENTATION {
80
        display "Watchdog implementation"
81
        flavor none
82
        no_define
83
        description "Implementations of the watchdog device."
84
 
85
        cdl_option CYGPKG_WATCHDOG_EMULATE {
86
            default_value { 0 == CYGINT_WATCHDOG_HW_IMPLEMENTATIONS }
87
            display       "Watchdog emulator"
88
            implements    CYGINT_WATCHDOG_IMPLEMENTATIONS
89
            requires      CYGVAR_KERNEL_COUNTERS_CLOCK
90
            compile       emulate.cxx
91
            description   "
92
                When this option is enabled, a watchdog device will be
93
                emulated using the kernel real-time clock."
94
        }
95
 
96
        cdl_option CYGIMP_WATCHDOG_NONE {
97
            display       "No wallclock"
98
            default_value 0
99
            implements    CYGINT_WATCHDOG_IMPLEMENTATIONS
100
            description   "Disables the watchdog."
101
        }
102
    }
103
 
104
    cdl_interface CYGINT_WATCHDOG_RESETS_ON_TIMEOUT {
105
        display       "Set if device causes a reset on timeout"
106
        no_define
107
    }
108
 
109
    cdl_option CYGSEM_WATCHDOG_RESETS_ON_TIMEOUT {
110
        display       "Set if device causes a reset on timeout"
111
        calculated    { CYGINT_WATCHDOG_RESETS_ON_TIMEOUT == 1 }
112
        description   "
113
            Some watchdog devices reset the board on timeout - for these
114
            implementations it does not make sense to register timeout
115
            actions so the code gets disabled when this option is set.
116
            When this option is not set, it is the application's
117
            responsibility to register an action handler which can force
118
            a board reset when it gets called."
119
    }
120
 
121
    cdl_option CYGPKG_IO_WATCHDOG_BUILD_INTERACTIVE_TEST {
122
        display "Build interactive watchdog test"
123
        flavor  bool
124
        no_define
125
        default_value 0
126
        description   "
127
            This option enables the building of a watchdog test
128
            which can be used to test that the board resets on
129
            watchdog timeout. This test is built separately since
130
            it only makes sense to use interactively."
131
    }
132
 
133
    cdl_component CYGPKG_IO_WATCHDOG_OPTIONS {
134
        display "Watchdog 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_WATCHDOG_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 watchdog IO device. These flags are used
150
                in addition to the set of global flags."
151
        }
152
 
153
        cdl_option CYGPKG_IO_WATCHDOG_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 watchdog IO device. These flags are removed from
161
                the set of global flags if present."
162
        }
163
 
164
        cdl_option CYGPKG_IO_WATCHDOG_TESTS {
165
            display "Watchdog tests"
166
            flavor  data
167
            no_define
168
            calculated { CYGPKG_IO_WATCHDOG_BUILD_INTERACTIVE_TEST ?
169
                         CYGSEM_WATCHDOG_RESETS_ON_TIMEOUT ? "tests/watchdog2 tests/watchdog_reset" : "tests/watchdog tests/watchdog2 tests/watchdog_reset" :
170
                         CYGSEM_WATCHDOG_RESETS_ON_TIMEOUT ? "tests/watchdog2" : "tests/watchdog tests/watchdog2" }
171
 
172
            description   "
173
                This option specifies the set of tests for the
174
                watchdog IO device."
175
        }
176
    }
177
}

powered by: WebSVN 2.1.0

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