URL
https://opencores.org/ocsvn/or1k/or1k/trunk
Subversion Repositories or1k
Compare Revisions
- This comparison shows the changes necessary to convert path
/or1k/trunk/ecos-2.0/packages/devs/eth/i386
- from Rev 1254 to Rev 1765
- ↔ Reverse comparison
Rev 1254 → Rev 1765
/pc/i82544/v2_0/cdl/i386_pc_i82544_eth_drivers.cdl
0,0 → 1,109
# ==================================================================== |
# |
# i386_pc_eth_drivers.cdl |
# |
# Ethernet drivers - support for i82544 ethernet controller |
# on the PC. |
# |
# ==================================================================== |
#####ECOSGPLCOPYRIGHTBEGIN#### |
## ------------------------------------------- |
## This file is part of eCos, the Embedded Configurable Operating System. |
## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
## |
## eCos is free software; you can redistribute it and/or modify it under |
## the terms of the GNU General Public License as published by the Free |
## Software Foundation; either version 2 or (at your option) any later version. |
## |
## eCos is distributed in the hope that it will be useful, but WITHOUT ANY |
## WARRANTY; without even the implied warranty of MERCHANTABILITY or |
## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
## for more details. |
## |
## You should have received a copy of the GNU General Public License along |
## with eCos; if not, write to the Free Software Foundation, Inc., |
## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
## |
## As a special exception, if other files instantiate templates or use macros |
## or inline functions from this file, or you compile this file and link it |
## with other works to produce a work based on this file, this file does not |
## by itself cause the resulting work to be covered by the GNU General Public |
## License. However the source code for this file must still be made available |
## in accordance with section (3) of the GNU General Public License. |
## |
## This exception does not invalidate any other reasons why a work based on |
## this file might be covered by the GNU General Public License. |
## |
## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
## at http://sources.redhat.com/ecos/ecos-license/ |
## ------------------------------------------- |
#####ECOSGPLCOPYRIGHTEND#### |
# ==================================================================== |
######DESCRIPTIONBEGIN#### |
# |
# Author(s): jskov, nickg |
# Contributors: jskov |
# Date: 2001-11-25 |
# |
#####DESCRIPTIONEND#### |
# |
# ==================================================================== |
|
cdl_package CYGPKG_DEVS_ETH_I386_PC_I82544 { |
display "PC board ethernet driver" |
description "Ethernet driver for PC." |
|
parent CYGPKG_IO_ETH_DRIVERS |
active_if CYGPKG_IO_ETH_DRIVERS |
active_if CYGPKG_HAL_I386_PC |
|
include_dir cyg/io |
|
# FIXME: This really belongs in the INTEL_I82544 package |
cdl_interface CYGINT_DEVS_ETH_INTEL_I82544_REQUIRED { |
display "Intel i82544 ethernet driver required" |
} |
|
define_proc { |
puts $::cdl_system_header "/***** ethernet driver proc output start *****/" |
puts $::cdl_system_header "#define CYGDAT_DEVS_ETH_INTEL_I82544_INL <cyg/io/devs_eth_i386_pc_i82544.inl>" |
puts $::cdl_system_header "#define CYGDAT_DEVS_ETH_INTEL_I82544_CFG <pkgconf/devs_eth_i386_pc_i82544.h>" |
puts $::cdl_system_header "/***** ethernet driver proc output end *****/" |
} |
|
cdl_component CYGPKG_DEVS_ETH_I386_PC_I82544_ETH0 { |
display "Ethernet port 0 driver" |
flavor bool |
default_value 1 |
|
implements CYGHWR_NET_DRIVERS |
implements CYGHWR_NET_DRIVER_ETH0 |
implements CYGINT_DEVS_ETH_INTEL_I82544_REQUIRED |
|
cdl_option CYGDAT_DEVS_ETH_I386_PC_I82544_ETH0_NAME { |
display "Device name for the ETH0 ethernet port 0 driver" |
flavor data |
default_value {"\"eth0\""} |
description " |
This option sets the name of the ethernet device for the |
i82544 ethernet port 0." |
} |
|
cdl_component CYGSEM_DEVS_ETH_I386_PC_I82544_ETH0_SET_ESA { |
display "Set the ethernet station address" |
flavor bool |
default_value 0 |
description "Enabling this option will allow the ethernet |
station address to be forced to the value set by the |
configuration. This may be required if the hardware does |
not include a serial EEPROM for the ESA." |
|
cdl_option CYGDAT_DEVS_ETH_I386_PC_I82544_ETH0_ESA { |
display "The ethernet station address" |
flavor data |
default_value {"{0x08, 0x00, 0x00, 0x00, 0x00, 0x01}"} |
description "The ethernet station address" |
} |
} |
} |
} |
/pc/i82544/v2_0/include/devs_eth_i386_pc_i82544.inl
0,0 → 1,113
//========================================================================== |
// |
// devs/eth/mips/ocelot/include/devs_eth_mips_rm7000_ocelot.inl |
// |
// PC i82544 ethernet I/O definitions. |
// |
//========================================================================== |
//####ECOSGPLCOPYRIGHTBEGIN#### |
// ------------------------------------------- |
// This file is part of eCos, the Embedded Configurable Operating System. |
// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
// |
// eCos is free software; you can redistribute it and/or modify it under |
// the terms of the GNU General Public License as published by the Free |
// Software Foundation; either version 2 or (at your option) any later version. |
// |
// eCos is distributed in the hope that it will be useful, but WITHOUT ANY |
// WARRANTY; without even the implied warranty of MERCHANTABILITY or |
// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
// for more details. |
// |
// You should have received a copy of the GNU General Public License along |
// with eCos; if not, write to the Free Software Foundation, Inc., |
// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
// |
// As a special exception, if other files instantiate templates or use macros |
// or inline functions from this file, or you compile this file and link it |
// with other works to produce a work based on this file, this file does not |
// by itself cause the resulting work to be covered by the GNU General Public |
// License. However the source code for this file must still be made available |
// in accordance with section (3) of the GNU General Public License. |
// |
// This exception does not invalidate any other reasons why a work based on |
// this file might be covered by the GNU General Public License. |
// |
// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
// at http://sources.redhat.com/ecos/ecos-license/ |
// ------------------------------------------- |
//####ECOSGPLCOPYRIGHTEND#### |
//========================================================================== |
//#####DESCRIPTIONBEGIN#### |
// |
// Author(s): jskov, nickg |
// Contributors:jskov |
// Date: 2001-11-25 |
// Purpose: PC i82544 ethernet defintions |
//####DESCRIPTIONEND#### |
//========================================================================== |
|
#include <cyg/hal/hal_intr.h> // CYGNUM_HAL_INTERRUPT_ETHR |
|
#ifdef CYGPKG_DEVS_ETH_I386_PC_I82544_ETH0 |
|
#define CYGHWR_INTEL_I82544_PCI_MEM_MAP_BASE (CYGARC_UNCACHED_ADDRESS(CYGMEM_SECTION_pci_window)) |
#define CYGHWR_INTEL_I82544_PCI_MEM_MAP_SIZE CYGMEM_SECTION_pci_window_SIZE |
|
static I82544 i82544_eth0_priv_data = { |
#ifdef CYGSEM_DEVS_ETH_I386_PC_I82544_ETH0_SET_ESA |
hardwired_esa: 1, |
mac_address: CYGDAT_DEVS_ETH_I386_PC_I82544_ETH0_ESA |
#else |
hardwired_esa: 0, |
#endif |
}; |
|
ETH_DRV_SC(i82544_sc0, |
&i82544_eth0_priv_data, // Driver specific data |
CYGDAT_DEVS_ETH_I386_PC_I82544_ETH0_NAME, // Name for device |
i82544_start, |
i82544_stop, |
i82544_ioctl, |
i82544_can_send, |
i82544_send, |
i82544_recv, |
i82544_deliver, |
i82544_poll, |
i82544_int_vector |
); |
|
NETDEVTAB_ENTRY(i82544_netdev0, |
"i82544_" CYGDAT_DEVS_ETH_I386_PC_I82544_ETH0_NAME, |
i82544_init, |
&i82544_sc0); |
|
#endif // CYGPKG_DEVS_ETH_I386_PC_I82544_ETH0 |
|
|
// These arrays are used for sanity checking of pointers |
I82544 * |
i82544_priv_array[CYGNUM_DEVS_ETH_INTEL_I82544_DEV_COUNT] = { |
#ifdef CYGPKG_DEVS_ETH_I386_PC_I82544_ETH0 |
&i82544_eth0_priv_data, |
#endif |
}; |
|
#ifdef CYGDBG_USE_ASSERTS |
// These are only used when assertions are enabled |
cyg_netdevtab_entry_t * |
i82544_netdev_array[CYGNUM_DEVS_ETH_INTEL_I82544_DEV_COUNT] = { |
#ifdef CYGPKG_DEVS_ETH_I386_PC_I82544_ETH0 |
&i82544_netdev0, |
#endif |
}; |
|
struct eth_drv_sc * |
i82544_sc_array[CYGNUM_DEVS_ETH_INTEL_I82544_DEV_COUNT] = { |
#ifdef CYGPKG_DEVS_ETH_I386_PC_I82544_ETH0 |
&i82544_sc0, |
#endif |
}; |
#endif // CYGDBG_USE_ASSERTS |
|
// EOF devs_eth_i386_pc_i82544.inl |
/pc/i82544/v2_0/ChangeLog
0,0 → 1,41
2001-11-27 Nick Garnett <nickg@redhat.com> |
|
* include/devs_eth_i386_pc_i82544.inl: |
* cdl/i386_pc_i82544_eth_drivers.cdl: |
Platform specific configury and definitions to use the generic |
i82543/i82544 driver for PC platforms. |
|
//=========================================================================== |
//####ECOSGPLCOPYRIGHTBEGIN#### |
// ------------------------------------------- |
// This file is part of eCos, the Embedded Configurable Operating System. |
// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
// |
// eCos is free software; you can redistribute it and/or modify it under |
// the terms of the GNU General Public License as published by the Free |
// Software Foundation; either version 2 or (at your option) any later version. |
// |
// eCos is distributed in the hope that it will be useful, but WITHOUT ANY |
// WARRANTY; without even the implied warranty of MERCHANTABILITY or |
// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
// for more details. |
// |
// You should have received a copy of the GNU General Public License along |
// with eCos; if not, write to the Free Software Foundation, Inc., |
// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
// |
// As a special exception, if other files instantiate templates or use macros |
// or inline functions from this file, or you compile this file and link it |
// with other works to produce a work based on this file, this file does not |
// by itself cause the resulting work to be covered by the GNU General Public |
// License. However the source code for this file must still be made available |
// in accordance with section (3) of the GNU General Public License. |
// |
// This exception does not invalidate any other reasons why a work based on |
// this file might be covered by the GNU General Public License. |
// |
// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
// at http://sources.redhat.com/ecos/ecos-license/ |
// ------------------------------------------- |
//####ECOSGPLCOPYRIGHTEND#### |
//=========================================================================== |
/pc/i82559/v2_0/cdl/i386_pc_i82559_eth_drivers.cdl
0,0 → 1,109
# ==================================================================== |
# |
# i386_pc_eth_drivers.cdl |
# |
# Ethernet drivers - support for i82559 ethernet controller |
# on the PC. |
# |
# ==================================================================== |
#####ECOSGPLCOPYRIGHTBEGIN#### |
## ------------------------------------------- |
## This file is part of eCos, the Embedded Configurable Operating System. |
## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
## |
## eCos is free software; you can redistribute it and/or modify it under |
## the terms of the GNU General Public License as published by the Free |
## Software Foundation; either version 2 or (at your option) any later version. |
## |
## eCos is distributed in the hope that it will be useful, but WITHOUT ANY |
## WARRANTY; without even the implied warranty of MERCHANTABILITY or |
## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
## for more details. |
## |
## You should have received a copy of the GNU General Public License along |
## with eCos; if not, write to the Free Software Foundation, Inc., |
## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
## |
## As a special exception, if other files instantiate templates or use macros |
## or inline functions from this file, or you compile this file and link it |
## with other works to produce a work based on this file, this file does not |
## by itself cause the resulting work to be covered by the GNU General Public |
## License. However the source code for this file must still be made available |
## in accordance with section (3) of the GNU General Public License. |
## |
## This exception does not invalidate any other reasons why a work based on |
## this file might be covered by the GNU General Public License. |
## |
## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
## at http://sources.redhat.com/ecos/ecos-license/ |
## ------------------------------------------- |
#####ECOSGPLCOPYRIGHTEND#### |
# ==================================================================== |
######DESCRIPTIONBEGIN#### |
# |
# Author(s): jskov |
# Contributors: jskov |
# Date: 2001-01-25 |
# |
#####DESCRIPTIONEND#### |
# |
# ==================================================================== |
|
cdl_package CYGPKG_DEVS_ETH_I386_PC_I82559 { |
display "PC board ethernet driver" |
description "Ethernet driver for PC." |
|
parent CYGPKG_IO_ETH_DRIVERS |
active_if CYGPKG_IO_ETH_DRIVERS |
active_if CYGPKG_HAL_I386_PC |
|
include_dir cyg/io |
|
# FIXME: This really belongs in the INTEL_I82559 package |
cdl_interface CYGINT_DEVS_ETH_INTEL_I82559_REQUIRED { |
display "Intel i82559 ethernet driver required" |
} |
|
define_proc { |
puts $::cdl_system_header "/***** ethernet driver proc output start *****/" |
puts $::cdl_system_header "#define CYGDAT_DEVS_ETH_INTEL_I82559_INL <cyg/io/devs_eth_i386_pc_i82559.inl>" |
puts $::cdl_system_header "#define CYGDAT_DEVS_ETH_INTEL_I82559_CFG <pkgconf/devs_eth_i386_pc_i82559.h>" |
puts $::cdl_system_header "/***** ethernet driver proc output end *****/" |
} |
|
cdl_component CYGPKG_DEVS_ETH_I386_PC_I82559_ETH0 { |
display "Ethernet port 0 driver" |
flavor bool |
default_value 1 |
|
implements CYGHWR_NET_DRIVERS |
implements CYGHWR_NET_DRIVER_ETH0 |
implements CYGINT_DEVS_ETH_INTEL_I82559_REQUIRED |
|
cdl_option CYGDAT_DEVS_ETH_I386_PC_I82559_ETH0_NAME { |
display "Device name for the ETH0 ethernet port 0 driver" |
flavor data |
default_value {"\"eth0\""} |
description " |
This option sets the name of the ethernet device for the |
i82559 ethernet port 0." |
} |
|
cdl_component CYGSEM_DEVS_ETH_I386_PC_I82559_ETH0_SET_ESA { |
display "Set the ethernet station address" |
flavor bool |
default_value 0 |
description "Enabling this option will allow the ethernet |
station address to be forced to the value set by the |
configuration. This may be required if the hardware does |
not include a serial EEPROM for the ESA." |
|
cdl_option CYGDAT_DEVS_ETH_I386_PC_I82559_ETH0_ESA { |
display "The ethernet station address" |
flavor data |
default_value {"{0x08, 0x00, 0x00, 0x00, 0x00, 0x01}"} |
description "The ethernet station address" |
} |
} |
} |
} |
/pc/i82559/v2_0/include/devs_eth_i386_pc_i82559.inl
0,0 → 1,113
//========================================================================== |
// |
// devs/eth/mips/ocelot/include/devs_eth_mips_rm7000_ocelot.inl |
// |
// PC i82559 ethernet I/O definitions. |
// |
//========================================================================== |
//####ECOSGPLCOPYRIGHTBEGIN#### |
// ------------------------------------------- |
// This file is part of eCos, the Embedded Configurable Operating System. |
// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
// |
// eCos is free software; you can redistribute it and/or modify it under |
// the terms of the GNU General Public License as published by the Free |
// Software Foundation; either version 2 or (at your option) any later version. |
// |
// eCos is distributed in the hope that it will be useful, but WITHOUT ANY |
// WARRANTY; without even the implied warranty of MERCHANTABILITY or |
// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
// for more details. |
// |
// You should have received a copy of the GNU General Public License along |
// with eCos; if not, write to the Free Software Foundation, Inc., |
// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
// |
// As a special exception, if other files instantiate templates or use macros |
// or inline functions from this file, or you compile this file and link it |
// with other works to produce a work based on this file, this file does not |
// by itself cause the resulting work to be covered by the GNU General Public |
// License. However the source code for this file must still be made available |
// in accordance with section (3) of the GNU General Public License. |
// |
// This exception does not invalidate any other reasons why a work based on |
// this file might be covered by the GNU General Public License. |
// |
// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
// at http://sources.redhat.com/ecos/ecos-license/ |
// ------------------------------------------- |
//####ECOSGPLCOPYRIGHTEND#### |
//========================================================================== |
//#####DESCRIPTIONBEGIN#### |
// |
// Author(s): jskov |
// Contributors:jskov |
// Date: 2001-01-25 |
// Purpose: PC i82559 ethernet defintions |
//####DESCRIPTIONEND#### |
//========================================================================== |
|
#include <cyg/hal/hal_intr.h> // CYGNUM_HAL_INTERRUPT_ETHR |
|
#ifdef CYGPKG_DEVS_ETH_I386_PC_I82559_ETH0 |
|
#define CYGHWR_INTEL_I82559_PCI_MEM_MAP_BASE (CYGARC_UNCACHED_ADDRESS(CYGMEM_SECTION_pci_window)) |
#define CYGHWR_INTEL_I82559_PCI_MEM_MAP_SIZE CYGMEM_SECTION_pci_window_SIZE |
|
static I82559 i82559_eth0_priv_data = { |
#ifdef CYGSEM_DEVS_ETH_I386_PC_I82559_ETH0_SET_ESA |
hardwired_esa: 1, |
mac_address: CYGDAT_DEVS_ETH_I386_PC_I82559_ETH0_ESA |
#else |
hardwired_esa: 0, |
#endif |
}; |
|
ETH_DRV_SC(i82559_sc0, |
&i82559_eth0_priv_data, // Driver specific data |
CYGDAT_DEVS_ETH_I386_PC_I82559_ETH0_NAME, // Name for device |
i82559_start, |
i82559_stop, |
i82559_ioctl, |
i82559_can_send, |
i82559_send, |
i82559_recv, |
i82559_deliver, |
i82559_poll, |
i82559_int_vector |
); |
|
NETDEVTAB_ENTRY(i82559_netdev0, |
"i82559_" CYGDAT_DEVS_ETH_I386_PC_I82559_ETH0_NAME, |
i82559_init, |
&i82559_sc0); |
|
#endif // CYGPKG_DEVS_ETH_I386_PC_I82559_ETH0 |
|
|
// These arrays are used for sanity checking of pointers |
I82559 * |
i82559_priv_array[CYGNUM_DEVS_ETH_INTEL_I82559_DEV_COUNT] = { |
#ifdef CYGPKG_DEVS_ETH_I386_PC_I82559_ETH0 |
&i82559_eth0_priv_data, |
#endif |
}; |
|
#ifdef CYGDBG_USE_ASSERTS |
// These are only used when assertions are enabled |
cyg_netdevtab_entry_t * |
i82559_netdev_array[CYGNUM_DEVS_ETH_INTEL_I82559_DEV_COUNT] = { |
#ifdef CYGPKG_DEVS_ETH_I386_PC_I82559_ETH0 |
&i82559_netdev0, |
#endif |
}; |
|
struct eth_drv_sc * |
i82559_sc_array[CYGNUM_DEVS_ETH_INTEL_I82559_DEV_COUNT] = { |
#ifdef CYGPKG_DEVS_ETH_I386_PC_I82559_ETH0 |
&i82559_sc0, |
#endif |
}; |
#endif // CYGDBG_USE_ASSERTS |
|
// EOF devs_eth_i386_pc_i82559.inl |
/pc/i82559/v2_0/ChangeLog
0,0 → 1,46
2001-04-26 Nick Garnett <nickg@cygnus.co.uk> |
|
* cdl/i386_pc_i82559_eth_drivers.cdl: Fixed configuration to fetch |
MAC address from EEPROM, as it should. |
|
2001-03-06 Nick Garnett <nickg@cygnus.co.uk> |
|
* include/devs_eth_i386_pc_i82559.inl: |
* cdl/i386_pc_i82559_eth_drivers.cdl: |
Platform specific configury and definitions to use the generic |
i82559 driver for PC platforms. |
|
//=========================================================================== |
//####ECOSGPLCOPYRIGHTBEGIN#### |
// ------------------------------------------- |
// This file is part of eCos, the Embedded Configurable Operating System. |
// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
// |
// eCos is free software; you can redistribute it and/or modify it under |
// the terms of the GNU General Public License as published by the Free |
// Software Foundation; either version 2 or (at your option) any later version. |
// |
// eCos is distributed in the hope that it will be useful, but WITHOUT ANY |
// WARRANTY; without even the implied warranty of MERCHANTABILITY or |
// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
// for more details. |
// |
// You should have received a copy of the GNU General Public License along |
// with eCos; if not, write to the Free Software Foundation, Inc., |
// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
// |
// As a special exception, if other files instantiate templates or use macros |
// or inline functions from this file, or you compile this file and link it |
// with other works to produce a work based on this file, this file does not |
// by itself cause the resulting work to be covered by the GNU General Public |
// License. However the source code for this file must still be made available |
// in accordance with section (3) of the GNU General Public License. |
// |
// This exception does not invalidate any other reasons why a work based on |
// this file might be covered by the GNU General Public License. |
// |
// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
// at http://sources.redhat.com/ecos/ecos-license/ |
// ------------------------------------------- |
//####ECOSGPLCOPYRIGHTEND#### |
//=========================================================================== |