diff --git a/drivers/net/ipq6018/ipq6018_edma.c b/drivers/net/ipq6018/ipq6018_edma.c
index f0a5187..ec78792 100755
--- a/drivers/net/ipq6018/ipq6018_edma.c
+++ b/drivers/net/ipq6018/ipq6018_edma.c
@@ -45,7 +45,7 @@
 static struct ipq6018_eth_dev *ipq6018_edma_dev[IPQ6018_EDMA_DEV];
 
 uchar ipq6018_def_enetaddr[6] = {0x00, 0x03, 0x7F, 0xBA, 0xDB, 0xAD};
-phy_info_t *phy_info[PHY_MAX] = {0};
+phy_info_t *phy_info[IPQ6018_PHY_MAX] = {0};
 int sgmii_mode[2] = {0};
 
 extern void qca8075_ess_reset(void);
@@ -905,7 +905,7 @@
 	 * we will proceed even if single link is up
 	 * else we will return with -1;
 	 */
-	for (i =  0; i < PHY_MAX; i++) {
+	for (i =  0; i < IPQ6018_PHY_MAX; i++) {
 
 		if (i == sfp_port) {
 			status = phy_status_get_from_ppe(i);
@@ -1653,7 +1653,7 @@
 	int phy_address;
 	int i;
 
-	for (i = 0; i < PHY_MAX; i++)
+	for (i = 0; i < IPQ6018_PHY_MAX; i++)
 		phy_info[i] = ipq6018_alloc_mem(sizeof(phy_info_t));
 	i = 0;
 	for (offset = fdt_first_subnode(gd->fdt_blob, offset); offset > 0;
@@ -1775,7 +1775,7 @@
 		if (ret)
 			goto init_failed;
 
-		for (phy_id =  0; phy_id < PHY_MAX; phy_id++) {
+		for (phy_id =  0; phy_id < IPQ6018_PHY_MAX; phy_id++) {
 			if (phy_node >= 0) {
 				phy_addr = phy_info[phy_id]->phy_address;
 			} else {
diff --git a/drivers/net/ipq_common/ipq_phy.h b/drivers/net/ipq_common/ipq_phy.h
index 5fd29c3..753c9e9 100755
--- a/drivers/net/ipq_common/ipq_phy.h
+++ b/drivers/net/ipq_common/ipq_phy.h
@@ -18,6 +18,7 @@
 #include <net.h>
 
 #define PHY_MAX		6
+#define IPQ6018_PHY_MAX 5
 #define MDIO_CTRL_0_REG		0x00090040
 #define MDIO_CTRL_0_DIV(x)	(x << 0)
 #define MDIO_CTRL_0_MODE	(1 << 8)
