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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [rtos/] [ecos-3.0/] [packages/] [io/] [eth/] [current/] [cdl/] [eth_drivers.cdl] - Blame information for rev 786

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 786 skrzyp
# ====================================================================
2
#
3
#      eth_drivers.cdl
4
#
5
#      Ethernet drivers - platform independent support
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, 2009 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):      gthomas
43
# Original data:  gthomas
44
# Contributors:
45
# Date:           2000-01-25
46
#
47
#####DESCRIPTIONEND####
48
#
49
# ====================================================================
50
 
51
cdl_package CYGPKG_IO_ETH_DRIVERS {
52
    display       "Common ethernet support"
53
    include_dir   cyg/io/eth
54
    parent        CYGPKG_IO
55
    description   "Platform independent ethernet drivers"
56
    doc           ref/io-eth-drv-generic.html
57
 
58
    implements    CYGPKG_NET_DRIVER_FRAMEWORK
59
 
60
    cdl_interface CYGHWR_NET_DRIVERS {
61
        display "Network drivers"
62
    }
63
 
64
    cdl_interface     CYGINT_IO_ETH_MULTICAST {
65
        display   "Driver supports multicast addressing"
66
        description "
67
          This interface defines whether or not a driver can handle
68
          requests for multicast addressing."
69
    }
70
 
71
    cdl_component CYGDBG_IO_ETH_DRIVERS_DEBUG {
72
        display          "Support printing driver debug information"
73
        flavor           bool
74
        default_value    1
75
        description      "
76
           Selecting this option will include code to allow the driver to
77
           print lots of information on diagnostic output such as full
78
           packet dumps."
79
 
80
        cdl_option    CYGDBG_IO_ETH_DRIVERS_DEBUG_VERBOSITY {
81
            display       "Driver debug output verbosity"
82
            flavor        data
83
            default_value 0
84
            description   "
85
                The value of this option indicates the default verbosity
86
                level of debugging output. 0 means no debugging output
87
                is made by default. Higher values indicate higher verbosity.
88
                The verbosity level may also be changed at run time by
89
                changing the variable cyg_io_eth_net_debug."
90
        }
91
    }
92
 
93
    cdl_option CYGNUM_IO_ETH_DRIVERS_SG_LIST_SIZE {
94
      display       "Size of scatter-gather I/O lists"
95
      flavor        data
96
      default_value 32
97
      description   "
98
         A scatter-gather list is used to pass requests to/from
99
         the physical device driver.  This list can typically be
100
         small, as the data is normally already packed into reasonable
101
         chunks."
102
    }
103
 
104
    cdl_component CYGPKG_IO_ETH_DRIVERS_NET {
105
        display       "Support for standard eCos TCP/IP stack."
106
        flavor        bool
107
        active_if     CYGPKG_NET
108
        requires      CYGINT_ISO_STRING_STRFUNCS
109
        implements    CYGINT_IO_ETH_INT_SUPPORT_REQUIRED
110
        default_value 1
111
        compile       net/eth_drv.c
112
 
113
        cdl_component CYGPKG_IO_ETH_DRIVERS_WARN_NO_MBUFS {
114
            display     "Warn when there are no more mbufs"
115
            flavor      bool
116
            default_value 1
117
            description "
118
                Warnings about running out of mbufs are printed to the
119
                diagnostic output channel via diag_printf() if this option
120
                is enabled.  Mbufs are the network stack's basic dynamic
121
                memory objects that hold all packets in transit; running
122
                out is bad for performance but not fatal, not a crash.
123
                You might want to turn off the warnings to preserve realtime
124
                properties of the system even in extremis."
125
        }
126
 
127
        cdl_component CYGPKG_IO_ETH_DRIVERS_SIMULATED_FAILURES {
128
            display             "Simulate network failures for testing"
129
            flavor              bool
130
            default_value       0
131
            description "
132
                This package contains a suite of simulated failure modes
133
                for the ethernet device layer, including dropping and/or
134
                corrupting received packets, dropping packets queued for
135
                transmission, and simulating a complete network break.
136
                It requires the kernel as a source of time information."
137
 
138
            cdl_option CYGPKG_IO_ETH_DRIVERS_SIMULATE_DROP_RX {
139
                display "Drop incoming packets (percentage)"
140
                flavor  booldata
141
                legal_values 10 50 80
142
                default_value 10
143
            }
144
 
145
            cdl_option CYGPKG_IO_ETH_DRIVERS_SIMULATE_CORRUPT_RX {
146
                display "Corrupt incoming packets (percentage)"
147
                flavor  booldata
148
                legal_values 10 50 80
149
                default_value 10
150
            }
151
 
152
            cdl_option CYGPKG_IO_ETH_DRIVERS_SIMULATE_DROP_TX {
153
                display "Drop outgoing packets (percentage)"
154
                flavor  booldata
155
                legal_values 10 50 80
156
                default_value 10
157
            }
158
 
159
            cdl_option CYGPKG_IO_ETH_DRIVERS_SIMULATE_LINE_CUT {
160
                display "Simulate a line cut from time to time"
161
                flavor  bool
162
                default_value 0
163
                description "
164
                This option causes the system to drop all packets for a
165
                short random period (10s of seconds), and then act
166
                normally for up to 4 times that long.  This simulates your
167
                sysadmin fiddling with plugs in the network switch
168
                cupboard."
169
            }
170
        }
171
    }
172
 
173
    cdl_component CYGPKG_IO_ETH_DRIVERS_STAND_ALONE {
174
        display       "Support for stand-alone network stack."
175
        flavor        bool
176
        active_if     { !CYGPKG_NET && !CYGPKG_NET_LWIP }
177
        requires      CYGINT_ISO_STRING_MEMFUNCS
178
        default_value 1
179
        compile       stand_alone/eth_drv.c
180
 
181
        cdl_option CYGSEM_IO_ETH_DRIVERS_PASS_PACKETS {
182
            display          "Pass packets to an alternate stack"
183
            flavor           bool
184
            default_value    { 0 != CYGPKG_REDBOOT_NETWORKING }
185
            description      "
186
                 Define this to allow packets seen by this layer to be
187
                 passed on to the previous logical layer, i.e. when
188
                 stand-alone processing replaces system (eCos) processing."
189
        }
190
 
191
        cdl_option CYGNUM_IO_ETH_DRIVERS_NUM_PKT {
192
            display          "Number of \[network\] buffers"
193
            flavor           data
194
            default_value    4
195
            legal_values     2 to 32
196
            description      "
197
               This option is used to allocate space to buffer incoming network
198
               packets.  These buffers are used to hold data until they can be
199
               logically processed by higher layers."
200
        }
201
 
202
        cdl_option CYGSEM_IO_ETH_DRIVERS_WARN {
203
            display          "Show driver warnings"
204
            active_if        CYGPKG_REDBOOT
205
            flavor           bool
206
            default_value    0
207
            description      "
208
               Selecting this option will allows the stand-alone ethernet driver
209
               to display warnings on the system console when incoming network
210
               packets are being discarded due to lack of buffer space."
211
        }
212
    }
213
 
214
    cdl_component CYGPKG_IO_ETH_DRIVERS_LWIP {
215
        display       "Support for lwIP network stack."
216
        flavor        bool
217
        requires      !CYGPKG_NET
218
        active_if     CYGPKG_NET_LWIP
219
        default_value 1
220
        implements    CYGINT_IO_ETH_INT_SUPPORT_REQUIRED
221
        compile       lwip/eth_drv.c
222
    }
223
 
224
    cdl_interface CYGINT_IO_ETH_INT_SUPPORT_REQUIRED {
225
        display       "Interrupt support required"
226
        flavor        booldata
227
        description   "This interface is used to indicate to the low
228
                       level device drivers that interrupt driven operation
229
                       is required by higher layers."
230
    }
231
 
232
    cdl_component CYGPKG_IO_ETH_DRIVERS_OPTIONS {
233
        display "Common ethernet support build options"
234
        flavor  none
235
        no_define
236
 
237
        cdl_option CYGPKG_IO_ETH_DRIVERS_CFLAGS_ADD {
238
            display "Additional compiler flags"
239
            flavor  data
240
            no_define
241
            default_value { "-D_KERNEL -D__ECOS" }
242
            description   "
243
                This option modifies the set of compiler flags for
244
                building the common ethernet support package. These flags are used in addition
245
                to the set of global flags."
246
        }
247
 
248
        cdl_option CYGPKG_IO_ETH_DRIVERS_CFLAGS_REMOVE {
249
            display "Suppressed compiler flags"
250
            flavor  data
251
            no_define
252
            default_value { "" }
253
            description   "
254
                This option modifies the set of compiler flags for
255
                building the common ethernet support package. These flags
256
                are removed from the set of global flags if present."
257
        }
258
 
259
    }
260
}
261
 
262
# EOF eth_drivers.cdl

powered by: WebSVN 2.1.0

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