net: mdio device: use flexible sleeping in reset function
authorBruno Thomsen <bruno.thomsen@gmail.com>
Thu, 30 Jul 2020 19:57:49 +0000 (21:57 +0200)
committerDavid S. Miller <davem@davemloft.net>
Mon, 3 Aug 2020 22:01:02 +0000 (15:01 -0700)
MDIO device reset assert and deassert length was created by
usleep_range() but that does not ensure optimal handling of
all the different values from device tree properties.
By switching to the new flexible sleeping helper function,
fsleep(), the correct delay function is called depending on
delay length, e.g. udelay(), usleep_range() or msleep().

Signed-off-by: Bruno Thomsen <bruno.thomsen@gmail.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/phy/mdio_device.c

index 0f625a1b16447e54a75ab60f578fdd7f2a4097be..0837319a52d755a8c124435b9a05d730425d5bbc 100644 (file)
@@ -132,7 +132,7 @@ void mdio_device_reset(struct mdio_device *mdiodev, int value)
 
        d = value ? mdiodev->reset_assert_delay : mdiodev->reset_deassert_delay;
        if (d)
-               usleep_range(d, d + max_t(unsigned int, d / 10, 100));
+               fsleep(d);
 }
 EXPORT_SYMBOL(mdio_device_reset);