net: mvpp2: fix polarity of PHY reset signal
authorBaruch Siach <[email protected]>
Mon, 15 Oct 2018 10:16:47 +0000 (13:16 +0300)
committerJoe Hershberger <[email protected]>
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 <[email protected]>
Signed-off-by: Baruch Siach <[email protected]>
Acked-by: Joe Hershberger <[email protected]>
Reviewed-by: Stefan Roese <[email protected]>
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))