[PATCH v2 01/13] phy: nop-phy: Fix phy reset if no reset-gpio defined

Simon Glass sjg at chromium.org
Fri Mar 4 16:42:56 CET 2022


From: Tim Harvey <tharvey at gateworks.com>

Ensure there is a valid reset-gpio defined before using it.

Fixes: f9852acdce02 ("phy: nop-phy: Fix enabling reset")
Cc: Adam Ford <aford173 at gmail.com>
Signed-off-by: Tim Harvey <tharvey at gateworks.com>
Signed-off-by: Simon Glass <sjg at chromium.org>
---

(no changes since v1)

 drivers/phy/nop-phy.c | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/drivers/phy/nop-phy.c b/drivers/phy/nop-phy.c
index e2ee6e9206..d0904f4f07 100644
--- a/drivers/phy/nop-phy.c
+++ b/drivers/phy/nop-phy.c
@@ -45,11 +45,13 @@ static int nop_phy_init(struct phy *phy)
 
 #if CONFIG_IS_ENABLED(DM_GPIO)
 	/* Take phy out of reset */
-	ret = dm_gpio_set_value(&priv->reset_gpio, false);
-	if (ret) {
-		if (CONFIG_IS_ENABLED(CLK))
-			clk_disable_bulk(&priv->bulk);
-		return ret;
+	if (dm_gpio_is_valid(&priv->reset_gpio)) {
+		ret = dm_gpio_set_value(&priv->reset_gpio, false);
+		if (ret) {
+			if (CONFIG_IS_ENABLED(CLK))
+				clk_disable_bulk(&priv->bulk);
+			return ret;
+		}
 	}
 #endif
 	return 0;
-- 
2.35.1.616.g0bdcbb4464-goog



More information about the U-Boot mailing list