OSDN Git Service

net: dsa: mv88e6xxx: wait after reset deactivation
authorBaruch Siach <baruch@tkos.co.il>
Thu, 27 Jun 2019 18:17:39 +0000 (21:17 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 4 Aug 2019 07:33:33 +0000 (09:33 +0200)
[ Upstream commit 7b75e49de424ceb53d13e60f35d0a73765626fda ]

Add a 1ms delay after reset deactivation. Otherwise the chip returns
bogus ID value. This is observed with 88E6390 (Peridot) chip.

Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/net/dsa/mv88e6xxx/chip.c

index 2edd193..f157b81 100644 (file)
@@ -3846,6 +3846,8 @@ static int mv88e6xxx_probe(struct mdio_device *mdiodev)
                mv88e6xxx_mdio_unregister(chip);
                return err;
        }
+       if (chip->reset)
+               usleep_range(1000, 2000);
 
        return 0;
 }