net: mvpp2: fix polarity of PHY reset signal
authorBaruch Siach <baruch@tkos.co.il>
Mon, 15 Oct 2018 10:16:47 +0000 (13:16 +0300)
committerJoe Hershberger <joe.hershberger@ni.com>
Wed, 24 Oct 2018 19:45:38 +0000 (14:45 -0500)
The dm_gpio_set_value() call sets the logical level of the GPIO signal.
That is, it takes the GPIO_ACTIVE_{LOW,HIGH} property into account. The
driver needs to assert the reset, and then deassert it. Not the other
way around.

Cc: Stefan Chulski <stefanc@marvell.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
Reviewed-by: Stefan Roese <sr@denx.de>
drivers/net/mvpp2.c

index f34245ba77dea387d0997f77ee9d944b0b1c6659..48728d168a718c449fa929d43e4a758f1bc73201 100644 (file)
@@ -4792,9 +4792,9 @@ static int phy_info_parse(struct udevice *dev, struct mvpp2_port *port)
 static void mvpp2_gpio_init(struct mvpp2_port *port)
 {
        if (dm_gpio_is_valid(&port->phy_reset_gpio)) {
-               dm_gpio_set_value(&port->phy_reset_gpio, 0);
-               udelay(1000);
                dm_gpio_set_value(&port->phy_reset_gpio, 1);
+               udelay(1000);
+               dm_gpio_set_value(&port->phy_reset_gpio, 0);
        }
 
        if (dm_gpio_is_valid(&port->phy_tx_disable_gpio))