[PATCH] net: ravb: Support fixed PHY in R-Car

Marek Vasut marek.vasut+renesas at mailbox.org
Tue Feb 28 00:04:11 CET 2023


From: Mikhail Lappo <mikhail.lappo at esrlabs.com>

Calling old U-Boot API doesn't allow to use fixed PHY.
Searching by mask is the part of new function, after
scanning FDT for a fixed PHY definition

Fixes: e821a7bdb13 ("net: ravb: Detect PHY correctly")
Reviewed-by: Marek Vasut <marek.vasut+renesas at mailbox.org>
Signed-off-by: Mikhail Lappo <mikhail.lappo at esrlabs.com>
Signed-off-by: Hai Pham <hai.pham.ud at renesas.com>
[Hai Pham: Drop phy_connect_dev since it's called in phy_connect]
Signed-off-by: Marek Vasut <marek.vasut+renesas at mailbox.org>
[Marek: Use mask -1 instead of 0 to reinstate the search behavior
        over all PHY addresses. Add Fixes tag, sort the tag list.]
---
Cc: Joe Hershberger <joe.hershberger at ni.com>
Cc: Ramon Fried <rfried.dev at gmail.com>
---
 drivers/net/ravb.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/drivers/net/ravb.c b/drivers/net/ravb.c
index 5a835cc06ff..0bc50dc7335 100644
--- a/drivers/net/ravb.c
+++ b/drivers/net/ravb.c
@@ -310,7 +310,7 @@ static int ravb_phy_config(struct udevice *dev)
 	struct ravb_priv *eth = dev_get_priv(dev);
 	struct eth_pdata *pdata = dev_get_plat(dev);
 	struct phy_device *phydev;
-	int mask = 0xffffffff, reg;
+	int reg;
 
 	if (dm_gpio_is_valid(&eth->reset_gpio)) {
 		dm_gpio_set_value(&eth->reset_gpio, 1);
@@ -319,12 +319,10 @@ static int ravb_phy_config(struct udevice *dev)
 		mdelay(1);
 	}
 
-	phydev = phy_find_by_mask(eth->bus, mask);
+	phydev = phy_connect(eth->bus, -1, dev, pdata->phy_interface);
 	if (!phydev)
 		return -ENODEV;
 
-	phy_connect_dev(phydev, dev, pdata->phy_interface);
-
 	eth->phydev = phydev;
 
 	phydev->supported &= SUPPORTED_100baseT_Full |
-- 
2.39.2



More information about the U-Boot mailing list