Patch by Travis Sawyer, 30 Dec 2003:
Add support for IBM PPC440GX. Multiple EMAC Ethernet devices,
select MDI port based on enabled EMAC device.
Add support for XES Inc <http://www.xes-inc.com> XPedite1000 440GX
base PrPMC board.
diff --git a/lib_ppc/board.c b/lib_ppc/board.c
index 5b0dd4d..d7cee2b 100644
--- a/lib_ppc/board.c
+++ b/lib_ppc/board.c
@@ -749,7 +749,7 @@
#endif
#if defined(CFG_GT_6426x) || defined(CONFIG_PN62) || defined(CONFIG_PPCHAMELEONEVB) || \
- defined(CONFIG_MPC8540ADS) || defined(CONFIG_MPC8560ADS)
+ defined(CONFIG_MPC8540ADS) || defined(CONFIG_MPC8560ADS) || defined(CONFIG_440_GX)
/* handle the 2nd ethernet address */
s = getenv ("eth1addr");
@@ -760,11 +760,16 @@
s = (*e) ? e + 1 : e;
}
#endif
-#if defined(CFG_GT_6426x) || defined(CONFIG_MPC8540ADS) || defined(CONFIG_MPC8560ADS)
+#if defined(CFG_GT_6426x) || defined(CONFIG_MPC8540ADS) || defined(CONFIG_MPC8560ADS) || \
+ defined(CONFIG_440_GX)
/* handle the 3rd ethernet address */
s = getenv ("eth2addr");
-
+#if defined(CONFIG_XPEDITE1K)
+ if (s == NULL)
+ board_get_enetaddr(bd->bi_enet2addr);
+ else
+#endif
for (i = 0; i < 6; ++i) {
bd->bi_enet2addr[i] = s ? simple_strtoul (s, &e, 16) : 0;
if (s)
@@ -772,6 +777,20 @@
}
#endif
+#if defined(CONFIG_440_GX)
+ /* handle 4th ethernet address */
+ s = getenv("eth3addr");
+#if defined(CONFIG_XPEDITE1K)
+ if (s == NULL)
+ board_get_enetaddr(bd->bi_enet3addr);
+ else
+#endif
+ for (i = 0; i < 6; ++i) {
+ bd->bi_enet3addr[i] = s ? simple_strtoul (s, &e, 16) : 0;
+ if (s)
+ s = (*e) ? e + 1 : e;
+ }
+#endif
#if defined(CONFIG_TQM8xxL) || defined(CONFIG_TQM8260) || \
defined(CONFIG_CCM)