ar8216: reduce latency even further for ar8327 chips
authorFelix Fietkau <nbd@nbd.name>
Sun, 8 Apr 2018 07:27:09 +0000 (09:27 +0200)
committerFelix Fietkau <nbd@nbd.name>
Sun, 8 Apr 2018 07:27:14 +0000 (09:27 +0200)
Signed-off-by: Felix Fietkau <nbd@nbd.name>
target/linux/generic/files/drivers/net/phy/ar8327.c

index 96267d4f36497138b10c1f4f82b3f66989fa8b67..7bfc1875094f1bcb149898b2184035040dfce2fd 100644 (file)
@@ -1083,8 +1083,10 @@ ar8327_wait_atu_ready(struct ar8xxx_priv *priv, u16 r2, u16 r1)
 {
        int timeout = 20;
 
-       while (ar8xxx_mii_read32(priv, r2, r1) & AR8327_ATU_FUNC_BUSY && --timeout)
-                udelay(10);
+       while (ar8xxx_mii_read32(priv, r2, r1) & AR8327_ATU_FUNC_BUSY && --timeout) {
+               udelay(10);
+               cond_resched();
+       }
 
        if (!timeout)
                pr_err("ar8327: timeout waiting for atu to become ready\n");