From 088df08ece066f1f8ae4af3fc07f612bd9a26d16 Mon Sep 17 00:00:00 2001 From: Selvam Sathappan Periakaruppan Date: Tue, 29 Mar 2022 18:21:16 +0530 Subject: [PATCH] drivers: net: ipq: Optimize mdio read/write This patch removes the redundant udelay's and ipq_mdio_wait_busy calls which in turn reduces the overall AQ FW Load time. Change-Id: I31f3a940d743528ed212e8cccab522ac249a5a5a Signed-off-by: Selvam Sathappan Periakaruppan --- drivers/net/ipq_common/ipq_mdio.c | 8 -------- 1 file changed, 8 deletions(-) diff --git a/drivers/net/ipq_common/ipq_mdio.c b/drivers/net/ipq_common/ipq_mdio.c index 9703dbfaf1..28a710e307 100644 --- a/drivers/net/ipq_common/ipq_mdio.c +++ b/drivers/net/ipq_common/ipq_mdio.c @@ -29,14 +29,11 @@ static int ipq_mdio_wait_busy(void) int i; u32 busy; for (i = 0; i < IPQ_MDIO_RETRY; i++) { - udelay(IPQ_MDIO_DELAY); busy = readl(IPQ_MDIO_BASE + MDIO_CTRL_4_REG) & MDIO_CTRL_4_ACCESS_BUSY; - if (!busy) return 0; - udelay(IPQ_MDIO_DELAY); } printf("%s: MDIO operation timed out\n", __func__); @@ -46,9 +43,6 @@ static int ipq_mdio_wait_busy(void) int ipq_mdio_write(int mii_id, int regnum, u16 value) { u32 cmd; - if (ipq_mdio_wait_busy()) - return -ETIMEDOUT; - if (regnum & MII_ADDR_C45) { unsigned int mmd = (regnum >> 16) & 0x1F; @@ -100,8 +94,6 @@ int ipq_mdio_write(int mii_id, int regnum, u16 value) int ipq_mdio_read(int mii_id, int regnum, ushort *data) { u32 val,cmd; - if (ipq_mdio_wait_busy()) - return -ETIMEDOUT; if (regnum & MII_ADDR_C45) {