jme_wait_link() is never called in atomic context.
It calls mdelay() to busily wait, which is not necessary.
mdelay() can be replaced with msleep() and usleep_range().
This is found by a static analysis tool named DCNS written by myself.
Signed-off-by: Jia-Ju Bai <baijiaju1990@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
 {
        u32 phylink, to = JME_WAIT_LINK_TIME;
 
-       mdelay(1000);
+       msleep(1000);
        phylink = jme_linkstat_from_phy(jme);
        while (!(phylink & PHY_LINK_UP) && (to -= 10) > 0) {
-               mdelay(10);
+               usleep_range(10000, 11000);
                phylink = jme_linkstat_from_phy(jme);
        }
 }