summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cpu/ppc4xx/4xx_enet.c9
-rw-r--r--cpu/ppc4xx/Makefile1
-rw-r--r--include/configs/AR405.h1
-rw-r--r--include/configs/ASH405.h1
-rw-r--r--include/configs/CMS700.h1
-rw-r--r--include/configs/CPCI405.h1
-rw-r--r--include/configs/CPCI4052.h1
-rw-r--r--include/configs/CPCI405AB.h1
-rw-r--r--include/configs/CPCI405DT.h1
-rw-r--r--include/configs/CPCIISER4.h1
-rw-r--r--include/configs/CRAYL1.h2
-rw-r--r--include/configs/DP405.h1
-rw-r--r--include/configs/DU405.h1
-rw-r--r--include/configs/DU440.h1
-rw-r--r--include/configs/ERIC.h1
-rw-r--r--include/configs/EXBITGEN.h1
-rw-r--r--include/configs/G2000.h1
-rw-r--r--include/configs/HH405.h1
-rw-r--r--include/configs/HUB405.h1
-rw-r--r--include/configs/JSE.h1
-rw-r--r--include/configs/KAREF.h1
-rw-r--r--include/configs/METROBOX.h1
-rw-r--r--include/configs/MIP405.h1
-rw-r--r--include/configs/OCRTC.h1
-rw-r--r--include/configs/ORSG.h1
-rw-r--r--include/configs/PCI405.h1
-rw-r--r--include/configs/PIP405.h1
-rw-r--r--include/configs/PLU405.h1
-rw-r--r--include/configs/PMC405.h1
-rw-r--r--include/configs/PMC440.h1
-rw-r--r--include/configs/PPChameleonEVB.h1
-rw-r--r--include/configs/VOH405.h1
-rw-r--r--include/configs/VOM405.h1
-rw-r--r--include/configs/W7OLMC.h1
-rw-r--r--include/configs/W7OLMG.h1
-rw-r--r--include/configs/WUH405.h1
-rw-r--r--include/configs/XPEDITE1K.h1
-rw-r--r--include/configs/alpr.h1
-rw-r--r--include/configs/amcc-common.h1
-rw-r--r--include/configs/csb272.h1
-rw-r--r--include/configs/csb472.h1
-rw-r--r--include/configs/korat.h1
-rw-r--r--include/configs/lwmon5.h1
-rw-r--r--include/configs/netstal-common.h1
-rw-r--r--include/configs/p3p440.h1
-rw-r--r--include/configs/pcs440ep.h1
-rw-r--r--include/configs/quad100hd.h1
-rw-r--r--include/configs/sbc405.h1
-rw-r--r--include/configs/sc3.h2
-rw-r--r--include/configs/zeus.h1
-rw-r--r--net/eth.c5
51 files changed, 53 insertions, 12 deletions
diff --git a/cpu/ppc4xx/4xx_enet.c b/cpu/ppc4xx/4xx_enet.c
index d7b16daf394..19782695998 100644
--- a/cpu/ppc4xx/4xx_enet.c
+++ b/cpu/ppc4xx/4xx_enet.c
@@ -91,13 +91,6 @@
#include <miiphy.h>
#include <malloc.h>
-/*
- * Only compile for platform with AMCC EMAC ethernet controller and
- * network support enabled.
- * Remark: CONFIG_405 describes Xilinx PPC405 FPGA without EMAC controller!
- */
-#if defined(CONFIG_CMD_NET) && !defined(CONFIG_405) && !defined(CONFIG_IOP480)
-
#if !(defined(CONFIG_MII) || defined(CONFIG_CMD_MII))
#error "CONFIG_MII has to be defined!"
#endif
@@ -2131,5 +2124,3 @@ int emac4xx_miiphy_initialize (bd_t * bis)
return 0;
}
#endif /* !defined(CONFIG_NET_MULTI) */
-
-#endif
diff --git a/cpu/ppc4xx/Makefile b/cpu/ppc4xx/Makefile
index 463b57566a7..adfe13ce720 100644
--- a/cpu/ppc4xx/Makefile
+++ b/cpu/ppc4xx/Makefile
@@ -38,6 +38,7 @@ COBJS += 44x_spd_ddr2.o
ifdef CONFIG_PPC4xx_DDR_AUTOCALIBRATION
COBJS += 4xx_ibm_ddr2_autocalib.o
endif
+COBJS-$(CONFIG_PPC4xx_EMAC) += 4xx_enet.o
COBJS += 4xx_pci.o
COBJS += 4xx_pcie.o
COBJS += bedbug_405.o
diff --git a/include/configs/AR405.h b/include/configs/AR405.h
index 864774c229a..9f19269574e 100644
--- a/include/configs/AR405.h
+++ b/include/configs/AR405.h
@@ -67,6 +67,7 @@
#define CONFIG_LOADS_ECHO 1 /* echo on for serial download */
#define CONFIG_SYS_LOADS_BAUD_CHANGE 1 /* allow baudrate change */
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 0 /* PHY address */
#define CONFIG_LXT971_NO_SLEEP 1 /* disable sleep mode in LXT971 */
diff --git a/include/configs/ASH405.h b/include/configs/ASH405.h
index bcc85ee0b05..a694083d5fb 100644
--- a/include/configs/ASH405.h
+++ b/include/configs/ASH405.h
@@ -56,6 +56,7 @@
#define CONFIG_NET_MULTI 1
#undef CONFIG_HAS_ETH1
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 0 /* PHY address */
#define CONFIG_LXT971_NO_SLEEP 1 /* disable sleep mode in LXT971 */
diff --git a/include/configs/CMS700.h b/include/configs/CMS700.h
index d58f5084846..d0e246409d1 100644
--- a/include/configs/CMS700.h
+++ b/include/configs/CMS700.h
@@ -52,6 +52,7 @@
#define CONFIG_SYS_LOADS_BAUD_CHANGE 1 /* allow baudrate change */
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_NET_MULTI 1
#undef CONFIG_HAS_ETH1
diff --git a/include/configs/CPCI405.h b/include/configs/CPCI405.h
index 3493d75bd4f..1a2bc1c2e72 100644
--- a/include/configs/CPCI405.h
+++ b/include/configs/CPCI405.h
@@ -52,6 +52,7 @@
#define CONFIG_LOADS_ECHO 1 /* echo on for serial download */
#define CONFIG_SYS_LOADS_BAUD_CHANGE 1 /* allow baudrate change */
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 0 /* PHY address */
#define CONFIG_LXT971_NO_SLEEP 1 /* disable sleep mode in LXT971 */
diff --git a/include/configs/CPCI4052.h b/include/configs/CPCI4052.h
index 734ab95e43e..e231fa70588 100644
--- a/include/configs/CPCI4052.h
+++ b/include/configs/CPCI4052.h
@@ -54,6 +54,7 @@
#define CONFIG_LOADS_ECHO 1 /* echo on for serial download */
#define CONFIG_SYS_LOADS_BAUD_CHANGE 1 /* allow baudrate change */
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 0 /* PHY address */
#define CONFIG_LXT971_NO_SLEEP 1 /* disable sleep mode in LXT971 */
diff --git a/include/configs/CPCI405AB.h b/include/configs/CPCI405AB.h
index 47ad89dfebc..2319c58725c 100644
--- a/include/configs/CPCI405AB.h
+++ b/include/configs/CPCI405AB.h
@@ -54,6 +54,7 @@
#undef CONFIG_LOADS_ECHO /* echo on for serial download */
#define CONFIG_SYS_LOADS_BAUD_CHANGE 1 /* allow baudrate change */
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 0 /* PHY address */
#define CONFIG_LXT971_NO_SLEEP 1 /* disable sleep mode in LXT971 */
diff --git a/include/configs/CPCI405DT.h b/include/configs/CPCI405DT.h
index 4e94dfc3280..be8c238a0d8 100644
--- a/include/configs/CPCI405DT.h
+++ b/include/configs/CPCI405DT.h
@@ -53,6 +53,7 @@
#define CONFIG_LOADS_ECHO 1 /* echo on for serial download */
#define CONFIG_SYS_LOADS_BAUD_CHANGE 1 /* allow baudrate change */
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 0 /* PHY address */
#define CONFIG_LXT971_NO_SLEEP 1 /* disable sleep mode in LXT971 */
diff --git a/include/configs/CPCIISER4.h b/include/configs/CPCIISER4.h
index 2d60ebf2e48..32637125343 100644
--- a/include/configs/CPCIISER4.h
+++ b/include/configs/CPCIISER4.h
@@ -50,6 +50,7 @@
#define CONFIG_LOADS_ECHO 1 /* echo on for serial download */
#define CONFIG_SYS_LOADS_BAUD_CHANGE 1 /* allow baudrate change */
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 0 /* PHY address */
#define CONFIG_LXT971_NO_SLEEP 1 /* disable sleep mode in LXT971 */
diff --git a/include/configs/CRAYL1.h b/include/configs/CRAYL1.h
index 1122d02d61c..f1608e145f5 100644
--- a/include/configs/CRAYL1.h
+++ b/include/configs/CRAYL1.h
@@ -39,6 +39,8 @@
#define CONFIG_SYS_CLK_FREQ 25000000
#define CONFIG_BAUDRATE 9600
#define CONFIG_BOOTDELAY 5 /* autoboot after 5 seconds */
+
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 1 /* PHY address; handling of ENET */
#define CONFIG_BOARD_EARLY_INIT_F 1 /* early setup for 405gp */
diff --git a/include/configs/DP405.h b/include/configs/DP405.h
index 0ff4f7dfe6c..884f3fe885b 100644
--- a/include/configs/DP405.h
+++ b/include/configs/DP405.h
@@ -52,6 +52,7 @@
#define CONFIG_SYS_LOADS_BAUD_CHANGE 1 /* allow baudrate change */
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 0 /* PHY address */
diff --git a/include/configs/DU405.h b/include/configs/DU405.h
index 939e216051c..1d20efea00d 100644
--- a/include/configs/DU405.h
+++ b/include/configs/DU405.h
@@ -54,6 +54,7 @@
#define CONFIG_LOADS_ECHO 1 /* echo on for serial download */
#define CONFIG_SYS_LOADS_BAUD_CHANGE 1 /* allow baudrate change */
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 0 /* PHY address */
#define CONFIG_LXT971_NO_SLEEP 1 /* disable sleep mode in LXT971 */
diff --git a/include/configs/DU440.h b/include/configs/DU440.h
index 508a0cae3d8..729153c2efb 100644
--- a/include/configs/DU440.h
+++ b/include/configs/DU440.h
@@ -253,6 +253,7 @@
int du440_phy_addr(int devnum);
#endif
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_IBM_EMAC4_V4 1
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR du440_phy_addr(0) /* PHY address */
diff --git a/include/configs/ERIC.h b/include/configs/ERIC.h
index c05945a7267..1b766a7dcba 100644
--- a/include/configs/ERIC.h
+++ b/include/configs/ERIC.h
@@ -93,6 +93,7 @@
#define CONFIG_LOADS_ECHO 1 /* echo on for serial download */
#define CONFIG_SYS_LOADS_BAUD_CHANGE 1 /* allow baudrate change */
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 1 /* PHY address */
diff --git a/include/configs/EXBITGEN.h b/include/configs/EXBITGEN.h
index 9f5d3caa5fb..1dd6e573d2f 100644
--- a/include/configs/EXBITGEN.h
+++ b/include/configs/EXBITGEN.h
@@ -88,6 +88,7 @@
*/
#define CONFIG_BOOTP_BOOTFILESIZE
#define CONFIG_BOOTP_BOOTPATH
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_BOOTP_GATEWAY
#define CONFIG_BOOTP_HOSTNAME
diff --git a/include/configs/G2000.h b/include/configs/G2000.h
index 4341f02e605..d299044cb24 100644
--- a/include/configs/G2000.h
+++ b/include/configs/G2000.h
@@ -80,6 +80,7 @@
#define CONFIG_NET_MULTI 1
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 0 /* PHY address */
#define CONFIG_PHY1_ADDR 1 /* PHY address */
diff --git a/include/configs/HH405.h b/include/configs/HH405.h
index 1e7cc124d37..80e59bb2667 100644
--- a/include/configs/HH405.h
+++ b/include/configs/HH405.h
@@ -64,6 +64,7 @@
#define CONFIG_SYS_LOADS_BAUD_CHANGE 1 /* allow baudrate change */
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_NET_MULTI 1
#undef CONFIG_HAS_ETH1
diff --git a/include/configs/HUB405.h b/include/configs/HUB405.h
index 3e5842444d4..b3c7046fc39 100644
--- a/include/configs/HUB405.h
+++ b/include/configs/HUB405.h
@@ -54,6 +54,7 @@
#define CONFIG_SYS_LOADS_BAUD_CHANGE 1 /* allow baudrate change */
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 0 /* PHY address */
#define CONFIG_LXT971_NO_SLEEP 1 /* disable sleep mode in LXT971 */
diff --git a/include/configs/JSE.h b/include/configs/JSE.h
index 508b5c8dbe0..8aca1f941db 100644
--- a/include/configs/JSE.h
+++ b/include/configs/JSE.h
@@ -132,6 +132,7 @@
#define CONFIG_LOADS_ECHO 1 /* echo on for serial download */
#define CONFIG_SYS_LOADS_BAUD_CHANGE 1 /* allow baudrate change */
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 1 /* PHY address */
diff --git a/include/configs/KAREF.h b/include/configs/KAREF.h
index 403081d0d2b..4b67c9454b9 100644
--- a/include/configs/KAREF.h
+++ b/include/configs/KAREF.h
@@ -157,6 +157,7 @@
/*-----------------------------------------------------------------------
* Networking
*----------------------------------------------------------------------*/
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_NET_MULTI 1
#define CONFIG_PHY_ADDR 0xff /* no phy on EMAC0 */
diff --git a/include/configs/METROBOX.h b/include/configs/METROBOX.h
index c0ddd45c0e4..518173aa5d9 100644
--- a/include/configs/METROBOX.h
+++ b/include/configs/METROBOX.h
@@ -221,6 +221,7 @@
/*-----------------------------------------------------------------------
* Networking
*----------------------------------------------------------------------*/
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_NET_MULTI 1
#define CONFIG_PHY_ADDR 0xff /* no phy on EMAC0 */
diff --git a/include/configs/MIP405.h b/include/configs/MIP405.h
index 7dcf1855a2c..c58ce053fd1 100644
--- a/include/configs/MIP405.h
+++ b/include/configs/MIP405.h
@@ -336,6 +336,7 @@
/************************************************************
* Ethernet Stuff
***********************************************************/
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 1 /* PHY address */
#define CONFIG_PHY_RESET_DELAY 300 /* Intel LXT971A needs this */
diff --git a/include/configs/OCRTC.h b/include/configs/OCRTC.h
index ff11df92edf..32814d49f54 100644
--- a/include/configs/OCRTC.h
+++ b/include/configs/OCRTC.h
@@ -50,6 +50,7 @@
#define CONFIG_LOADS_ECHO 1 /* echo on for serial download */
#define CONFIG_SYS_LOADS_BAUD_CHANGE 1 /* allow baudrate change */
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 0 /* PHY address */
#define CONFIG_LXT971_NO_SLEEP 1 /* disable sleep mode in LXT971 */
diff --git a/include/configs/ORSG.h b/include/configs/ORSG.h
index a635fca192a..58e9328e4f5 100644
--- a/include/configs/ORSG.h
+++ b/include/configs/ORSG.h
@@ -50,6 +50,7 @@
#define CONFIG_LOADS_ECHO 1 /* echo on for serial download */
#define CONFIG_SYS_LOADS_BAUD_CHANGE 1 /* allow baudrate change */
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 0 /* PHY address */
#define CONFIG_LXT971_NO_SLEEP 1 /* disable sleep mode in LXT971 */
diff --git a/include/configs/PCI405.h b/include/configs/PCI405.h
index b55e383b2b1..0393366b5c0 100644
--- a/include/configs/PCI405.h
+++ b/include/configs/PCI405.h
@@ -63,6 +63,7 @@
#define CONFIG_LOADS_ECHO 1 /* echo on for serial download */
#define CONFIG_SYS_LOADS_BAUD_CHANGE 1 /* allow baudrate change */
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 0 /* PHY address */
diff --git a/include/configs/PIP405.h b/include/configs/PIP405.h
index 2966979cb85..5c4d69b207b 100644
--- a/include/configs/PIP405.h
+++ b/include/configs/PIP405.h
@@ -278,6 +278,7 @@
/************************************************************
* Ethernet Stuff
***********************************************************/
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 1 /* PHY address */
/************************************************************
diff --git a/include/configs/PLU405.h b/include/configs/PLU405.h
index 675dbe66769..11ce0080f93 100644
--- a/include/configs/PLU405.h
+++ b/include/configs/PLU405.h
@@ -54,6 +54,7 @@
#define CONFIG_NET_MULTI 1
#undef CONFIG_HAS_ETH1
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 0 /* PHY address */
#define CONFIG_LXT971_NO_SLEEP 1 /* disable sleep mode in LXT971 */
diff --git a/include/configs/PMC405.h b/include/configs/PMC405.h
index 12e63b717eb..8d07d7705d2 100644
--- a/include/configs/PMC405.h
+++ b/include/configs/PMC405.h
@@ -56,6 +56,7 @@
#define CONFIG_NET_MULTI 1
#undef CONFIG_HAS_ETH1
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 0 /* PHY address */
#define CONFIG_LXT971_NO_SLEEP 1 /* disable sleep mode in LXT971 */
diff --git a/include/configs/PMC440.h b/include/configs/PMC440.h
index 7071ccbfe70..7219bb8ae18 100644
--- a/include/configs/PMC440.h
+++ b/include/configs/PMC440.h
@@ -315,6 +315,7 @@
#define CONFIG_LOADS_ECHO 1 /* echo on for serial download */
#define CONFIG_SYS_LOADS_BAUD_CHANGE 1 /* allow baudrate change */
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_IBM_EMAC4_V4 1
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 0 /* PHY address, See schematics */
diff --git a/include/configs/PPChameleonEVB.h b/include/configs/PPChameleonEVB.h
index e66f8efead3..09a96417f51 100644
--- a/include/configs/PPChameleonEVB.h
+++ b/include/configs/PPChameleonEVB.h
@@ -104,6 +104,7 @@
#undef CONFIG_EXT_PHY
#define CONFIG_NET_MULTI 1
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#ifndef CONFIG_EXT_PHY
#define CONFIG_PHY_ADDR 1 /* EMAC0 PHY address */
diff --git a/include/configs/VOH405.h b/include/configs/VOH405.h
index fb1febc5c95..10ef620d822 100644
--- a/include/configs/VOH405.h
+++ b/include/configs/VOH405.h
@@ -55,6 +55,7 @@
#define CONFIG_NET_MULTI 1
#undef CONFIG_HAS_ETH1
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 0 /* PHY address */
#define CONFIG_LXT971_NO_SLEEP 1 /* disable sleep mode in LXT971 */
diff --git a/include/configs/VOM405.h b/include/configs/VOM405.h
index b6e35888110..90efc6d811d 100644
--- a/include/configs/VOM405.h
+++ b/include/configs/VOM405.h
@@ -53,6 +53,7 @@
#define CONFIG_NET_MULTI 1
#undef CONFIG_HAS_ETH1
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 0 /* PHY address */
#define CONFIG_LXT971_NO_SLEEP 1 /* disable sleep mode in LXT971 */
diff --git a/include/configs/W7OLMC.h b/include/configs/W7OLMC.h
index e546369c994..51d0a0a6ace 100644
--- a/include/configs/W7OLMC.h
+++ b/include/configs/W7OLMC.h
@@ -65,6 +65,7 @@
#define CONFIG_LOADS_ECHO 1 /* echo on for serial download */
#undef CONFIG_SYS_LOADS_BAUD_CHANGE /* disallow baudrate change */
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 0 /* PHY address */
diff --git a/include/configs/W7OLMG.h b/include/configs/W7OLMG.h
index 226033831bd..ca1a9d4a77b 100644
--- a/include/configs/W7OLMG.h
+++ b/include/configs/W7OLMG.h
@@ -65,6 +65,7 @@
#define CONFIG_LOADS_ECHO 1 /* echo on for serial download */
#undef CONFIG_SYS_LOADS_BAUD_CHANGE /* disallow baudrate change */
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 0 /* PHY address */
diff --git a/include/configs/WUH405.h b/include/configs/WUH405.h
index ec815640688..01cdf3a6f3b 100644
--- a/include/configs/WUH405.h
+++ b/include/configs/WUH405.h
@@ -54,6 +54,7 @@
#define CONFIG_LOADS_ECHO 1 /* echo on for serial download */
#define CONFIG_SYS_LOADS_BAUD_CHANGE 1 /* allow baudrate change */
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 0 /* PHY address */
#define CONFIG_LXT971_NO_SLEEP 1 /* disable sleep mode in LXT971 */
diff --git a/include/configs/XPEDITE1K.h b/include/configs/XPEDITE1K.h
index 569bb9052e6..8d44ec6d720 100644
--- a/include/configs/XPEDITE1K.h
+++ b/include/configs/XPEDITE1K.h
@@ -167,6 +167,7 @@ extern void out32(unsigned int, unsigned long);
#define CONFIG_LOADS_ECHO 1 /* echo on for serial download */
#define CONFIG_SYS_LOADS_BAUD_CHANGE 1 /* allow baudrate change */
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 0 /* PHY address phy0 not populated */
#define CONFIG_PHY1_ADDR 1 /* PHY address phy1 not populated */
diff --git a/include/configs/alpr.h b/include/configs/alpr.h
index 315841257dc..6e9f5e5a530 100644
--- a/include/configs/alpr.h
+++ b/include/configs/alpr.h
@@ -198,6 +198,7 @@
#define CONFIG_LOADS_ECHO 1 /* echo on for serial download */
#define CONFIG_SYS_LOADS_BAUD_CHANGE 1 /* allow baudrate change */
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_NET_MULTI 1
#define CONFIG_PHY_ADDR 0x02 /* dummy setting, no EMAC0 used */
diff --git a/include/configs/amcc-common.h b/include/configs/amcc-common.h
index 85165710b07..d3dc3e53367 100644
--- a/include/configs/amcc-common.h
+++ b/include/configs/amcc-common.h
@@ -45,6 +45,7 @@
/*
* Ethernet/EMAC/PHY
*/
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII /* MII PHY management */
#define CONFIG_NET_MULTI
#define CONFIG_NETCONSOLE /* include NetConsole support */
diff --git a/include/configs/csb272.h b/include/configs/csb272.h
index 393e9929a14..874f2c0b390 100644
--- a/include/configs/csb272.h
+++ b/include/configs/csb272.h
@@ -180,6 +180,7 @@
* MII PHY configuration
*
*/
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 0 /* PHY address */
#define CONFIG_PHY_CMD_DELAY 40 /* PHY COMMAND delay */
diff --git a/include/configs/csb472.h b/include/configs/csb472.h
index af382526fa2..2e30e696406 100644
--- a/include/configs/csb472.h
+++ b/include/configs/csb472.h
@@ -179,6 +179,7 @@
* MII PHY configuration
*
*/
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 0 /* PHY address */
#define CONFIG_PHY_CMD_DELAY 40 /* PHY COMMAND delay */
diff --git a/include/configs/korat.h b/include/configs/korat.h
index ca3e8a9fc4f..d56da144879 100644
--- a/include/configs/korat.h
+++ b/include/configs/korat.h
@@ -215,6 +215,7 @@
#define CONFIG_LOADS_ECHO 1 /* echo on for serial download */
#define CONFIG_SYS_LOADS_BAUD_CHANGE 1 /* allow baudrate change */
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_IBM_EMAC4_V4 1
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 2 /* PHY address, See schematics */
diff --git a/include/configs/lwmon5.h b/include/configs/lwmon5.h
index e0dbd6113c7..05055c89afa 100644
--- a/include/configs/lwmon5.h
+++ b/include/configs/lwmon5.h
@@ -326,6 +326,7 @@
#define CONFIG_LOADS_ECHO 1 /* echo on for serial download */
#define CONFIG_SYS_LOADS_BAUD_CHANGE 1 /* allow baudrate change */
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_IBM_EMAC4_V4 1
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 3 /* PHY address, See schematics */
diff --git a/include/configs/netstal-common.h b/include/configs/netstal-common.h
index 1fa4b00eb5b..0a757943e8b 100644
--- a/include/configs/netstal-common.h
+++ b/include/configs/netstal-common.h
@@ -58,6 +58,7 @@
/*
* Ethernet/EMAC/PHY
*/
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII /* MII PHY management */
#define CONFIG_PHY_ADDR 1 /* PHY address */
#if defined(CONFIG_440)
diff --git a/include/configs/p3p440.h b/include/configs/p3p440.h
index 1dc8656bfb9..729ca6ac7df 100644
--- a/include/configs/p3p440.h
+++ b/include/configs/p3p440.h
@@ -158,6 +158,7 @@
#define CONFIG_LOADS_ECHO 1 /* echo on for serial download */
#define CONFIG_SYS_LOADS_BAUD_CHANGE 1 /* allow baudrate change */
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 0x1c /* PHY address */
#define CONFIG_HAS_ETH1
diff --git a/include/configs/pcs440ep.h b/include/configs/pcs440ep.h
index 6e2d9067c8d..000ae5cd7d4 100644
--- a/include/configs/pcs440ep.h
+++ b/include/configs/pcs440ep.h
@@ -218,6 +218,7 @@
#define CONFIG_LOADS_ECHO 1 /* echo on for serial download */
#define CONFIG_SYS_LOADS_BAUD_CHANGE 1 /* allow baudrate change */
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_NET_MULTI 1 /* required for netconsole */
#define CONFIG_HAS_ETH1 1 /* add support for "eth1addr" */
diff --git a/include/configs/quad100hd.h b/include/configs/quad100hd.h
index 1a76301956e..0f7fca38d51 100644
--- a/include/configs/quad100hd.h
+++ b/include/configs/quad100hd.h
@@ -45,6 +45,7 @@
#define CONFIG_ENV_IS_IN_EEPROM
#undef CONFIG_ENV_IS_IN_FLASH
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_NET_MULTI 1
#define CONFIG_HAS_ETH1 1
#define CONFIG_MII 1 /* MII PHY management */
diff --git a/include/configs/sbc405.h b/include/configs/sbc405.h
index d93ca2d98f2..c156820acf1 100644
--- a/include/configs/sbc405.h
+++ b/include/configs/sbc405.h
@@ -58,6 +58,7 @@
#define CONFIG_BOOTCOMMAND "version;echo;tftpboot ${loadaddr} ${loadfile};bootvx" /* autoboot command */
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 0 /* PHY address */
#define CONFIG_PHY_RESET_DELAY 300 /* Intel LXT971A needs this */
diff --git a/include/configs/sc3.h b/include/configs/sc3.h
index 44135dfac54..d152a9670d0 100644
--- a/include/configs/sc3.h
+++ b/include/configs/sc3.h
@@ -166,6 +166,8 @@
/* #define CONFIG_EEPRO100_SROM_WRITE */
/* #define CONFIG_SHOW_MAC */
#define CONFIG_EEPRO100
+
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* add 405GP MII PHY management */
#define CONFIG_PHY_ADDR 1 /* the connected Phy defaults to address 1 */
diff --git a/include/configs/zeus.h b/include/configs/zeus.h
index b75e8a118a7..1a77c719686 100644
--- a/include/configs/zeus.h
+++ b/include/configs/zeus.h
@@ -46,6 +46,7 @@
#define CONFIG_OVERWRITE_ETHADDR_ONCE 1
+#define CONFIG_PPC4xx_EMAC
#define CONFIG_MII 1 /* MII PHY management */
#define CONFIG_PHY_ADDR 0x01 /* PHY address */
#define CONFIG_HAS_ETH1 1
diff --git a/net/eth.c b/net/eth.c
index 0b954edb78c..eab51045a4e 100644
--- a/net/eth.c
+++ b/net/eth.c
@@ -153,7 +153,7 @@ int eth_initialize(bd_t *bis)
#if defined(CONFIG_DB64460) || defined(CONFIG_P3Mx)
mv6446x_eth_initialize(bis);
#endif
-#if defined(CONFIG_4xx) && !defined(CONFIG_IOP480) && !defined(CONFIG_AP1000)
+#if defined(CONFIG_PPC4xx_EMAC)
ppc_4xx_eth_initialize(bis);
#endif
if (!eth_devices) {
@@ -485,8 +485,7 @@ int eth_initialize(bd_t *bis)
#if defined(CONFIG_AT91RM9200)
at91rm9200_miiphy_initialize(bis);
#endif
-#if defined(CONFIG_4xx) && !defined(CONFIG_IOP480) \
- && !defined(CONFIG_AP1000) && !defined(CONFIG_405)
+#if defined(CONFIG_PPC4xx_EMAC)
emac4xx_miiphy_initialize(bis);
#endif
#if defined(CONFIG_MCF52x2)