This is the mail archive of the
ecos-patches@sources.redhat.com
mailing list for the eCos project.
Multiple rltk8139 interfaces in one pc
- From: Bob Koninckx <bob dot koninckx at fmtc dot be>
- To: ecos-patches at sources dot redhat dot com
- Date: Fri, 04 Mar 2005 16:43:32 +0100
- Subject: Multiple rltk8139 interfaces in one pc
- Organization: FMTC
- Reply-to: bob dot koninckx at fmtc dot be
Hi,
Patch in attach adds support for a second rltk8139 interface on the pc
platform.
Bob
Index: devs/eth/i386/pc/rltk8139/current/ChangeLog
===================================================================
RCS file: /cvs/ecos/ecos/packages/devs/eth/i386/pc/rltk8139/current/ChangeLog,v
retrieving revision 1.1
diff -u -5 -r1.1 ChangeLog
--- devs/eth/i386/pc/rltk8139/current/ChangeLog 13 Nov 2003 13:39:08 -0000 1.1
+++ devs/eth/i386/pc/rltk8139/current/ChangeLog 4 Mar 2005 15:40:45 -0000
@@ -1,5 +1,9 @@
+2005-03-03 Bob Koninckx <bob.koninckx@fmtc.be>
+ * include/devs_eth_i386_pc_rltk8139.inl:
+ Added support for a second rltl8139 interface
+
2003-07-09 Eric Doenges <Eric.Doenges@DynaPel.com>
* include/devs_eth_i386_pc_rltk8139.inl:
* cdl/i386_pc_rltk8139_eth_drivers.cdl:
New package - RTL8139 PCI ethernet card driver
Index: devs/eth/i386/pc/rltk8139/current/cdl/i386_pc_rltk8139_eth_drivers.cdl
===================================================================
RCS file: /cvs/ecos/ecos/packages/devs/eth/i386/pc/rltk8139/current/cdl/i386_pc_rltk8139_eth_drivers.cdl,v
retrieving revision 1.1
diff -u -5 -r1.1 i386_pc_rltk8139_eth_drivers.cdl
--- devs/eth/i386/pc/rltk8139/current/cdl/i386_pc_rltk8139_eth_drivers.cdl 13 Nov 2003 13:39:08 -0000 1.1
+++ devs/eth/i386/pc/rltk8139/current/cdl/i386_pc_rltk8139_eth_drivers.cdl 4 Mar 2005 15:40:45 -0000
@@ -87,6 +87,25 @@
description "
This option sets the name of the ethernet device for the
RealTek 8139 ethernet port 0."
}
}
+
+ cdl_component CYGPKG_DEVS_ETH_I386_PC_RLTK8139_ETH1 {
+ display "Ethernet port 1 driver"
+ flavor bool
+ default_value 0
+
+ implements CYGHWR_NET_DRIVERS
+ implements CYGHWR_NET_DRIVER_ETH1
+ implements CYGINT_DEVS_ETH_RLTK_8139_REQUIRED
+
+ cdl_option CYGDAT_DEVS_ETH_I386_PC_RLTK8139_ETH1_NAME {
+ display "Device name for the ETH1 ethernet port 1 driver"
+ flavor data
+ default_value {"\"eth1\""}
+ description "
+ This option sets the name of the ethernet device for the
+ RealTek 8139 ethernet port 1."
+ }
+ }
}
Index: devs/eth/i386/pc/rltk8139/current/include/devs_eth_i386_pc_rltk8139.inl
===================================================================
RCS file: /cvs/ecos/ecos/packages/devs/eth/i386/pc/rltk8139/current/include/devs_eth_i386_pc_rltk8139.inl,v
retrieving revision 1.1
diff -u -5 -r1.1 devs_eth_i386_pc_rltk8139.inl
--- devs/eth/i386/pc/rltk8139/current/include/devs_eth_i386_pc_rltk8139.inl 13 Nov 2003 13:39:08 -0000 1.1
+++ devs/eth/i386/pc/rltk8139/current/include/devs_eth_i386_pc_rltk8139.inl 4 Mar 2005 15:40:45 -0000
@@ -85,6 +85,37 @@
rltk8139_init,
&rltk8139_sc0);
#endif // CYGPKG_DEVS_ETH_I386_PC_RLTK8139_ETH0
+#ifdef CYGPKG_DEVS_ETH_I386_PC_RLTK8139_ETH1
+
+static cyg_uint8 rltk8139_eth1_rx_ring[RX_BUF_TOT_LEN] CACHE_ALIGNED;
+static cyg_uint8
+rltk8139_eth1_tx_buffer[(TX_BUF_TOT_LEN + HAL_DCACHE_LINE_SIZE - 1)
+ & ~(HAL_DCACHE_LINE_SIZE - 1)] CACHE_ALIGNED;
+static Rltk8139_t rltk8139_eth1_priv_data = {
+ 1, rltk8139_eth1_rx_ring, rltk8139_eth1_tx_buffer
+};
+
+ETH_DRV_SC(rltk8139_sc1,
+ &rltk8139_eth1_priv_data,
+ CYGDAT_DEVS_ETH_I386_PC_RLTK8139_ETH1_NAME,
+ rltk8139_start,
+ rltk8139_stop,
+ rltk8139_control,
+ rltk8139_can_send,
+ rltk8139_send,
+ rltk8139_recv,
+ rltk8139_deliver,
+ rltk8139_poll,
+ rltk8139_int_vector
+ );
+
+NETDEVTAB_ENTRY(rltk8139_netdev1,
+ "rltk8139_" CYGDAT_DEVS_ETH_I386_PC_RLTK8139_ETH1_NAME,
+ rltk8139_init,
+ &rltk8139_sc1);
+
+#endif // CYGPKG_DEVS_ETH_I386_PC_RLTK8139_ETH1
+
// EOF devs_eth_i386_pc_rltk8139.inl