diff --git a/board/freescale/ls1043aqds/eth.c b/board/freescale/ls1043aqds/eth.c
index e156ba0..7bfbacd 100644
--- a/board/freescale/ls1043aqds/eth.c
+++ b/board/freescale/ls1043aqds/eth.c
@@ -30,8 +30,6 @@
 #define EMI1_SLOT4	5
 #define EMI2		6
 
-static int mdio_mux[NUM_FM_PORTS];
-
 static const char * const mdio_names[] = {
 	"LS1043AQDS_MDIO_RGMII1",
 	"LS1043AQDS_MDIO_RGMII2",
@@ -43,7 +41,11 @@
 };
 
 /* Map SerDes1 4 lanes to default slot, will be initialized dynamically */
+#ifdef CONFIG_FMAN_ENET
+static int mdio_mux[NUM_FM_PORTS];
+
 static u8 lane_to_slot[] = {1, 2, 3, 4};
+#endif
 
 static const char *ls1043aqds_mdio_name_for_muxval(u8 muxval)
 {
@@ -75,6 +77,7 @@
 	return bus;
 }
 
+#ifdef CONFIG_FMAN_ENET
 struct ls1043aqds_mdio {
 	u8 muxval;
 	struct mii_dev *realbus;
@@ -296,7 +299,6 @@
 
 int board_eth_init(struct bd_info *bis)
 {
-#ifdef CONFIG_FMAN_ENET
 	int i, idx, lane, slot, interface;
 	struct memac_mdio_info dtsec_mdio_info;
 	struct memac_mdio_info tgec_mdio_info;
@@ -493,7 +495,7 @@
 	}
 
 	cpu_eth_init(bis);
-#endif /* CONFIG_FMAN_ENET */
 
 	return pci_eth_init(bis);
 }
+#endif /* CONFIG_FMAN_ENET */
diff --git a/board/freescale/ls1043aqds/ls1043aqds.c b/board/freescale/ls1043aqds/ls1043aqds.c
index 13359f9..7ac2c1a 100644
--- a/board/freescale/ls1043aqds/ls1043aqds.c
+++ b/board/freescale/ls1043aqds/ls1043aqds.c
@@ -556,10 +556,7 @@
 	fdt_fixup_memory_banks(blob, base, size, 2);
 	ft_cpu_setup(blob, bd);
 
-#ifdef CONFIG_SYS_DPAA_FMAN
-#ifndef CONFIG_DM_ETH
-	fdt_fixup_fman_ethernet(blob);
-#endif
+#ifdef CONFIG_FMAN_ENET
 	fdt_fixup_board_enet(blob);
 #endif
 
diff --git a/board/freescale/ls1046aqds/eth.c b/board/freescale/ls1046aqds/eth.c
index 8233f54..13207a1 100644
--- a/board/freescale/ls1046aqds/eth.c
+++ b/board/freescale/ls1046aqds/eth.c
@@ -27,8 +27,6 @@
 #define EMI1_SLOT2	3
 #define EMI1_SLOT4	4
 
-static int mdio_mux[NUM_FM_PORTS];
-
 static const char * const mdio_names[] = {
 	"LS1046AQDS_MDIO_RGMII1",
 	"LS1046AQDS_MDIO_RGMII2",
@@ -39,7 +37,11 @@
 };
 
 /* Map SerDes 1 & 2 lanes to default slot. */
+#ifdef CONFIG_FMAN_ENET
+static int mdio_mux[NUM_FM_PORTS];
+
 static u8 lane_to_slot[] = {1, 1, 1, 1, 0, 4, 0 , 0};
+#endif
 
 static const char *ls1046aqds_mdio_name_for_muxval(u8 muxval)
 {
@@ -71,6 +73,7 @@
 	return bus;
 }
 
+#ifdef CONFIG_FMAN_ENET
 struct ls1046aqds_mdio {
 	u8 muxval;
 	struct mii_dev *realbus;
@@ -263,7 +266,6 @@
 
 int board_eth_init(struct bd_info *bis)
 {
-#ifdef CONFIG_FMAN_ENET
 	int i, idx, lane, slot, interface;
 	struct memac_mdio_info dtsec_mdio_info;
 	struct ccsr_gur *gur = (void *)(CONFIG_SYS_FSL_GUTS_ADDR);
@@ -423,7 +425,7 @@
 	}
 
 	cpu_eth_init(bis);
-#endif /* CONFIG_FMAN_ENET */
 
 	return pci_eth_init(bis);
 }
+#endif /* CONFIG_FMAN_ENET */
diff --git a/board/freescale/ls1046aqds/ls1046aqds.c b/board/freescale/ls1046aqds/ls1046aqds.c
index e5b5441..aa6e30e 100644
--- a/board/freescale/ls1046aqds/ls1046aqds.c
+++ b/board/freescale/ls1046aqds/ls1046aqds.c
@@ -439,10 +439,7 @@
 	fdt_fixup_memory_banks(blob, base, size, 2);
 	ft_cpu_setup(blob, bd);
 
-#ifdef CONFIG_SYS_DPAA_FMAN
-#ifndef CONFIG_DM_ETH
-	fdt_fixup_fman_ethernet(blob);
-#endif
+#ifdef CONFIG_FMAN_ENET
 	fdt_fixup_board_enet(blob);
 #endif
 
