]> git.kernelconcepts.de Git - karo-tx-redboot.git/blob - packages/devs/eth/powerpc/csb281/v2_0/cdl/csb281_eth_drivers.cdl
Initial revision
[karo-tx-redboot.git] / packages / devs / eth / powerpc / csb281 / v2_0 / cdl / csb281_eth_drivers.cdl
1 # ====================================================================
2 #
3 #      csb281_eth_drivers.cdl
4 #
5 #      Ethernet drivers - support for i82559 ethernet controller
6 #      on the Cogent CSB281 (PowerPC 8245) board.
7 #
8 # ====================================================================
9 #####ECOSGPLCOPYRIGHTBEGIN####
10 ## -------------------------------------------
11 ## This file is part of eCos, the Embedded Configurable Operating System.
12 ## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
13 ## Copyright (C) 2002 Gary Thomas
14 ##
15 ## eCos is free software; you can redistribute it and/or modify it under
16 ## the terms of the GNU General Public License as published by the Free
17 ## Software Foundation; either version 2 or (at your option) any later version.
18 ##
19 ## eCos is distributed in the hope that it will be useful, but WITHOUT ANY
20 ## WARRANTY; without even the implied warranty of MERCHANTABILITY or
21 ## FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
22 ## for more details.
23 ##
24 ## You should have received a copy of the GNU General Public License along
25 ## with eCos; if not, write to the Free Software Foundation, Inc.,
26 ## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
27 ##
28 ## As a special exception, if other files instantiate templates or use macros
29 ## or inline functions from this file, or you compile this file and link it
30 ## with other works to produce a work based on this file, this file does not
31 ## by itself cause the resulting work to be covered by the GNU General Public
32 ## License. However the source code for this file must still be made available
33 ## in accordance with section (3) of the GNU General Public License.
34 ##
35 ## This exception does not invalidate any other reasons why a work based on
36 ## this file might be covered by the GNU General Public License.
37 ##
38 ## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.
39 ## at http://sources.redhat.com/ecos/ecos-license/
40 ## -------------------------------------------
41 #####ECOSGPLCOPYRIGHTEND####
42 # ====================================================================
43 ######DESCRIPTIONBEGIN####
44 #
45 # Author(s):      jskov
46 # Contributors:   jskov, hmt, gthomas
47 # Date:           2001-02-28
48 #
49 #####DESCRIPTIONEND####
50 #
51 # ====================================================================
52
53 cdl_package CYGPKG_DEVS_ETH_CSB281 {
54     display       "Cogent CSB281 ethernet driver"
55     description   "
56         Ethernet driver for Cogent CSB281 with Intel
57         i82559 Ethernet controllers attached via the PCI"
58
59     parent        CYGPKG_IO_ETH_DRIVERS
60     active_if     CYGPKG_IO_ETH_DRIVERS
61     active_if     CYGPKG_HAL_POWERPC_CSB281
62
63     include_dir   cyg/io
64
65     # FIXME: This really belongs in the INTEL_I82559 package
66     cdl_interface CYGINT_DEVS_ETH_INTEL_I82559_REQUIRED {
67         display   "Intel i82559 ethernet driver required"
68     }
69
70     define_proc {
71         puts $::cdl_system_header "/***** ethernet driver proc output start *****/"
72         puts $::cdl_system_header "#define CYGDAT_DEVS_ETH_INTEL_I82559_INL <cyg/io/devs_eth_csb281.inl>"
73         puts $::cdl_system_header "#define CYGDAT_DEVS_ETH_INTEL_I82559_CFG <pkgconf/devs_eth_csb281.h>"
74         puts $::cdl_system_header "/*****  ethernet driver proc output end  *****/"
75     }
76
77     cdl_component CYGPKG_DEVS_ETH_CSB281_ETH0 {
78         display       "CSB281 ethernet port 0 driver"
79         flavor        bool
80         default_value 1
81         description   "
82             This option includes the ethernet device driver on the 
83             csb281 motherboard."
84
85         implements CYGHWR_NET_DRIVERS
86         implements CYGHWR_NET_DRIVER_ETH0
87         implements CYGINT_DEVS_ETH_INTEL_I82559_REQUIRED
88
89         cdl_option CYGDAT_DEVS_ETH_CSB281_ETH0_NAME {
90             display       "Device name for the ethernet port 0 driver"
91             flavor        data
92             default_value {"\"eth0\""}
93             description   "
94                 This option sets the name of the ethernet device for the
95                 ethernet port 0."
96         }
97
98         cdl_component CYGSEM_DEVS_ETH_CSB281_ETH0_SET_ESA {
99             display       "Set the ethernet station address"
100             flavor        bool
101             default_value !CYGPKG_DEVS_ETH_I82559_ETH_REDBOOT_HOLDS_ESA
102             description   "Enabling this option will allow the ethernet
103             station address to be forced to the value set by the
104             configuration.  This may be required if the hardware does
105             not include a serial EEPROM for the ESA, and if RedBoot's
106             flash configuration support is not available."
107             
108             cdl_option CYGDAT_DEVS_ETH_CSB281_ETH0_ESA {
109                 display       "The ethernet station address"
110                 flavor        data
111                 default_value {"{0x00, 0xB5, 0xE0, 0xB5, 0xE0, 0x11}"}
112                 description   "The ethernet station address"
113             }
114         }
115     }
116
117     cdl_component CYGPKG_DEVS_ETH_CSB281_ETH1 {
118         display       "CSB281 ethernet port 1 driver"
119         flavor        bool
120         default_value 0
121         description   "
122             This option includes the ethernet device driver for the
123             additional i82559 devices plugged into a PCI slot."
124
125         implements CYGHWR_NET_DRIVERS
126         implements CYGHWR_NET_DRIVER_ETH1
127         implements CYGINT_DEVS_ETH_INTEL_I82559_REQUIRED
128
129         cdl_option CYGDAT_DEVS_ETH_CSB281_ETH1_NAME {
130             display       "Device name for the ethernet port 1 driver"
131             flavor        data
132             default_value {"\"eth1\""}
133             description   "
134                 This option sets the name of the ethernet device for the
135                 ethernet port 1."
136         }
137
138         cdl_component CYGSEM_DEVS_ETH_CSB281_ETH1_SET_ESA {
139             display       "Set the ethernet station address"
140             flavor        bool
141             default_value !CYGPKG_DEVS_ETH_I82559_ETH_REDBOOT_HOLDS_ESA
142             description   "Enabling this option will allow the ethernet
143             station address to be forced to the value set by the
144             configuration.  This may be required if the hardware does
145             not include a serial EEPROM for the ESA, and if RedBoot's
146             flash configuration support is not available."
147             
148             cdl_option CYGDAT_DEVS_ETH_CSB281_ETH1_ESA {
149                 display       "The ethernet station address"
150                 flavor        data
151                 default_value {"{0x00, 0xB5, 0xE0, 0xB5, 0xE0, 0x12}"}
152                 description   "The ethernet station address"
153             }
154         }
155     }
156
157
158     # note that this option's name is NOT csb281-specific, but i82559
159     # generic - other instantiations can set these also.
160     cdl_component CYGPKG_DEVS_ETH_I82559_ETH_REDBOOT_HOLDS_ESA {
161         display         "RedBoot manages ESA initialization data"
162         flavor          bool
163         default_value   1
164
165         active_if     CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT
166
167         description   "Enabling this option will allow the ethernet
168         station address to be acquired from RedBoot's configuration data,
169         stored in flash memory.  It can be overridden individually by the
170         'Set the ethernet station address' option for each interface."
171
172         cdl_component CYGPKG_DEVS_ETH_I82559_ETH_REDBOOT_HOLDS_ESA_VARS {
173             display        "Build-in flash config fields for ESAs"
174             flavor         bool
175             default_value  1
176
177             active_if       CYGPKG_REDBOOT
178             active_if       CYGPKG_REDBOOT_FLASH
179             active_if       CYGSEM_REDBOOT_FLASH_CONFIG
180             active_if       CYGPKG_REDBOOT_NETWORKING
181
182             description "
183             This option controls the presence of RedBoot flash
184             configuration fields for the ESAs of the interfaces when you
185             are building RedBoot.  It is independent of whether RedBoot
186             itself uses the network or any particular interface; this
187             support is more for the application to use than for RedBoot
188             itself, though the application gets at the data by vector
189             calls; this option cannot be enabled outside of building
190             RedBoot."
191         
192             cdl_option CYGVAR_DEVS_ETH_I82559_ETH_REDBOOT_HOLDS_ESA_ETH0 {
193                 display         "RedBoot manages ESA for eth0"
194                 flavor          bool
195                 default_value   1
196             }
197         }
198     }
199 }
200
201 # EOF csb281_eth_drivers.cdl