From 4223fb0ee18d11462c55ac94198fdc2055f2c27c Mon Sep 17 00:00:00 2001 From: Tim Harvey Date: Tue, 1 Mar 2022 12:15:01 -0800 Subject: [PATCH] net: fec: prevent undesired de-assertion of phy-reset on request When gpio_request_by_name allocates a gpio output it by default will de-assert the gpio which for phy-reset will take the PHY out of reset. As this occurs before fec_gpio_reset is called to assert the reset line it can cause undesired affects if reset timings are not properly met. Configure the gpio with GPIOD_IS_OUT_ACTIVE so that reset is kept active (reset asserted) to avoid this. Cc: Sean Anderson Signed-off-by: Tim Harvey Acked-by: Joe Hershberger Tested-by: Adam Ford #imx8mm-beacon Reviewed-by: Ramon Fried --- drivers/net/fec_mxc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/fec_mxc.c b/drivers/net/fec_mxc.c index 3ac8e2a9cd..a623a5c45e 100644 --- a/drivers/net/fec_mxc.c +++ b/drivers/net/fec_mxc.c @@ -1324,7 +1324,7 @@ static int fecmxc_of_to_plat(struct udevice *dev) #if CONFIG_IS_ENABLED(DM_GPIO) ret = gpio_request_by_name(dev, "phy-reset-gpios", 0, - &priv->phy_reset_gpio, GPIOD_IS_OUT); + &priv->phy_reset_gpio, GPIOD_IS_OUT | GPIOD_IS_OUT_ACTIVE); if (ret < 0) return 0; /* property is optional, don't return error! */ -- 2.39.5