1 # ====================================================================
3 # csb281_eth_drivers.cdl
5 # Ethernet drivers - support for i82559 ethernet controller
6 # on the Cogent CSB281 (PowerPC 8245) board.
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
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.
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
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.
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.
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.
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####
46 # Contributors: jskov, hmt, gthomas
49 #####DESCRIPTIONEND####
51 # ====================================================================
53 cdl_package CYGPKG_DEVS_ETH_CSB281 {
54 display "Cogent CSB281 ethernet driver"
56 Ethernet driver for Cogent CSB281 with Intel
57 i82559 Ethernet controllers attached via the PCI"
59 parent CYGPKG_IO_ETH_DRIVERS
60 active_if CYGPKG_IO_ETH_DRIVERS
61 active_if CYGPKG_HAL_POWERPC_CSB281
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"
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 *****/"
77 cdl_component CYGPKG_DEVS_ETH_CSB281_ETH0 {
78 display "CSB281 ethernet port 0 driver"
82 This option includes the ethernet device driver on the
85 implements CYGHWR_NET_DRIVERS
86 implements CYGHWR_NET_DRIVER_ETH0
87 implements CYGINT_DEVS_ETH_INTEL_I82559_REQUIRED
89 cdl_option CYGDAT_DEVS_ETH_CSB281_ETH0_NAME {
90 display "Device name for the ethernet port 0 driver"
92 default_value {"\"eth0\""}
94 This option sets the name of the ethernet device for the
98 cdl_component CYGSEM_DEVS_ETH_CSB281_ETH0_SET_ESA {
99 display "Set the ethernet station address"
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."
108 cdl_option CYGDAT_DEVS_ETH_CSB281_ETH0_ESA {
109 display "The ethernet station address"
111 default_value {"{0x00, 0xB5, 0xE0, 0xB5, 0xE0, 0x11}"}
112 description "The ethernet station address"
117 cdl_component CYGPKG_DEVS_ETH_CSB281_ETH1 {
118 display "CSB281 ethernet port 1 driver"
122 This option includes the ethernet device driver for the
123 additional i82559 devices plugged into a PCI slot."
125 implements CYGHWR_NET_DRIVERS
126 implements CYGHWR_NET_DRIVER_ETH1
127 implements CYGINT_DEVS_ETH_INTEL_I82559_REQUIRED
129 cdl_option CYGDAT_DEVS_ETH_CSB281_ETH1_NAME {
130 display "Device name for the ethernet port 1 driver"
132 default_value {"\"eth1\""}
134 This option sets the name of the ethernet device for the
138 cdl_component CYGSEM_DEVS_ETH_CSB281_ETH1_SET_ESA {
139 display "Set the ethernet station address"
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."
148 cdl_option CYGDAT_DEVS_ETH_CSB281_ETH1_ESA {
149 display "The ethernet station address"
151 default_value {"{0x00, 0xB5, 0xE0, 0xB5, 0xE0, 0x12}"}
152 description "The ethernet station address"
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"
165 active_if CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT
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."
172 cdl_component CYGPKG_DEVS_ETH_I82559_ETH_REDBOOT_HOLDS_ESA_VARS {
173 display "Build-in flash config fields for ESAs"
177 active_if CYGPKG_REDBOOT
178 active_if CYGPKG_REDBOOT_FLASH
179 active_if CYGSEM_REDBOOT_FLASH_CONFIG
180 active_if CYGPKG_REDBOOT_NETWORKING
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
192 cdl_option CYGVAR_DEVS_ETH_I82559_ETH_REDBOOT_HOLDS_ESA_ETH0 {
193 display "RedBoot manages ESA for eth0"
201 # EOF csb281_eth_drivers.cdl