[PATCH] net: phy: micrel: Get phy node from phy-handle
Ramon Fried
rfried.dev at gmail.com
Thu Apr 29 22:26:18 CEST 2021
On Mon, Apr 26, 2021 at 6:43 AM Ley Foon Tan <ley.foon.tan at intel.com> wrote:
>
> If can't find ethernet-phy subnode, try to get phy node from "phy-handle".
> Lastly, only use Ethernet node if can't find phy node from ethernet-phy
> subnode and phy-handle.
>
> Signed-off-by: Ley Foon Tan <ley.foon.tan at intel.com>
> ---
> drivers/net/phy/micrel_ksz90x1.c | 11 +++++++++--
> 1 file changed, 9 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/net/phy/micrel_ksz90x1.c b/drivers/net/phy/micrel_ksz90x1.c
> index e5f578201f35..e33789b7f747 100644
> --- a/drivers/net/phy/micrel_ksz90x1.c
> +++ b/drivers/net/phy/micrel_ksz90x1.c
> @@ -112,6 +112,7 @@ static int ksz90x1_of_config_group(struct phy_device *phydev,
> {
> struct udevice *dev = phydev->dev;
> struct phy_driver *drv = phydev->drv;
> + struct ofnode_phandle_args phandle;
> int val[4];
> int i, changed = 0, offset, max;
> u16 regval = 0;
> @@ -128,8 +129,14 @@ static int ksz90x1_of_config_group(struct phy_device *phydev,
> }
>
> if (!ofnode_valid(node)) {
> - /* No node found, look in the Ethernet node */
> - node = dev_ofnode(dev);
> + if (dev_read_phandle_with_args(dev, "phy-handle", NULL, 0, 0,
> + &phandle)) {
> + /* No phy-handle found, look in the Ethernet node */
> + node = dev_ofnode(dev);
> + } else {
> + /* phy-handle found */
> + node = phandle.node;
> + }
> }
>
> for (i = 0; i < ofcfg->grpsz; i++) {
> --
> 2.25.1
>
Reviewed-by: Ramon Fried <rfried.dev at gmail.com>
More information about the U-Boot
mailing list