]> git.karo-electronics.de Git - karo-tx-redboot.git/blob - packages/io/usb/eth/slave/v2_0/cdl/usbs_eth.cdl
Initial revision
[karo-tx-redboot.git] / packages / io / usb / eth / slave / v2_0 / cdl / usbs_eth.cdl
1 # ====================================================================
2 #
3 #      usbs_eth.cdl
4 #
5 #      USB slave-side ethernet package.
6 #
7 # ====================================================================
8 #####ECOSGPLCOPYRIGHTBEGIN####
9 ## -------------------------------------------
10 ## This file is part of eCos, the Embedded Configurable Operating System.
11 ## Copyright (C) 2003 Bart Veer
12 ## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
13 ##
14 ## eCos is free software; you can redistribute it and/or modify it under
15 ## the terms of the GNU General Public License as published by the Free
16 ## Software Foundation; either version 2 or (at your option) any later version.
17 ##
18 ## eCos is distributed in the hope that it will be useful, but WITHOUT ANY
19 ## 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 along
24 ## with eCos; if not, write to the Free Software Foundation, Inc.,
25 ## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
26 ##
27 ## As a special exception, if other files instantiate templates or use macros
28 ## or inline functions from this file, or you compile this file and link it
29 ## with other works to produce a work based on this file, this file does not
30 ## by itself cause the resulting work to be covered by the GNU General Public
31 ## License. However the source code for this file must still be made available
32 ## in accordance with section (3) of the GNU General Public License.
33 ##
34 ## This exception does not invalidate any other reasons why a work based on
35 ## this file might be covered by the GNU General Public License.
36 ##
37 ## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.
38 ## at http://sources.redhat.com/ecos/ecos-license/
39 ## -------------------------------------------
40 #####ECOSGPLCOPYRIGHTEND####
41 # ====================================================================
42 ######DESCRIPTIONBEGIN####
43 #
44 # Author(s):      bartv
45 # Original data:  bartv
46 # Contributors:
47 # Date:           2000-10-04
48 #
49 #####DESCRIPTIONEND####
50 # ====================================================================
51
52 cdl_package CYGPKG_IO_USB_SLAVE_ETH {
53     display     "USB slave ethernet support"
54     include_dir "cyg/io/usb"
55     parent      CYGPKG_IO_USB_SLAVE
56     requires    { CYGHWR_IO_USB_SLAVE_OUT_ENDPOINTS >= 1 }
57     requires    { CYGHWR_IO_USB_SLAVE_IN_ENDPOINTS >= 1 }
58     compile     usbseth.c
59     implements  CYGINT_IO_USB_SLAVE_CLIENTS
60     doc         ref/io-usb-slave-eth.html
61     
62     description "
63         The USB slave ethernet package supports the development
64         of USB peripherals which provide an ethernet service to
65         the host machine. Such a peripheral could be a simple
66         USB-ethernet converter, or it could be rather more
67         complicated internally."
68
69     cdl_component CYGPKG_USBS_ETHDRV {
70         display         "Provide a driver for a TCP/IP stack."
71         requires        CYGPKG_IO_ETH_DRIVERS
72         implements      CYGHWR_NET_DRIVERS
73         default_value   CYGPKG_NET
74         compile         -library=libextras.a usbsethdrv.c
75
76         description "
77             The primary purpose of USB slave ethernet support is to provide
78             an ethernet service to the USB host. This is very different
79             from a conventional network driver which provides a service
80             to a TCP/IP stack running inside the peripheral. If this
81             component is enabled then the USB-ethernet code will implement
82             an eCos network driver, thus supporting both a host-side TCP/IP
83             stack and an eCos stack. This raises issues such as enabling
84             the bridge code in the stack, and the package documentation
85             should be consulted for further information."
86
87         cdl_option CYGFUN_USBS_ETHDRV_STATISTICS {
88             display       "Maintain traffic statistics"
89             flavor        bool
90             default_value CYGPKG_SNMPAGENT
91             description "
92                 The USB network device driver can maintain some statistics
93                 about traffic, for example the number of incoming and
94                 outgoing packets. These statistics are intended mainly
95                 for SNMP agent software."
96         }
97
98         cdl_option CYGDAT_USBS_ETHDRV_NAME {
99             display       "Name to use for this network device"
100             flavor        data
101             default_value { (1 == CYGHWR_NET_DRIVERS) ? "\"eth0\"" : "\"eth1\"" }
102             description "
103                 The name of this network device for control purposes.
104             "
105         }
106
107         cdl_option CYGPRI_USBS_ETHDRV_ETH0 {
108             display       "Enable/disable generic eth0 configury"
109             flavor        bool
110             calculated    { "\"eth0\"" == CYGDAT_USBS_ETHDRV_NAME }
111             implements    CYGHWR_NET_DRIVER_ETH0
112             requires      !CYGHWR_NET_DRIVER_ETH0_BOOTP
113         }
114         
115         cdl_option CYGPRI_USBS_ETHDRV_ETH1 {
116             display       "Enable/disable generic eth1 configury"
117             flavor        bool
118             calculated    { "\"eth1\"" == CYGDAT_USBS_ETHDRV_NAME }
119             implements    CYGHWR_NET_DRIVER_ETH1
120             requires      !CYGHWR_NET_DRIVER_ETH1_BOOTP
121         }
122     }
123     
124     cdl_component CYGPKG_IO_USB_SLAVE_ETH_OPTIONS {
125         display     "Build options"
126         flavor      none
127
128         description "
129             Package-specific build options including control over compiler
130             flags used only in building this package."
131
132         cdl_option CYGPKG_IO_USB_SLAVE_ETH_CFLAGS_ADD {
133             display "Additional compiler flags"
134             flavor  data
135             no_define
136             default_value { "-D_KERNEL -D__ECOS" }
137             description   "
138                 This option modifies the set of compiler flags for
139                 building this package. These flags are used in addition
140                 to the set of global flags."
141         }
142         cdl_option CYGPKG_IO_USB_SLAVE_ETH_CFLAGS_REMOVE {
143             display "Suppressed 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 this package. These flags are removed from
150                 the set of global flags if present."
151         }
152     }
153 }