[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[microblaze-uclinux] Multiple Ethernet Peripherals
Hi John,
I'm using multiple ethernet peripherals in a Microblaze uclinux design and
made the following changes to the xilinx_enet device driver code. See
below for the "cvs diff -u" patch.
Thanks.
Paul
Index: linux-2.4.x/drivers/net/xilinx_enet/adapter.c
===================================================================
RCS file: /var/cvs/uClinux-2.4.x/drivers/net/xilinx_enet/adapter.c,v
retrieving revision 1.16
diff -u -r1.16 adapter.c
--- linux-2.4.x/drivers/net/xilinx_enet/adapter.c 4 Jan 2006 06:27:07
-0000 1.16
+++ linux-2.4.x/drivers/net/xilinx_enet/adapter.c 21 Feb 2006 02:03:18 -0000
@@ -60,6 +60,10 @@
#define CONFIG_XILINX_ETHERNET_0_MACADDR {0x00, 0x00, 0xC0, 0xA3, 0xE5,
0x44}
#define CONFIG_XILINX_ETHERNET_1_MACADDR {0x00, 0x00, 0xC0, 0xA3, 0xE5,
0x45}
#define CONFIG_XILINX_ETHERNET_2_MACADDR {0x00, 0x00, 0xC0, 0xA3, 0xE5,
0x46}
+#define CONFIG_XILINX_ETHERNET_3_MACADDR {0x00, 0x00, 0xC0, 0xA3, 0xE5,
0x47}
+#define CONFIG_XILINX_ETHERNET_4_MACADDR {0x00, 0x00, 0xC0, 0xA3, 0xE5,
0x48}
+#define CONFIG_XILINX_ETHERNET_5_MACADDR {0x00, 0x00, 0xC0, 0xA3, 0xE5,
0x49}
+#define CONFIG_XILINX_ETHERNET_6_MACADDR {0x00, 0x00, 0xC0, 0xA3, 0xE5,
0x50}
#define TX_TIMEOUT (60*HZ) /* Transmission timeout is 60 seconds. */
@@ -82,6 +86,25 @@
{CONFIG_XILINX_ETHERNET_2_BASEADDR, CONFIG_XILINX_ETHERNET_2_IRQ,
CONFIG_XILINX_ETHERNET_2_MACADDR },
#endif
+#ifdef CONFIG_XILINX_ETHERNET_3_INSTANCE
+ {CONFIG_XILINX_ETHERNET_3_BASEADDR, CONFIG_XILINX_ETHERNET_3_IRQ,
+ CONFIG_XILINX_ETHERNET_3_MACADDR },
+#endif
+#ifdef CONFIG_XILINX_ETHERNET_4_INSTANCE
+ {CONFIG_XILINX_ETHERNET_4_BASEADDR, CONFIG_XILINX_ETHERNET_4_IRQ,
+ CONFIG_XILINX_ETHERNET_4_MACADDR },
+#endif
+#ifdef CONFIG_XILINX_ETHERNET_5_INSTANCE
+ {CONFIG_XILINX_ETHERNET_5_BASEADDR, CONFIG_XILINX_ETHERNET_5_IRQ,
+ CONFIG_XILINX_ETHERNET_5_MACADDR },
+#endif
+#ifdef CONFIG_XILINX_ETHERNET_6_INSTANCE
+ {CONFIG_XILINX_ETHERNET_6_BASEADDR, CONFIG_XILINX_ETHERNET_6_IRQ,
+ CONFIG_XILINX_ETHERNET_6_MACADDR },
+#endif
+#ifdef CONFIG_XILINX_ETHERNET_7_INSTANCE
+ #error Edit this file to add more devices.
+#endif
};
static int num_ether_devices = sizeof(ether_table)/sizeof(struct
ethernet_desc);
Index: linux-2.4.x/drivers/net/xilinx_enet/xemac_g.c
===================================================================
RCS file: /var/cvs/uClinux-2.4.x/drivers/net/xilinx_enet/xemac_g.c,v
retrieving revision 1.4
diff -u -r1.4 xemac_g.c
--- linux-2.4.x/drivers/net/xilinx_enet/xemac_g.c 16 Feb 2005 06:11:11
-0000 1.4
+++ linux-2.4.x/drivers/net/xilinx_enet/xemac_g.c 21 Feb 2006 02:03:18 -0000
@@ -54,4 +54,67 @@
CONFIG_XILINX_ETHERNET_0_ERR_COUNT_EXIST,
CONFIG_XILINX_ETHERNET_0_DMA_PRESENT,
CONFIG_XILINX_ETHERNET_0_MII_EXIST}
+#ifdef CONFIG_XILINX_ETHERNET_1_INSTANCE
+ ,
+ {
+ 1,
+ CONFIG_XILINX_ETHERNET_1_BASEADDR,
+ CONFIG_XILINX_ETHERNET_1_BASEADDR,
+ CONFIG_XILINX_ETHERNET_1_ERR_COUNT_EXIST,
+ CONFIG_XILINX_ETHERNET_1_DMA_PRESENT,
+ CONFIG_XILINX_ETHERNET_1_MII_EXIST}
+#endif
+#ifdef CONFIG_XILINX_ETHERNET_2_INSTANCE
+ ,
+ {
+ 2,
+ CONFIG_XILINX_ETHERNET_2_BASEADDR,
+ CONFIG_XILINX_ETHERNET_2_BASEADDR,
+ CONFIG_XILINX_ETHERNET_2_ERR_COUNT_EXIST,
+ CONFIG_XILINX_ETHERNET_2_DMA_PRESENT,
+ CONFIG_XILINX_ETHERNET_2_MII_EXIST}
+#endif
+#ifdef CONFIG_XILINX_ETHERNET_3_INSTANCE
+ ,
+ {
+ 3,
+ CONFIG_XILINX_ETHERNET_3_BASEADDR,
+ CONFIG_XILINX_ETHERNET_3_BASEADDR,
+ CONFIG_XILINX_ETHERNET_3_ERR_COUNT_EXIST,
+ CONFIG_XILINX_ETHERNET_3_DMA_PRESENT,
+ CONFIG_XILINX_ETHERNET_3_MII_EXIST}
+#endif
+#ifdef CONFIG_XILINX_ETHERNET_4_INSTANCE
+ ,
+ {
+ 4,
+ CONFIG_XILINX_ETHERNET_4_BASEADDR,
+ CONFIG_XILINX_ETHERNET_4_BASEADDR,
+ CONFIG_XILINX_ETHERNET_4_ERR_COUNT_EXIST,
+ CONFIG_XILINX_ETHERNET_4_DMA_PRESENT,
+ CONFIG_XILINX_ETHERNET_4_MII_EXIST}
+#endif
+#ifdef CONFIG_XILINX_ETHERNET_5_INSTANCE
+ ,
+ {
+ 5,
+ CONFIG_XILINX_ETHERNET_5_BASEADDR,
+ CONFIG_XILINX_ETHERNET_5_BASEADDR,
+ CONFIG_XILINX_ETHERNET_5_ERR_COUNT_EXIST,
+ CONFIG_XILINX_ETHERNET_5_DMA_PRESENT,
+ CONFIG_XILINX_ETHERNET_5_MII_EXIST}
+#endif
+#ifdef CONFIG_XILINX_ETHERNET_6_INSTANCE
+ ,
+ {
+ 6,
+ CONFIG_XILINX_ETHERNET_6_BASEADDR,
+ CONFIG_XILINX_ETHERNET_6_BASEADDR,
+ CONFIG_XILINX_ETHERNET_6_ERR_COUNT_EXIST,
+ CONFIG_XILINX_ETHERNET_6_DMA_PRESENT,
+ CONFIG_XILINX_ETHERNET_6_MII_EXIST}
+#endif
+#ifdef CONFIG_XILINX_ETHERNET_7_INSTANCE
+ #error Edit this file to add more devices.
+#endif
};
___________________________
microblaze-uclinux mailing list
microblaze-uclinux@xxxxxxxxxxxxxx
Project Home Page : http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux
Mailing List Archive : http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/